2018-01-16 14:20:59 +01:00
// Code generated by private/model/cli/gen-api/main.go. DO NOT EDIT.
package servicediscovery
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"
2018-03-19 16:51:38 +01:00
"github.com/aws/aws-sdk-go/private/protocol"
"github.com/aws/aws-sdk-go/private/protocol/jsonrpc"
2018-01-16 14:20:59 +01:00
)
const opCreatePrivateDnsNamespace = "CreatePrivateDnsNamespace"
// CreatePrivateDnsNamespaceRequest generates a "aws/request.Request" representing the
// client's request for the CreatePrivateDnsNamespace operation. The "output" return
2018-05-02 18:09:45 +02:00
// value will be populated with the request's response once the request completes
2018-01-16 14:20:59 +01:00
// successfuly.
//
// 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 CreatePrivateDnsNamespace for more information on using the CreatePrivateDnsNamespace
// 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 CreatePrivateDnsNamespaceRequest method.
// req, resp := client.CreatePrivateDnsNamespaceRequest(params)
//
// err := req.Send()
// if err == nil { // resp is now filled
// fmt.Println(resp)
// }
//
// See also, https://docs.aws.amazon.com/goto/WebAPI/servicediscovery-2017-03-14/CreatePrivateDnsNamespace
func ( c * ServiceDiscovery ) CreatePrivateDnsNamespaceRequest ( input * CreatePrivateDnsNamespaceInput ) ( req * request . Request , output * CreatePrivateDnsNamespaceOutput ) {
op := & request . Operation {
Name : opCreatePrivateDnsNamespace ,
HTTPMethod : "POST" ,
HTTPPath : "/" ,
}
if input == nil {
input = & CreatePrivateDnsNamespaceInput { }
}
output = & CreatePrivateDnsNamespaceOutput { }
req = c . newRequest ( op , input , output )
return
}
// CreatePrivateDnsNamespace API operation for Amazon Route 53 Auto Naming.
//
// Creates a private namespace based on DNS, which will be visible only inside
// a specified Amazon VPC. The namespace defines your service naming scheme.
// For example, if you name your namespace example.com and name your service
// backend, the resulting DNS name for the service will be backend.example.com.
2018-03-19 16:51:38 +01:00
// For the current limit on the number of namespaces that you can create using
// the same AWS account, see Limits on Auto Naming (http://docs.aws.amazon.com/Route53/latest/DeveloperGuide/DNSLimitations.html#limits-api-entities-autonaming)
// in the Route 53 Developer Guide.
2018-01-16 14:20:59 +01: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 Amazon Route 53 Auto Naming's
// API operation CreatePrivateDnsNamespace for usage and error information.
//
// Returned Error Codes:
// * ErrCodeInvalidInput "InvalidInput"
// One or more specified values aren't valid. For example, when you're creating
// a namespace, the value of Name might not be a valid DNS name.
//
// * ErrCodeNamespaceAlreadyExists "NamespaceAlreadyExists"
// The namespace that you're trying to create already exists.
//
// * ErrCodeResourceLimitExceeded "ResourceLimitExceeded"
// The resource can't be created because you've reached the limit on the number
// of resources.
//
// * ErrCodeDuplicateRequest "DuplicateRequest"
2018-03-19 16:51:38 +01:00
// The operation is already in progress.
2018-01-16 14:20:59 +01:00
//
// See also, https://docs.aws.amazon.com/goto/WebAPI/servicediscovery-2017-03-14/CreatePrivateDnsNamespace
func ( c * ServiceDiscovery ) CreatePrivateDnsNamespace ( input * CreatePrivateDnsNamespaceInput ) ( * CreatePrivateDnsNamespaceOutput , error ) {
req , out := c . CreatePrivateDnsNamespaceRequest ( input )
return out , req . Send ( )
}
// CreatePrivateDnsNamespaceWithContext is the same as CreatePrivateDnsNamespace with the addition of
// the ability to pass a context and additional request options.
//
// See CreatePrivateDnsNamespace 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 * ServiceDiscovery ) CreatePrivateDnsNamespaceWithContext ( ctx aws . Context , input * CreatePrivateDnsNamespaceInput , opts ... request . Option ) ( * CreatePrivateDnsNamespaceOutput , error ) {
req , out := c . CreatePrivateDnsNamespaceRequest ( input )
req . SetContext ( ctx )
req . ApplyOptions ( opts ... )
return out , req . Send ( )
}
const opCreatePublicDnsNamespace = "CreatePublicDnsNamespace"
// CreatePublicDnsNamespaceRequest generates a "aws/request.Request" representing the
// client's request for the CreatePublicDnsNamespace operation. The "output" return
2018-05-02 18:09:45 +02:00
// value will be populated with the request's response once the request completes
2018-01-16 14:20:59 +01:00
// successfuly.
//
// 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 CreatePublicDnsNamespace for more information on using the CreatePublicDnsNamespace
// 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 CreatePublicDnsNamespaceRequest method.
// req, resp := client.CreatePublicDnsNamespaceRequest(params)
//
// err := req.Send()
// if err == nil { // resp is now filled
// fmt.Println(resp)
// }
//
// See also, https://docs.aws.amazon.com/goto/WebAPI/servicediscovery-2017-03-14/CreatePublicDnsNamespace
func ( c * ServiceDiscovery ) CreatePublicDnsNamespaceRequest ( input * CreatePublicDnsNamespaceInput ) ( req * request . Request , output * CreatePublicDnsNamespaceOutput ) {
op := & request . Operation {
Name : opCreatePublicDnsNamespace ,
HTTPMethod : "POST" ,
HTTPPath : "/" ,
}
if input == nil {
input = & CreatePublicDnsNamespaceInput { }
}
output = & CreatePublicDnsNamespaceOutput { }
req = c . newRequest ( op , input , output )
return
}
// CreatePublicDnsNamespace API operation for Amazon Route 53 Auto Naming.
//
// Creates a public namespace based on DNS, which will be visible on the internet.
// The namespace defines your service naming scheme. For example, if you name
// your namespace example.com and name your service backend, the resulting DNS
2018-03-19 16:51:38 +01:00
// name for the service will be backend.example.com. For the current limit on
// the number of namespaces that you can create using the same AWS account,
// see Limits on Auto Naming (http://docs.aws.amazon.com/Route53/latest/DeveloperGuide/DNSLimitations.html#limits-api-entities-autonaming)
// in the Route 53 Developer Guide.
2018-01-16 14:20:59 +01: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 Amazon Route 53 Auto Naming's
// API operation CreatePublicDnsNamespace for usage and error information.
//
// Returned Error Codes:
// * ErrCodeInvalidInput "InvalidInput"
// One or more specified values aren't valid. For example, when you're creating
// a namespace, the value of Name might not be a valid DNS name.
//
// * ErrCodeNamespaceAlreadyExists "NamespaceAlreadyExists"
// The namespace that you're trying to create already exists.
//
// * ErrCodeResourceLimitExceeded "ResourceLimitExceeded"
// The resource can't be created because you've reached the limit on the number
// of resources.
//
// * ErrCodeDuplicateRequest "DuplicateRequest"
2018-03-19 16:51:38 +01:00
// The operation is already in progress.
2018-01-16 14:20:59 +01:00
//
// See also, https://docs.aws.amazon.com/goto/WebAPI/servicediscovery-2017-03-14/CreatePublicDnsNamespace
func ( c * ServiceDiscovery ) CreatePublicDnsNamespace ( input * CreatePublicDnsNamespaceInput ) ( * CreatePublicDnsNamespaceOutput , error ) {
req , out := c . CreatePublicDnsNamespaceRequest ( input )
return out , req . Send ( )
}
// CreatePublicDnsNamespaceWithContext is the same as CreatePublicDnsNamespace with the addition of
// the ability to pass a context and additional request options.
//
// See CreatePublicDnsNamespace 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 * ServiceDiscovery ) CreatePublicDnsNamespaceWithContext ( ctx aws . Context , input * CreatePublicDnsNamespaceInput , opts ... request . Option ) ( * CreatePublicDnsNamespaceOutput , error ) {
req , out := c . CreatePublicDnsNamespaceRequest ( input )
req . SetContext ( ctx )
req . ApplyOptions ( opts ... )
return out , req . Send ( )
}
const opCreateService = "CreateService"
// CreateServiceRequest generates a "aws/request.Request" representing the
// client's request for the CreateService operation. The "output" return
2018-05-02 18:09:45 +02:00
// value will be populated with the request's response once the request completes
2018-01-16 14:20:59 +01:00
// successfuly.
//
// 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 CreateService for more information on using the CreateService
// 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 CreateServiceRequest method.
// req, resp := client.CreateServiceRequest(params)
//
// err := req.Send()
// if err == nil { // resp is now filled
// fmt.Println(resp)
// }
//
// See also, https://docs.aws.amazon.com/goto/WebAPI/servicediscovery-2017-03-14/CreateService
func ( c * ServiceDiscovery ) CreateServiceRequest ( input * CreateServiceInput ) ( req * request . Request , output * CreateServiceOutput ) {
op := & request . Operation {
Name : opCreateService ,
HTTPMethod : "POST" ,
HTTPPath : "/" ,
}
if input == nil {
input = & CreateServiceInput { }
}
output = & CreateServiceOutput { }
req = c . newRequest ( op , input , output )
return
}
// CreateService API operation for Amazon Route 53 Auto Naming.
//
2018-03-19 16:51:38 +01:00
// Creates a service, which defines the configuration for the following entities:
2018-01-16 14:20:59 +01:00
//
2018-03-19 16:51:38 +01:00
// * Up to three records (A, AAAA, and SRV) or one CNAME record
2018-01-16 14:20:59 +01:00
//
// * Optionally, a health check
//
// After you create the service, you can submit a RegisterInstance request,
2018-03-19 16:51:38 +01:00
// and Amazon Route 53 uses the values in the configuration to create the specified
2018-01-16 14:20:59 +01:00
// entities.
//
2018-03-19 16:51:38 +01:00
// For the current limit on the number of instances that you can register using
// the same namespace and using the same service, see Limits on Auto Naming
// (http://docs.aws.amazon.com/Route53/latest/DeveloperGuide/DNSLimitations.html#limits-api-entities-autonaming)
// in the Route 53 Developer Guide.
//
2018-01-16 14:20:59 +01: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 Amazon Route 53 Auto Naming's
// API operation CreateService for usage and error information.
//
// Returned Error Codes:
// * ErrCodeInvalidInput "InvalidInput"
// One or more specified values aren't valid. For example, when you're creating
// a namespace, the value of Name might not be a valid DNS name.
//
// * ErrCodeResourceLimitExceeded "ResourceLimitExceeded"
// The resource can't be created because you've reached the limit on the number
// of resources.
//
// * ErrCodeNamespaceNotFound "NamespaceNotFound"
// No namespace exists with the specified ID.
//
// * ErrCodeServiceAlreadyExists "ServiceAlreadyExists"
// The service can't be created because a service with the same name already
// exists.
//
// See also, https://docs.aws.amazon.com/goto/WebAPI/servicediscovery-2017-03-14/CreateService
func ( c * ServiceDiscovery ) CreateService ( input * CreateServiceInput ) ( * CreateServiceOutput , error ) {
req , out := c . CreateServiceRequest ( input )
return out , req . Send ( )
}
// CreateServiceWithContext is the same as CreateService with the addition of
// the ability to pass a context and additional request options.
//
// See CreateService 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 * ServiceDiscovery ) CreateServiceWithContext ( ctx aws . Context , input * CreateServiceInput , opts ... request . Option ) ( * CreateServiceOutput , error ) {
req , out := c . CreateServiceRequest ( input )
req . SetContext ( ctx )
req . ApplyOptions ( opts ... )
return out , req . Send ( )
}
const opDeleteNamespace = "DeleteNamespace"
// DeleteNamespaceRequest generates a "aws/request.Request" representing the
// client's request for the DeleteNamespace operation. The "output" return
2018-05-02 18:09:45 +02:00
// value will be populated with the request's response once the request completes
2018-01-16 14:20:59 +01:00
// successfuly.
//
// 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 DeleteNamespace for more information on using the DeleteNamespace
// 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 DeleteNamespaceRequest method.
// req, resp := client.DeleteNamespaceRequest(params)
//
// err := req.Send()
// if err == nil { // resp is now filled
// fmt.Println(resp)
// }
//
// See also, https://docs.aws.amazon.com/goto/WebAPI/servicediscovery-2017-03-14/DeleteNamespace
func ( c * ServiceDiscovery ) DeleteNamespaceRequest ( input * DeleteNamespaceInput ) ( req * request . Request , output * DeleteNamespaceOutput ) {
op := & request . Operation {
Name : opDeleteNamespace ,
HTTPMethod : "POST" ,
HTTPPath : "/" ,
}
if input == nil {
input = & DeleteNamespaceInput { }
}
output = & DeleteNamespaceOutput { }
req = c . newRequest ( op , input , output )
return
}
// DeleteNamespace API operation for Amazon Route 53 Auto Naming.
//
// Deletes a namespace from the current account. If the namespace still contains
// one or more services, the request fails.
//
// 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 Amazon Route 53 Auto Naming's
// API operation DeleteNamespace for usage and error information.
//
// Returned Error Codes:
// * ErrCodeInvalidInput "InvalidInput"
// One or more specified values aren't valid. For example, when you're creating
// a namespace, the value of Name might not be a valid DNS name.
//
// * ErrCodeNamespaceNotFound "NamespaceNotFound"
// No namespace exists with the specified ID.
//
// * ErrCodeResourceInUse "ResourceInUse"
// The specified resource can't be deleted because it contains other resources.
// For example, you can't delete a service that contains any instances.
//
// * ErrCodeDuplicateRequest "DuplicateRequest"
2018-03-19 16:51:38 +01:00
// The operation is already in progress.
2018-01-16 14:20:59 +01:00
//
// See also, https://docs.aws.amazon.com/goto/WebAPI/servicediscovery-2017-03-14/DeleteNamespace
func ( c * ServiceDiscovery ) DeleteNamespace ( input * DeleteNamespaceInput ) ( * DeleteNamespaceOutput , error ) {
req , out := c . DeleteNamespaceRequest ( input )
return out , req . Send ( )
}
// DeleteNamespaceWithContext is the same as DeleteNamespace with the addition of
// the ability to pass a context and additional request options.
//
// See DeleteNamespace 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 * ServiceDiscovery ) DeleteNamespaceWithContext ( ctx aws . Context , input * DeleteNamespaceInput , opts ... request . Option ) ( * DeleteNamespaceOutput , error ) {
req , out := c . DeleteNamespaceRequest ( input )
req . SetContext ( ctx )
req . ApplyOptions ( opts ... )
return out , req . Send ( )
}
const opDeleteService = "DeleteService"
// DeleteServiceRequest generates a "aws/request.Request" representing the
// client's request for the DeleteService operation. The "output" return
2018-05-02 18:09:45 +02:00
// value will be populated with the request's response once the request completes
2018-01-16 14:20:59 +01:00
// successfuly.
//
// 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 DeleteService for more information on using the DeleteService
// 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 DeleteServiceRequest method.
// req, resp := client.DeleteServiceRequest(params)
//
// err := req.Send()
// if err == nil { // resp is now filled
// fmt.Println(resp)
// }
//
// See also, https://docs.aws.amazon.com/goto/WebAPI/servicediscovery-2017-03-14/DeleteService
func ( c * ServiceDiscovery ) DeleteServiceRequest ( input * DeleteServiceInput ) ( req * request . Request , output * DeleteServiceOutput ) {
op := & request . Operation {
Name : opDeleteService ,
HTTPMethod : "POST" ,
HTTPPath : "/" ,
}
if input == nil {
input = & DeleteServiceInput { }
}
output = & DeleteServiceOutput { }
req = c . newRequest ( op , input , output )
return
}
// DeleteService API operation for Amazon Route 53 Auto Naming.
//
// Deletes a specified service. If the service still contains one or more registered
// instances, the request fails.
//
// 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 Amazon Route 53 Auto Naming's
// API operation DeleteService for usage and error information.
//
// Returned Error Codes:
// * ErrCodeInvalidInput "InvalidInput"
// One or more specified values aren't valid. For example, when you're creating
// a namespace, the value of Name might not be a valid DNS name.
//
// * ErrCodeServiceNotFound "ServiceNotFound"
// No service exists with the specified ID.
//
// * ErrCodeResourceInUse "ResourceInUse"
// The specified resource can't be deleted because it contains other resources.
// For example, you can't delete a service that contains any instances.
//
// See also, https://docs.aws.amazon.com/goto/WebAPI/servicediscovery-2017-03-14/DeleteService
func ( c * ServiceDiscovery ) DeleteService ( input * DeleteServiceInput ) ( * DeleteServiceOutput , error ) {
req , out := c . DeleteServiceRequest ( input )
return out , req . Send ( )
}
// DeleteServiceWithContext is the same as DeleteService with the addition of
// the ability to pass a context and additional request options.
//
// See DeleteService 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 * ServiceDiscovery ) DeleteServiceWithContext ( ctx aws . Context , input * DeleteServiceInput , opts ... request . Option ) ( * DeleteServiceOutput , error ) {
req , out := c . DeleteServiceRequest ( input )
req . SetContext ( ctx )
req . ApplyOptions ( opts ... )
return out , req . Send ( )
}
const opDeregisterInstance = "DeregisterInstance"
// DeregisterInstanceRequest generates a "aws/request.Request" representing the
// client's request for the DeregisterInstance operation. The "output" return
2018-05-02 18:09:45 +02:00
// value will be populated with the request's response once the request completes
2018-01-16 14:20:59 +01:00
// successfuly.
//
// 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 DeregisterInstance for more information on using the DeregisterInstance
// 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 DeregisterInstanceRequest method.
// req, resp := client.DeregisterInstanceRequest(params)
//
// err := req.Send()
// if err == nil { // resp is now filled
// fmt.Println(resp)
// }
//
// See also, https://docs.aws.amazon.com/goto/WebAPI/servicediscovery-2017-03-14/DeregisterInstance
func ( c * ServiceDiscovery ) DeregisterInstanceRequest ( input * DeregisterInstanceInput ) ( req * request . Request , output * DeregisterInstanceOutput ) {
op := & request . Operation {
Name : opDeregisterInstance ,
HTTPMethod : "POST" ,
HTTPPath : "/" ,
}
if input == nil {
input = & DeregisterInstanceInput { }
}
output = & DeregisterInstanceOutput { }
req = c . newRequest ( op , input , output )
return
}
// DeregisterInstance API operation for Amazon Route 53 Auto Naming.
//
2018-03-19 16:51:38 +01:00
// Deletes the records and the health check, if any, that Amazon Route 53 created
// for the specified instance.
2018-01-16 14:20:59 +01: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 Amazon Route 53 Auto Naming's
// API operation DeregisterInstance for usage and error information.
//
// Returned Error Codes:
// * ErrCodeDuplicateRequest "DuplicateRequest"
2018-03-19 16:51:38 +01:00
// The operation is already in progress.
2018-01-16 14:20:59 +01:00
//
// * ErrCodeInvalidInput "InvalidInput"
// One or more specified values aren't valid. For example, when you're creating
// a namespace, the value of Name might not be a valid DNS name.
//
// * ErrCodeInstanceNotFound "InstanceNotFound"
2018-03-19 16:51:38 +01:00
// No instance exists with the specified ID, or the instance was recently registered,
// and information about the instance hasn't propagated yet.
2018-01-16 14:20:59 +01:00
//
// * ErrCodeResourceInUse "ResourceInUse"
// The specified resource can't be deleted because it contains other resources.
// For example, you can't delete a service that contains any instances.
//
// * ErrCodeServiceNotFound "ServiceNotFound"
// No service exists with the specified ID.
//
// See also, https://docs.aws.amazon.com/goto/WebAPI/servicediscovery-2017-03-14/DeregisterInstance
func ( c * ServiceDiscovery ) DeregisterInstance ( input * DeregisterInstanceInput ) ( * DeregisterInstanceOutput , error ) {
req , out := c . DeregisterInstanceRequest ( input )
return out , req . Send ( )
}
// DeregisterInstanceWithContext is the same as DeregisterInstance with the addition of
// the ability to pass a context and additional request options.
//
// See DeregisterInstance 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 * ServiceDiscovery ) DeregisterInstanceWithContext ( ctx aws . Context , input * DeregisterInstanceInput , opts ... request . Option ) ( * DeregisterInstanceOutput , error ) {
req , out := c . DeregisterInstanceRequest ( input )
req . SetContext ( ctx )
req . ApplyOptions ( opts ... )
return out , req . Send ( )
}
const opGetInstance = "GetInstance"
// GetInstanceRequest generates a "aws/request.Request" representing the
// client's request for the GetInstance operation. The "output" return
2018-05-02 18:09:45 +02:00
// value will be populated with the request's response once the request completes
2018-01-16 14:20:59 +01:00
// successfuly.
//
// 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 GetInstance for more information on using the GetInstance
// 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 GetInstanceRequest method.
// req, resp := client.GetInstanceRequest(params)
//
// err := req.Send()
// if err == nil { // resp is now filled
// fmt.Println(resp)
// }
//
// See also, https://docs.aws.amazon.com/goto/WebAPI/servicediscovery-2017-03-14/GetInstance
func ( c * ServiceDiscovery ) GetInstanceRequest ( input * GetInstanceInput ) ( req * request . Request , output * GetInstanceOutput ) {
op := & request . Operation {
Name : opGetInstance ,
HTTPMethod : "POST" ,
HTTPPath : "/" ,
}
if input == nil {
input = & GetInstanceInput { }
}
output = & GetInstanceOutput { }
req = c . newRequest ( op , input , output )
return
}
// GetInstance API operation for Amazon Route 53 Auto Naming.
//
// Gets information about a specified instance.
//
// 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 Amazon Route 53 Auto Naming's
// API operation GetInstance for usage and error information.
//
// Returned Error Codes:
// * ErrCodeInstanceNotFound "InstanceNotFound"
2018-03-19 16:51:38 +01:00
// No instance exists with the specified ID, or the instance was recently registered,
// and information about the instance hasn't propagated yet.
2018-01-16 14:20:59 +01:00
//
// * ErrCodeInvalidInput "InvalidInput"
// One or more specified values aren't valid. For example, when you're creating
// a namespace, the value of Name might not be a valid DNS name.
//
// * ErrCodeServiceNotFound "ServiceNotFound"
// No service exists with the specified ID.
//
// See also, https://docs.aws.amazon.com/goto/WebAPI/servicediscovery-2017-03-14/GetInstance
func ( c * ServiceDiscovery ) GetInstance ( input * GetInstanceInput ) ( * GetInstanceOutput , error ) {
req , out := c . GetInstanceRequest ( input )
return out , req . Send ( )
}
// GetInstanceWithContext is the same as GetInstance with the addition of
// the ability to pass a context and additional request options.
//
// See GetInstance 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 * ServiceDiscovery ) GetInstanceWithContext ( ctx aws . Context , input * GetInstanceInput , opts ... request . Option ) ( * GetInstanceOutput , error ) {
req , out := c . GetInstanceRequest ( input )
req . SetContext ( ctx )
req . ApplyOptions ( opts ... )
return out , req . Send ( )
}
const opGetInstancesHealthStatus = "GetInstancesHealthStatus"
// GetInstancesHealthStatusRequest generates a "aws/request.Request" representing the
// client's request for the GetInstancesHealthStatus operation. The "output" return
2018-05-02 18:09:45 +02:00
// value will be populated with the request's response once the request completes
2018-01-16 14:20:59 +01:00
// successfuly.
//
// 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 GetInstancesHealthStatus for more information on using the GetInstancesHealthStatus
// 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 GetInstancesHealthStatusRequest method.
// req, resp := client.GetInstancesHealthStatusRequest(params)
//
// err := req.Send()
// if err == nil { // resp is now filled
// fmt.Println(resp)
// }
//
// See also, https://docs.aws.amazon.com/goto/WebAPI/servicediscovery-2017-03-14/GetInstancesHealthStatus
func ( c * ServiceDiscovery ) GetInstancesHealthStatusRequest ( input * GetInstancesHealthStatusInput ) ( req * request . Request , output * GetInstancesHealthStatusOutput ) {
op := & request . Operation {
Name : opGetInstancesHealthStatus ,
HTTPMethod : "POST" ,
HTTPPath : "/" ,
Paginator : & request . Paginator {
InputTokens : [ ] string { "NextToken" } ,
OutputTokens : [ ] string { "NextToken" } ,
LimitToken : "MaxResults" ,
TruncationToken : "" ,
} ,
}
if input == nil {
input = & GetInstancesHealthStatusInput { }
}
output = & GetInstancesHealthStatusOutput { }
req = c . newRequest ( op , input , output )
return
}
// GetInstancesHealthStatus API operation for Amazon Route 53 Auto Naming.
//
// Gets the current health status (Healthy, Unhealthy, or Unknown) of one or
// more instances that are associated with a specified service.
//
2018-03-19 16:51:38 +01:00
// There is a brief delay between when you register an instance and when the
// health status for the instance is available.
//
2018-01-16 14:20:59 +01: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 Amazon Route 53 Auto Naming's
// API operation GetInstancesHealthStatus for usage and error information.
//
// Returned Error Codes:
// * ErrCodeInstanceNotFound "InstanceNotFound"
2018-03-19 16:51:38 +01:00
// No instance exists with the specified ID, or the instance was recently registered,
// and information about the instance hasn't propagated yet.
2018-01-16 14:20:59 +01:00
//
// * ErrCodeInvalidInput "InvalidInput"
// One or more specified values aren't valid. For example, when you're creating
// a namespace, the value of Name might not be a valid DNS name.
//
// * ErrCodeServiceNotFound "ServiceNotFound"
// No service exists with the specified ID.
//
// See also, https://docs.aws.amazon.com/goto/WebAPI/servicediscovery-2017-03-14/GetInstancesHealthStatus
func ( c * ServiceDiscovery ) GetInstancesHealthStatus ( input * GetInstancesHealthStatusInput ) ( * GetInstancesHealthStatusOutput , error ) {
req , out := c . GetInstancesHealthStatusRequest ( input )
return out , req . Send ( )
}
// GetInstancesHealthStatusWithContext is the same as GetInstancesHealthStatus with the addition of
// the ability to pass a context and additional request options.
//
// See GetInstancesHealthStatus 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 * ServiceDiscovery ) GetInstancesHealthStatusWithContext ( ctx aws . Context , input * GetInstancesHealthStatusInput , opts ... request . Option ) ( * GetInstancesHealthStatusOutput , error ) {
req , out := c . GetInstancesHealthStatusRequest ( input )
req . SetContext ( ctx )
req . ApplyOptions ( opts ... )
return out , req . Send ( )
}
// GetInstancesHealthStatusPages iterates over the pages of a GetInstancesHealthStatus operation,
// calling the "fn" function with the response data for each page. To stop
// iterating, return false from the fn function.
//
// See GetInstancesHealthStatus 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 GetInstancesHealthStatus operation.
// pageNum := 0
// err := client.GetInstancesHealthStatusPages(params,
// func(page *GetInstancesHealthStatusOutput, lastPage bool) bool {
// pageNum++
// fmt.Println(page)
// return pageNum <= 3
// })
//
func ( c * ServiceDiscovery ) GetInstancesHealthStatusPages ( input * GetInstancesHealthStatusInput , fn func ( * GetInstancesHealthStatusOutput , bool ) bool ) error {
return c . GetInstancesHealthStatusPagesWithContext ( aws . BackgroundContext ( ) , input , fn )
}
// GetInstancesHealthStatusPagesWithContext same as GetInstancesHealthStatusPages 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 * ServiceDiscovery ) GetInstancesHealthStatusPagesWithContext ( ctx aws . Context , input * GetInstancesHealthStatusInput , fn func ( * GetInstancesHealthStatusOutput , bool ) bool , opts ... request . Option ) error {
p := request . Pagination {
NewRequest : func ( ) ( * request . Request , error ) {
var inCpy * GetInstancesHealthStatusInput
if input != nil {
tmp := * input
inCpy = & tmp
}
req , _ := c . GetInstancesHealthStatusRequest ( inCpy )
req . SetContext ( ctx )
req . ApplyOptions ( opts ... )
return req , nil
} ,
}
cont := true
for p . Next ( ) && cont {
cont = fn ( p . Page ( ) . ( * GetInstancesHealthStatusOutput ) , ! p . HasNextPage ( ) )
}
return p . Err ( )
}
const opGetNamespace = "GetNamespace"
// GetNamespaceRequest generates a "aws/request.Request" representing the
// client's request for the GetNamespace operation. The "output" return
2018-05-02 18:09:45 +02:00
// value will be populated with the request's response once the request completes
2018-01-16 14:20:59 +01:00
// successfuly.
//
// 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 GetNamespace for more information on using the GetNamespace
// 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 GetNamespaceRequest method.
// req, resp := client.GetNamespaceRequest(params)
//
// err := req.Send()
// if err == nil { // resp is now filled
// fmt.Println(resp)
// }
//
// See also, https://docs.aws.amazon.com/goto/WebAPI/servicediscovery-2017-03-14/GetNamespace
func ( c * ServiceDiscovery ) GetNamespaceRequest ( input * GetNamespaceInput ) ( req * request . Request , output * GetNamespaceOutput ) {
op := & request . Operation {
Name : opGetNamespace ,
HTTPMethod : "POST" ,
HTTPPath : "/" ,
}
if input == nil {
input = & GetNamespaceInput { }
}
output = & GetNamespaceOutput { }
req = c . newRequest ( op , input , output )
return
}
// GetNamespace API operation for Amazon Route 53 Auto Naming.
//
// Gets information about a namespace.
//
// 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 Amazon Route 53 Auto Naming's
// API operation GetNamespace for usage and error information.
//
// Returned Error Codes:
// * ErrCodeInvalidInput "InvalidInput"
// One or more specified values aren't valid. For example, when you're creating
// a namespace, the value of Name might not be a valid DNS name.
//
// * ErrCodeNamespaceNotFound "NamespaceNotFound"
// No namespace exists with the specified ID.
//
// See also, https://docs.aws.amazon.com/goto/WebAPI/servicediscovery-2017-03-14/GetNamespace
func ( c * ServiceDiscovery ) GetNamespace ( input * GetNamespaceInput ) ( * GetNamespaceOutput , error ) {
req , out := c . GetNamespaceRequest ( input )
return out , req . Send ( )
}
// GetNamespaceWithContext is the same as GetNamespace with the addition of
// the ability to pass a context and additional request options.
//
// See GetNamespace 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 * ServiceDiscovery ) GetNamespaceWithContext ( ctx aws . Context , input * GetNamespaceInput , opts ... request . Option ) ( * GetNamespaceOutput , error ) {
req , out := c . GetNamespaceRequest ( input )
req . SetContext ( ctx )
req . ApplyOptions ( opts ... )
return out , req . Send ( )
}
const opGetOperation = "GetOperation"
// GetOperationRequest generates a "aws/request.Request" representing the
// client's request for the GetOperation operation. The "output" return
2018-05-02 18:09:45 +02:00
// value will be populated with the request's response once the request completes
2018-01-16 14:20:59 +01:00
// successfuly.
//
// 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 GetOperation for more information on using the GetOperation
// 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 GetOperationRequest method.
// req, resp := client.GetOperationRequest(params)
//
// err := req.Send()
// if err == nil { // resp is now filled
// fmt.Println(resp)
// }
//
// See also, https://docs.aws.amazon.com/goto/WebAPI/servicediscovery-2017-03-14/GetOperation
func ( c * ServiceDiscovery ) GetOperationRequest ( input * GetOperationInput ) ( req * request . Request , output * GetOperationOutput ) {
op := & request . Operation {
Name : opGetOperation ,
HTTPMethod : "POST" ,
HTTPPath : "/" ,
}
if input == nil {
input = & GetOperationInput { }
}
output = & GetOperationOutput { }
req = c . newRequest ( op , input , output )
return
}
// GetOperation API operation for Amazon Route 53 Auto Naming.
//
// Gets information about any operation that returns an operation ID in the
2018-03-19 16:51:38 +01:00
// response, such as a CreateService request.
//
// To get a list of operations that match specified criteria, see ListOperations.
2018-01-16 14:20:59 +01: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 Amazon Route 53 Auto Naming's
// API operation GetOperation for usage and error information.
//
// Returned Error Codes:
// * ErrCodeOperationNotFound "OperationNotFound"
// No operation exists with the specified ID.
//
// See also, https://docs.aws.amazon.com/goto/WebAPI/servicediscovery-2017-03-14/GetOperation
func ( c * ServiceDiscovery ) GetOperation ( input * GetOperationInput ) ( * GetOperationOutput , error ) {
req , out := c . GetOperationRequest ( input )
return out , req . Send ( )
}
// GetOperationWithContext is the same as GetOperation with the addition of
// the ability to pass a context and additional request options.
//
// See GetOperation 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 * ServiceDiscovery ) GetOperationWithContext ( ctx aws . Context , input * GetOperationInput , opts ... request . Option ) ( * GetOperationOutput , error ) {
req , out := c . GetOperationRequest ( input )
req . SetContext ( ctx )
req . ApplyOptions ( opts ... )
return out , req . Send ( )
}
const opGetService = "GetService"
// GetServiceRequest generates a "aws/request.Request" representing the
// client's request for the GetService operation. The "output" return
2018-05-02 18:09:45 +02:00
// value will be populated with the request's response once the request completes
2018-01-16 14:20:59 +01:00
// successfuly.
//
// 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 GetService for more information on using the GetService
// 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 GetServiceRequest method.
// req, resp := client.GetServiceRequest(params)
//
// err := req.Send()
// if err == nil { // resp is now filled
// fmt.Println(resp)
// }
//
// See also, https://docs.aws.amazon.com/goto/WebAPI/servicediscovery-2017-03-14/GetService
func ( c * ServiceDiscovery ) GetServiceRequest ( input * GetServiceInput ) ( req * request . Request , output * GetServiceOutput ) {
op := & request . Operation {
Name : opGetService ,
HTTPMethod : "POST" ,
HTTPPath : "/" ,
}
if input == nil {
input = & GetServiceInput { }
}
output = & GetServiceOutput { }
req = c . newRequest ( op , input , output )
return
}
// GetService API operation for Amazon Route 53 Auto Naming.
//
// Gets the settings for a specified service.
//
// 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 Amazon Route 53 Auto Naming's
// API operation GetService for usage and error information.
//
// Returned Error Codes:
// * ErrCodeInvalidInput "InvalidInput"
// One or more specified values aren't valid. For example, when you're creating
// a namespace, the value of Name might not be a valid DNS name.
//
// * ErrCodeServiceNotFound "ServiceNotFound"
// No service exists with the specified ID.
//
// See also, https://docs.aws.amazon.com/goto/WebAPI/servicediscovery-2017-03-14/GetService
func ( c * ServiceDiscovery ) GetService ( input * GetServiceInput ) ( * GetServiceOutput , error ) {
req , out := c . GetServiceRequest ( input )
return out , req . Send ( )
}
// GetServiceWithContext is the same as GetService with the addition of
// the ability to pass a context and additional request options.
//
// See GetService 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 * ServiceDiscovery ) GetServiceWithContext ( ctx aws . Context , input * GetServiceInput , opts ... request . Option ) ( * GetServiceOutput , error ) {
req , out := c . GetServiceRequest ( input )
req . SetContext ( ctx )
req . ApplyOptions ( opts ... )
return out , req . Send ( )
}
const opListInstances = "ListInstances"
// ListInstancesRequest generates a "aws/request.Request" representing the
// client's request for the ListInstances operation. The "output" return
2018-05-02 18:09:45 +02:00
// value will be populated with the request's response once the request completes
2018-01-16 14:20:59 +01:00
// successfuly.
//
// 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 ListInstances for more information on using the ListInstances
// 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 ListInstancesRequest method.
// req, resp := client.ListInstancesRequest(params)
//
// err := req.Send()
// if err == nil { // resp is now filled
// fmt.Println(resp)
// }
//
// See also, https://docs.aws.amazon.com/goto/WebAPI/servicediscovery-2017-03-14/ListInstances
func ( c * ServiceDiscovery ) ListInstancesRequest ( input * ListInstancesInput ) ( req * request . Request , output * ListInstancesOutput ) {
op := & request . Operation {
Name : opListInstances ,
HTTPMethod : "POST" ,
HTTPPath : "/" ,
Paginator : & request . Paginator {
InputTokens : [ ] string { "NextToken" } ,
OutputTokens : [ ] string { "NextToken" } ,
LimitToken : "MaxResults" ,
TruncationToken : "" ,
} ,
}
if input == nil {
input = & ListInstancesInput { }
}
output = & ListInstancesOutput { }
req = c . newRequest ( op , input , output )
return
}
// ListInstances API operation for Amazon Route 53 Auto Naming.
//
2018-03-19 16:51:38 +01:00
// Lists summary information about the instances that you registered by using
// a specified service.
2018-01-16 14:20:59 +01: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 Amazon Route 53 Auto Naming's
// API operation ListInstances for usage and error information.
//
// Returned Error Codes:
// * ErrCodeServiceNotFound "ServiceNotFound"
// No service exists with the specified ID.
//
// * ErrCodeInvalidInput "InvalidInput"
// One or more specified values aren't valid. For example, when you're creating
// a namespace, the value of Name might not be a valid DNS name.
//
// See also, https://docs.aws.amazon.com/goto/WebAPI/servicediscovery-2017-03-14/ListInstances
func ( c * ServiceDiscovery ) ListInstances ( input * ListInstancesInput ) ( * ListInstancesOutput , error ) {
req , out := c . ListInstancesRequest ( input )
return out , req . Send ( )
}
// ListInstancesWithContext is the same as ListInstances with the addition of
// the ability to pass a context and additional request options.
//
// See ListInstances 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 * ServiceDiscovery ) ListInstancesWithContext ( ctx aws . Context , input * ListInstancesInput , opts ... request . Option ) ( * ListInstancesOutput , error ) {
req , out := c . ListInstancesRequest ( input )
req . SetContext ( ctx )
req . ApplyOptions ( opts ... )
return out , req . Send ( )
}
// ListInstancesPages iterates over the pages of a ListInstances operation,
// calling the "fn" function with the response data for each page. To stop
// iterating, return false from the fn function.
//
// See ListInstances 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 ListInstances operation.
// pageNum := 0
// err := client.ListInstancesPages(params,
// func(page *ListInstancesOutput, lastPage bool) bool {
// pageNum++
// fmt.Println(page)
// return pageNum <= 3
// })
//
func ( c * ServiceDiscovery ) ListInstancesPages ( input * ListInstancesInput , fn func ( * ListInstancesOutput , bool ) bool ) error {
return c . ListInstancesPagesWithContext ( aws . BackgroundContext ( ) , input , fn )
}
// ListInstancesPagesWithContext same as ListInstancesPages 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 * ServiceDiscovery ) ListInstancesPagesWithContext ( ctx aws . Context , input * ListInstancesInput , fn func ( * ListInstancesOutput , bool ) bool , opts ... request . Option ) error {
p := request . Pagination {
NewRequest : func ( ) ( * request . Request , error ) {
var inCpy * ListInstancesInput
if input != nil {
tmp := * input
inCpy = & tmp
}
req , _ := c . ListInstancesRequest ( inCpy )
req . SetContext ( ctx )
req . ApplyOptions ( opts ... )
return req , nil
} ,
}
cont := true
for p . Next ( ) && cont {
cont = fn ( p . Page ( ) . ( * ListInstancesOutput ) , ! p . HasNextPage ( ) )
}
return p . Err ( )
}
const opListNamespaces = "ListNamespaces"
// ListNamespacesRequest generates a "aws/request.Request" representing the
// client's request for the ListNamespaces operation. The "output" return
2018-05-02 18:09:45 +02:00
// value will be populated with the request's response once the request completes
2018-01-16 14:20:59 +01:00
// successfuly.
//
// 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 ListNamespaces for more information on using the ListNamespaces
// 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 ListNamespacesRequest method.
// req, resp := client.ListNamespacesRequest(params)
//
// err := req.Send()
// if err == nil { // resp is now filled
// fmt.Println(resp)
// }
//
// See also, https://docs.aws.amazon.com/goto/WebAPI/servicediscovery-2017-03-14/ListNamespaces
func ( c * ServiceDiscovery ) ListNamespacesRequest ( input * ListNamespacesInput ) ( req * request . Request , output * ListNamespacesOutput ) {
op := & request . Operation {
Name : opListNamespaces ,
HTTPMethod : "POST" ,
HTTPPath : "/" ,
Paginator : & request . Paginator {
InputTokens : [ ] string { "NextToken" } ,
OutputTokens : [ ] string { "NextToken" } ,
LimitToken : "MaxResults" ,
TruncationToken : "" ,
} ,
}
if input == nil {
input = & ListNamespacesInput { }
}
output = & ListNamespacesOutput { }
req = c . newRequest ( op , input , output )
return
}
// ListNamespaces API operation for Amazon Route 53 Auto Naming.
//
2018-03-19 16:51:38 +01:00
// Lists summary information about the namespaces that were created by the current
// AWS account.
2018-01-16 14:20:59 +01: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 Amazon Route 53 Auto Naming's
// API operation ListNamespaces for usage and error information.
//
// Returned Error Codes:
// * ErrCodeInvalidInput "InvalidInput"
// One or more specified values aren't valid. For example, when you're creating
// a namespace, the value of Name might not be a valid DNS name.
//
// See also, https://docs.aws.amazon.com/goto/WebAPI/servicediscovery-2017-03-14/ListNamespaces
func ( c * ServiceDiscovery ) ListNamespaces ( input * ListNamespacesInput ) ( * ListNamespacesOutput , error ) {
req , out := c . ListNamespacesRequest ( input )
return out , req . Send ( )
}
// ListNamespacesWithContext is the same as ListNamespaces with the addition of
// the ability to pass a context and additional request options.
//
// See ListNamespaces 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 * ServiceDiscovery ) ListNamespacesWithContext ( ctx aws . Context , input * ListNamespacesInput , opts ... request . Option ) ( * ListNamespacesOutput , error ) {
req , out := c . ListNamespacesRequest ( input )
req . SetContext ( ctx )
req . ApplyOptions ( opts ... )
return out , req . Send ( )
}
// ListNamespacesPages iterates over the pages of a ListNamespaces operation,
// calling the "fn" function with the response data for each page. To stop
// iterating, return false from the fn function.
//
// See ListNamespaces 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 ListNamespaces operation.
// pageNum := 0
// err := client.ListNamespacesPages(params,
// func(page *ListNamespacesOutput, lastPage bool) bool {
// pageNum++
// fmt.Println(page)
// return pageNum <= 3
// })
//
func ( c * ServiceDiscovery ) ListNamespacesPages ( input * ListNamespacesInput , fn func ( * ListNamespacesOutput , bool ) bool ) error {
return c . ListNamespacesPagesWithContext ( aws . BackgroundContext ( ) , input , fn )
}
// ListNamespacesPagesWithContext same as ListNamespacesPages 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 * ServiceDiscovery ) ListNamespacesPagesWithContext ( ctx aws . Context , input * ListNamespacesInput , fn func ( * ListNamespacesOutput , bool ) bool , opts ... request . Option ) error {
p := request . Pagination {
NewRequest : func ( ) ( * request . Request , error ) {
var inCpy * ListNamespacesInput
if input != nil {
tmp := * input
inCpy = & tmp
}
req , _ := c . ListNamespacesRequest ( inCpy )
req . SetContext ( ctx )
req . ApplyOptions ( opts ... )
return req , nil
} ,
}
cont := true
for p . Next ( ) && cont {
cont = fn ( p . Page ( ) . ( * ListNamespacesOutput ) , ! p . HasNextPage ( ) )
}
return p . Err ( )
}
const opListOperations = "ListOperations"
// ListOperationsRequest generates a "aws/request.Request" representing the
// client's request for the ListOperations operation. The "output" return
2018-05-02 18:09:45 +02:00
// value will be populated with the request's response once the request completes
2018-01-16 14:20:59 +01:00
// successfuly.
//
// 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 ListOperations for more information on using the ListOperations
// 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 ListOperationsRequest method.
// req, resp := client.ListOperationsRequest(params)
//
// err := req.Send()
// if err == nil { // resp is now filled
// fmt.Println(resp)
// }
//
// See also, https://docs.aws.amazon.com/goto/WebAPI/servicediscovery-2017-03-14/ListOperations
func ( c * ServiceDiscovery ) ListOperationsRequest ( input * ListOperationsInput ) ( req * request . Request , output * ListOperationsOutput ) {
op := & request . Operation {
Name : opListOperations ,
HTTPMethod : "POST" ,
HTTPPath : "/" ,
Paginator : & request . Paginator {
InputTokens : [ ] string { "NextToken" } ,
OutputTokens : [ ] string { "NextToken" } ,
LimitToken : "MaxResults" ,
TruncationToken : "" ,
} ,
}
if input == nil {
input = & ListOperationsInput { }
}
output = & ListOperationsOutput { }
req = c . newRequest ( op , input , output )
return
}
// ListOperations API operation for Amazon Route 53 Auto Naming.
//
// Lists operations that match the criteria that you specify.
//
// 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 Amazon Route 53 Auto Naming's
// API operation ListOperations for usage and error information.
//
// Returned Error Codes:
// * ErrCodeInvalidInput "InvalidInput"
// One or more specified values aren't valid. For example, when you're creating
// a namespace, the value of Name might not be a valid DNS name.
//
// See also, https://docs.aws.amazon.com/goto/WebAPI/servicediscovery-2017-03-14/ListOperations
func ( c * ServiceDiscovery ) ListOperations ( input * ListOperationsInput ) ( * ListOperationsOutput , error ) {
req , out := c . ListOperationsRequest ( input )
return out , req . Send ( )
}
// ListOperationsWithContext is the same as ListOperations with the addition of
// the ability to pass a context and additional request options.
//
// See ListOperations 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 * ServiceDiscovery ) ListOperationsWithContext ( ctx aws . Context , input * ListOperationsInput , opts ... request . Option ) ( * ListOperationsOutput , error ) {
req , out := c . ListOperationsRequest ( input )
req . SetContext ( ctx )
req . ApplyOptions ( opts ... )
return out , req . Send ( )
}
// ListOperationsPages iterates over the pages of a ListOperations operation,
// calling the "fn" function with the response data for each page. To stop
// iterating, return false from the fn function.
//
// See ListOperations 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 ListOperations operation.
// pageNum := 0
// err := client.ListOperationsPages(params,
// func(page *ListOperationsOutput, lastPage bool) bool {
// pageNum++
// fmt.Println(page)
// return pageNum <= 3
// })
//
func ( c * ServiceDiscovery ) ListOperationsPages ( input * ListOperationsInput , fn func ( * ListOperationsOutput , bool ) bool ) error {
return c . ListOperationsPagesWithContext ( aws . BackgroundContext ( ) , input , fn )
}
// ListOperationsPagesWithContext same as ListOperationsPages 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 * ServiceDiscovery ) ListOperationsPagesWithContext ( ctx aws . Context , input * ListOperationsInput , fn func ( * ListOperationsOutput , bool ) bool , opts ... request . Option ) error {
p := request . Pagination {
NewRequest : func ( ) ( * request . Request , error ) {
var inCpy * ListOperationsInput
if input != nil {
tmp := * input
inCpy = & tmp
}
req , _ := c . ListOperationsRequest ( inCpy )
req . SetContext ( ctx )
req . ApplyOptions ( opts ... )
return req , nil
} ,
}
cont := true
for p . Next ( ) && cont {
cont = fn ( p . Page ( ) . ( * ListOperationsOutput ) , ! p . HasNextPage ( ) )
}
return p . Err ( )
}
const opListServices = "ListServices"
// ListServicesRequest generates a "aws/request.Request" representing the
// client's request for the ListServices operation. The "output" return
2018-05-02 18:09:45 +02:00
// value will be populated with the request's response once the request completes
2018-01-16 14:20:59 +01:00
// successfuly.
//
// 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 ListServices for more information on using the ListServices
// 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 ListServicesRequest method.
// req, resp := client.ListServicesRequest(params)
//
// err := req.Send()
// if err == nil { // resp is now filled
// fmt.Println(resp)
// }
//
// See also, https://docs.aws.amazon.com/goto/WebAPI/servicediscovery-2017-03-14/ListServices
func ( c * ServiceDiscovery ) ListServicesRequest ( input * ListServicesInput ) ( req * request . Request , output * ListServicesOutput ) {
op := & request . Operation {
Name : opListServices ,
HTTPMethod : "POST" ,
HTTPPath : "/" ,
Paginator : & request . Paginator {
InputTokens : [ ] string { "NextToken" } ,
OutputTokens : [ ] string { "NextToken" } ,
LimitToken : "MaxResults" ,
TruncationToken : "" ,
} ,
}
if input == nil {
input = & ListServicesInput { }
}
output = & ListServicesOutput { }
req = c . newRequest ( op , input , output )
return
}
// ListServices API operation for Amazon Route 53 Auto Naming.
//
2018-03-19 16:51:38 +01:00
// Lists summary information for all the services that are associated with one
// or more specified namespaces.
2018-01-16 14:20:59 +01: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 Amazon Route 53 Auto Naming's
// API operation ListServices for usage and error information.
2018-03-19 16:51:38 +01:00
//
// Returned Error Codes:
// * ErrCodeInvalidInput "InvalidInput"
// One or more specified values aren't valid. For example, when you're creating
// a namespace, the value of Name might not be a valid DNS name.
//
2018-01-16 14:20:59 +01:00
// See also, https://docs.aws.amazon.com/goto/WebAPI/servicediscovery-2017-03-14/ListServices
func ( c * ServiceDiscovery ) ListServices ( input * ListServicesInput ) ( * ListServicesOutput , error ) {
req , out := c . ListServicesRequest ( input )
return out , req . Send ( )
}
// ListServicesWithContext is the same as ListServices with the addition of
// the ability to pass a context and additional request options.
//
// See ListServices 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 * ServiceDiscovery ) ListServicesWithContext ( ctx aws . Context , input * ListServicesInput , opts ... request . Option ) ( * ListServicesOutput , error ) {
req , out := c . ListServicesRequest ( input )
req . SetContext ( ctx )
req . ApplyOptions ( opts ... )
return out , req . Send ( )
}
// ListServicesPages iterates over the pages of a ListServices operation,
// calling the "fn" function with the response data for each page. To stop
// iterating, return false from the fn function.
//
// See ListServices 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 ListServices operation.
// pageNum := 0
// err := client.ListServicesPages(params,
// func(page *ListServicesOutput, lastPage bool) bool {
// pageNum++
// fmt.Println(page)
// return pageNum <= 3
// })
//
func ( c * ServiceDiscovery ) ListServicesPages ( input * ListServicesInput , fn func ( * ListServicesOutput , bool ) bool ) error {
return c . ListServicesPagesWithContext ( aws . BackgroundContext ( ) , input , fn )
}
// ListServicesPagesWithContext same as ListServicesPages 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 * ServiceDiscovery ) ListServicesPagesWithContext ( ctx aws . Context , input * ListServicesInput , fn func ( * ListServicesOutput , bool ) bool , opts ... request . Option ) error {
p := request . Pagination {
NewRequest : func ( ) ( * request . Request , error ) {
var inCpy * ListServicesInput
if input != nil {
tmp := * input
inCpy = & tmp
}
req , _ := c . ListServicesRequest ( inCpy )
req . SetContext ( ctx )
req . ApplyOptions ( opts ... )
return req , nil
} ,
}
cont := true
for p . Next ( ) && cont {
cont = fn ( p . Page ( ) . ( * ListServicesOutput ) , ! p . HasNextPage ( ) )
}
return p . Err ( )
}
const opRegisterInstance = "RegisterInstance"
// RegisterInstanceRequest generates a "aws/request.Request" representing the
// client's request for the RegisterInstance operation. The "output" return
2018-05-02 18:09:45 +02:00
// value will be populated with the request's response once the request completes
2018-01-16 14:20:59 +01:00
// successfuly.
//
// 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 RegisterInstance for more information on using the RegisterInstance
// 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 RegisterInstanceRequest method.
// req, resp := client.RegisterInstanceRequest(params)
//
// err := req.Send()
// if err == nil { // resp is now filled
// fmt.Println(resp)
// }
//
// See also, https://docs.aws.amazon.com/goto/WebAPI/servicediscovery-2017-03-14/RegisterInstance
func ( c * ServiceDiscovery ) RegisterInstanceRequest ( input * RegisterInstanceInput ) ( req * request . Request , output * RegisterInstanceOutput ) {
op := & request . Operation {
Name : opRegisterInstance ,
HTTPMethod : "POST" ,
HTTPPath : "/" ,
}
if input == nil {
input = & RegisterInstanceInput { }
}
output = & RegisterInstanceOutput { }
req = c . newRequest ( op , input , output )
return
}
// RegisterInstance API operation for Amazon Route 53 Auto Naming.
//
2018-03-19 16:51:38 +01:00
// Creates or updates one or more records and optionally a health check based
2018-01-16 14:20:59 +01:00
// on the settings in a specified service. When you submit a RegisterInstance
// request, Amazon Route 53 does the following:
//
2018-03-19 16:51:38 +01:00
// * For each DNS record that you define in the service specified by ServiceId,
// creates or updates a record in the hosted zone that is associated with
// the corresponding namespace
2018-01-16 14:20:59 +01:00
//
2018-03-19 16:51:38 +01:00
// * If the service includes HealthCheckConfig, creates or updates a health
// check based on the settings in the health check configuration
2018-01-16 14:20:59 +01:00
//
2018-03-19 16:51:38 +01:00
// * Associates the health check, if any, with each of the records
2018-01-16 14:20:59 +01:00
//
// One RegisterInstance request must complete before you can submit another
2018-03-19 16:51:38 +01:00
// request and specify the same service ID and instance ID.
2018-01-16 14:20:59 +01:00
//
// For more information, see CreateService.
//
2018-03-19 16:51:38 +01:00
// When Route 53 receives a DNS query for the specified DNS name, it returns
// the applicable value:
2018-01-16 14:20:59 +01:00
//
2018-03-19 16:51:38 +01:00
// * If the health check is healthy: returns all the records
2018-01-16 14:20:59 +01:00
//
2018-03-19 16:51:38 +01:00
// * If the health check is unhealthy: returns the applicable value for the
// last healthy instance
2018-01-16 14:20:59 +01:00
//
2018-03-19 16:51:38 +01:00
// * If you didn't specify a health check configuration: returns all the
// records
//
// For the current limit on the number of instances that you can register using
// the same namespace and using the same service, see Limits on Auto Naming
// (http://docs.aws.amazon.com/Route53/latest/DeveloperGuide/DNSLimitations.html#limits-api-entities-autonaming)
// in the Route 53 Developer Guide.
2018-01-16 14:20:59 +01: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 Amazon Route 53 Auto Naming's
// API operation RegisterInstance for usage and error information.
//
// Returned Error Codes:
// * ErrCodeDuplicateRequest "DuplicateRequest"
2018-03-19 16:51:38 +01:00
// The operation is already in progress.
2018-01-16 14:20:59 +01:00
//
// * ErrCodeInvalidInput "InvalidInput"
// One or more specified values aren't valid. For example, when you're creating
// a namespace, the value of Name might not be a valid DNS name.
//
// * ErrCodeResourceInUse "ResourceInUse"
// The specified resource can't be deleted because it contains other resources.
// For example, you can't delete a service that contains any instances.
//
// * ErrCodeResourceLimitExceeded "ResourceLimitExceeded"
// The resource can't be created because you've reached the limit on the number
// of resources.
//
// * ErrCodeServiceNotFound "ServiceNotFound"
// No service exists with the specified ID.
//
// See also, https://docs.aws.amazon.com/goto/WebAPI/servicediscovery-2017-03-14/RegisterInstance
func ( c * ServiceDiscovery ) RegisterInstance ( input * RegisterInstanceInput ) ( * RegisterInstanceOutput , error ) {
req , out := c . RegisterInstanceRequest ( input )
return out , req . Send ( )
}
// RegisterInstanceWithContext is the same as RegisterInstance with the addition of
// the ability to pass a context and additional request options.
//
// See RegisterInstance 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 * ServiceDiscovery ) RegisterInstanceWithContext ( ctx aws . Context , input * RegisterInstanceInput , opts ... request . Option ) ( * RegisterInstanceOutput , error ) {
req , out := c . RegisterInstanceRequest ( input )
req . SetContext ( ctx )
req . ApplyOptions ( opts ... )
return out , req . Send ( )
}
2018-03-19 16:51:38 +01:00
const opUpdateInstanceCustomHealthStatus = "UpdateInstanceCustomHealthStatus"
// UpdateInstanceCustomHealthStatusRequest generates a "aws/request.Request" representing the
// client's request for the UpdateInstanceCustomHealthStatus operation. The "output" return
2018-05-02 18:09:45 +02:00
// value will be populated with the request's response once the request completes
2018-03-19 16:51:38 +01:00
// successfuly.
//
// 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 UpdateInstanceCustomHealthStatus for more information on using the UpdateInstanceCustomHealthStatus
// 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 UpdateInstanceCustomHealthStatusRequest method.
// req, resp := client.UpdateInstanceCustomHealthStatusRequest(params)
//
// err := req.Send()
// if err == nil { // resp is now filled
// fmt.Println(resp)
// }
//
// See also, https://docs.aws.amazon.com/goto/WebAPI/servicediscovery-2017-03-14/UpdateInstanceCustomHealthStatus
func ( c * ServiceDiscovery ) UpdateInstanceCustomHealthStatusRequest ( input * UpdateInstanceCustomHealthStatusInput ) ( req * request . Request , output * UpdateInstanceCustomHealthStatusOutput ) {
op := & request . Operation {
Name : opUpdateInstanceCustomHealthStatus ,
HTTPMethod : "POST" ,
HTTPPath : "/" ,
}
if input == nil {
input = & UpdateInstanceCustomHealthStatusInput { }
}
output = & UpdateInstanceCustomHealthStatusOutput { }
req = c . newRequest ( op , input , output )
req . Handlers . Unmarshal . Remove ( jsonrpc . UnmarshalHandler )
req . Handlers . Unmarshal . PushBackNamed ( protocol . UnmarshalDiscardBodyHandler )
return
}
// UpdateInstanceCustomHealthStatus API operation for Amazon Route 53 Auto Naming.
//
// 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 Amazon Route 53 Auto Naming's
// API operation UpdateInstanceCustomHealthStatus for usage and error information.
//
// Returned Error Codes:
// * ErrCodeInstanceNotFound "InstanceNotFound"
// No instance exists with the specified ID, or the instance was recently registered,
// and information about the instance hasn't propagated yet.
//
// * ErrCodeServiceNotFound "ServiceNotFound"
// No service exists with the specified ID.
//
// * ErrCodeCustomHealthNotFound "CustomHealthNotFound"
//
// * ErrCodeInvalidInput "InvalidInput"
// One or more specified values aren't valid. For example, when you're creating
// a namespace, the value of Name might not be a valid DNS name.
//
// See also, https://docs.aws.amazon.com/goto/WebAPI/servicediscovery-2017-03-14/UpdateInstanceCustomHealthStatus
func ( c * ServiceDiscovery ) UpdateInstanceCustomHealthStatus ( input * UpdateInstanceCustomHealthStatusInput ) ( * UpdateInstanceCustomHealthStatusOutput , error ) {
req , out := c . UpdateInstanceCustomHealthStatusRequest ( input )
return out , req . Send ( )
}
// UpdateInstanceCustomHealthStatusWithContext is the same as UpdateInstanceCustomHealthStatus with the addition of
// the ability to pass a context and additional request options.
//
// See UpdateInstanceCustomHealthStatus 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 * ServiceDiscovery ) UpdateInstanceCustomHealthStatusWithContext ( ctx aws . Context , input * UpdateInstanceCustomHealthStatusInput , opts ... request . Option ) ( * UpdateInstanceCustomHealthStatusOutput , error ) {
req , out := c . UpdateInstanceCustomHealthStatusRequest ( input )
req . SetContext ( ctx )
req . ApplyOptions ( opts ... )
return out , req . Send ( )
}
2018-01-16 14:20:59 +01:00
const opUpdateService = "UpdateService"
// UpdateServiceRequest generates a "aws/request.Request" representing the
// client's request for the UpdateService operation. The "output" return
2018-05-02 18:09:45 +02:00
// value will be populated with the request's response once the request completes
2018-01-16 14:20:59 +01:00
// successfuly.
//
// 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 UpdateService for more information on using the UpdateService
// 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 UpdateServiceRequest method.
// req, resp := client.UpdateServiceRequest(params)
//
// err := req.Send()
// if err == nil { // resp is now filled
// fmt.Println(resp)
// }
//
// See also, https://docs.aws.amazon.com/goto/WebAPI/servicediscovery-2017-03-14/UpdateService
func ( c * ServiceDiscovery ) UpdateServiceRequest ( input * UpdateServiceInput ) ( req * request . Request , output * UpdateServiceOutput ) {
op := & request . Operation {
Name : opUpdateService ,
HTTPMethod : "POST" ,
HTTPPath : "/" ,
}
if input == nil {
input = & UpdateServiceInput { }
}
output = & UpdateServiceOutput { }
req = c . newRequest ( op , input , output )
return
}
// UpdateService API operation for Amazon Route 53 Auto Naming.
//
2018-03-19 16:51:38 +01:00
// Submits a request to perform the following operations:
//
// * Add or delete DnsRecords configurations
//
// * Update the TTL setting for existing DnsRecords configurations
//
// * Add, update, or delete HealthCheckConfig for a specified service
//
// You must specify all DnsRecords configurations (and, optionally, HealthCheckConfig)
// that you want to appear in the updated service. Any current configurations
// that don't appear in an UpdateService request are deleted.
2018-01-16 14:20:59 +01:00
//
// When you update the TTL setting for a service, Amazon Route 53 also updates
2018-03-19 16:51:38 +01:00
// the corresponding settings in all the records and health checks that were
// created by using the specified service.
2018-01-16 14:20:59 +01: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 Amazon Route 53 Auto Naming's
// API operation UpdateService for usage and error information.
//
// Returned Error Codes:
// * ErrCodeDuplicateRequest "DuplicateRequest"
2018-03-19 16:51:38 +01:00
// The operation is already in progress.
2018-01-16 14:20:59 +01:00
//
// * ErrCodeInvalidInput "InvalidInput"
// One or more specified values aren't valid. For example, when you're creating
// a namespace, the value of Name might not be a valid DNS name.
//
// * ErrCodeServiceNotFound "ServiceNotFound"
// No service exists with the specified ID.
//
// See also, https://docs.aws.amazon.com/goto/WebAPI/servicediscovery-2017-03-14/UpdateService
func ( c * ServiceDiscovery ) UpdateService ( input * UpdateServiceInput ) ( * UpdateServiceOutput , error ) {
req , out := c . UpdateServiceRequest ( input )
return out , req . Send ( )
}
// UpdateServiceWithContext is the same as UpdateService with the addition of
// the ability to pass a context and additional request options.
//
// See UpdateService 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 * ServiceDiscovery ) UpdateServiceWithContext ( ctx aws . Context , input * UpdateServiceInput , opts ... request . Option ) ( * UpdateServiceOutput , error ) {
req , out := c . UpdateServiceRequest ( input )
req . SetContext ( ctx )
req . ApplyOptions ( opts ... )
return out , req . Send ( )
}
type CreatePrivateDnsNamespaceInput struct {
_ struct { } ` type:"structure" `
2018-03-19 16:51:38 +01:00
// A unique string that identifies the request and that allows failed CreatePrivateDnsNamespace
// requests to be retried without the risk of executing the operation twice.
// CreatorRequestId can be any unique string, for example, a date/time stamp.
2018-01-16 14:20:59 +01:00
CreatorRequestId * string ` type:"string" idempotencyToken:"true" `
// A description for the namespace.
Description * string ` type:"string" `
// The name that you want to assign to this namespace. When you create a namespace,
// Amazon Route 53 automatically creates a hosted zone that has the same name
// as the namespace.
//
// Name is a required field
Name * string ` type:"string" required:"true" `
// The ID of the Amazon VPC that you want to associate the namespace with.
//
// Vpc is a required field
Vpc * string ` type:"string" required:"true" `
}
// String returns the string representation
func ( s CreatePrivateDnsNamespaceInput ) String ( ) string {
return awsutil . Prettify ( s )
}
// GoString returns the string representation
func ( s CreatePrivateDnsNamespaceInput ) GoString ( ) string {
return s . String ( )
}
// Validate inspects the fields of the type to determine if they are valid.
func ( s * CreatePrivateDnsNamespaceInput ) Validate ( ) error {
invalidParams := request . ErrInvalidParams { Context : "CreatePrivateDnsNamespaceInput" }
if s . Name == nil {
invalidParams . Add ( request . NewErrParamRequired ( "Name" ) )
}
if s . Vpc == nil {
invalidParams . Add ( request . NewErrParamRequired ( "Vpc" ) )
}
if invalidParams . Len ( ) > 0 {
return invalidParams
}
return nil
}
// SetCreatorRequestId sets the CreatorRequestId field's value.
func ( s * CreatePrivateDnsNamespaceInput ) SetCreatorRequestId ( v string ) * CreatePrivateDnsNamespaceInput {
s . CreatorRequestId = & v
return s
}
// SetDescription sets the Description field's value.
func ( s * CreatePrivateDnsNamespaceInput ) SetDescription ( v string ) * CreatePrivateDnsNamespaceInput {
s . Description = & v
return s
}
// SetName sets the Name field's value.
func ( s * CreatePrivateDnsNamespaceInput ) SetName ( v string ) * CreatePrivateDnsNamespaceInput {
s . Name = & v
return s
}
// SetVpc sets the Vpc field's value.
func ( s * CreatePrivateDnsNamespaceInput ) SetVpc ( v string ) * CreatePrivateDnsNamespaceInput {
s . Vpc = & v
return s
}
type CreatePrivateDnsNamespaceOutput struct {
_ struct { } ` type:"structure" `
// A value that you can use to determine whether the request completed successfully.
// To get the status of the operation, see GetOperation.
OperationId * string ` type:"string" `
}
// String returns the string representation
func ( s CreatePrivateDnsNamespaceOutput ) String ( ) string {
return awsutil . Prettify ( s )
}
// GoString returns the string representation
func ( s CreatePrivateDnsNamespaceOutput ) GoString ( ) string {
return s . String ( )
}
// SetOperationId sets the OperationId field's value.
func ( s * CreatePrivateDnsNamespaceOutput ) SetOperationId ( v string ) * CreatePrivateDnsNamespaceOutput {
s . OperationId = & v
return s
}
type CreatePublicDnsNamespaceInput struct {
_ struct { } ` type:"structure" `
2018-03-19 16:51:38 +01:00
// A unique string that identifies the request and that allows failed CreatePublicDnsNamespace
// requests to be retried without the risk of executing the operation twice.
// CreatorRequestId can be any unique string, for example, a date/time stamp.
2018-01-16 14:20:59 +01:00
CreatorRequestId * string ` type:"string" idempotencyToken:"true" `
// A description for the namespace.
Description * string ` type:"string" `
// The name that you want to assign to this namespace.
//
// Name is a required field
Name * string ` type:"string" required:"true" `
}
// String returns the string representation
func ( s CreatePublicDnsNamespaceInput ) String ( ) string {
return awsutil . Prettify ( s )
}
// GoString returns the string representation
func ( s CreatePublicDnsNamespaceInput ) GoString ( ) string {
return s . String ( )
}
// Validate inspects the fields of the type to determine if they are valid.
func ( s * CreatePublicDnsNamespaceInput ) Validate ( ) error {
invalidParams := request . ErrInvalidParams { Context : "CreatePublicDnsNamespaceInput" }
if s . Name == nil {
invalidParams . Add ( request . NewErrParamRequired ( "Name" ) )
}
if invalidParams . Len ( ) > 0 {
return invalidParams
}
return nil
}
// SetCreatorRequestId sets the CreatorRequestId field's value.
func ( s * CreatePublicDnsNamespaceInput ) SetCreatorRequestId ( v string ) * CreatePublicDnsNamespaceInput {
s . CreatorRequestId = & v
return s
}
// SetDescription sets the Description field's value.
func ( s * CreatePublicDnsNamespaceInput ) SetDescription ( v string ) * CreatePublicDnsNamespaceInput {
s . Description = & v
return s
}
// SetName sets the Name field's value.
func ( s * CreatePublicDnsNamespaceInput ) SetName ( v string ) * CreatePublicDnsNamespaceInput {
s . Name = & v
return s
}
type CreatePublicDnsNamespaceOutput struct {
_ struct { } ` type:"structure" `
// A value that you can use to determine whether the request completed successfully.
// To get the status of the operation, see GetOperation.
OperationId * string ` type:"string" `
}
// String returns the string representation
func ( s CreatePublicDnsNamespaceOutput ) String ( ) string {
return awsutil . Prettify ( s )
}
// GoString returns the string representation
func ( s CreatePublicDnsNamespaceOutput ) GoString ( ) string {
return s . String ( )
}
// SetOperationId sets the OperationId field's value.
func ( s * CreatePublicDnsNamespaceOutput ) SetOperationId ( v string ) * CreatePublicDnsNamespaceOutput {
s . OperationId = & v
return s
}
type CreateServiceInput struct {
_ struct { } ` type:"structure" `
2018-03-19 16:51:38 +01:00
// A unique string that identifies the request and that allows failed CreateService
// requests to be retried without the risk of executing the operation twice.
// CreatorRequestId can be any unique string, for example, a date/time stamp.
2018-01-16 14:20:59 +01:00
CreatorRequestId * string ` type:"string" idempotencyToken:"true" `
// A description for the service.
Description * string ` type:"string" `
2018-03-19 16:51:38 +01:00
// A complex type that contains information about the records that you want
// Route 53 to create when you register an instance.
2018-01-16 14:20:59 +01:00
//
// DnsConfig is a required field
DnsConfig * DnsConfig ` type:"structure" required:"true" `
// Public DNS namespaces only. A complex type that contains settings for an
2018-03-19 16:51:38 +01:00
// optional health check. If you specify settings for a health check, Route
// 53 associates the health check with all the records that you specify in DnsConfig.
2018-01-16 14:20:59 +01:00
//
2018-03-19 16:51:38 +01:00
// For information about the charges for health checks, see Route 53 Pricing
// (http://aws.amazon.com/route53/pricing).
2018-01-16 14:20:59 +01:00
HealthCheckConfig * HealthCheckConfig ` type:"structure" `
2018-03-19 16:51:38 +01:00
HealthCheckCustomConfig * HealthCheckCustomConfig ` type:"structure" `
2018-01-16 14:20:59 +01:00
// The name that you want to assign to the service.
//
// Name is a required field
Name * string ` type:"string" required:"true" `
}
// String returns the string representation
func ( s CreateServiceInput ) String ( ) string {
return awsutil . Prettify ( s )
}
// GoString returns the string representation
func ( s CreateServiceInput ) GoString ( ) string {
return s . String ( )
}
// Validate inspects the fields of the type to determine if they are valid.
func ( s * CreateServiceInput ) Validate ( ) error {
invalidParams := request . ErrInvalidParams { Context : "CreateServiceInput" }
if s . DnsConfig == nil {
invalidParams . Add ( request . NewErrParamRequired ( "DnsConfig" ) )
}
if s . Name == nil {
invalidParams . Add ( request . NewErrParamRequired ( "Name" ) )
}
if s . DnsConfig != nil {
if err := s . DnsConfig . Validate ( ) ; err != nil {
invalidParams . AddNested ( "DnsConfig" , err . ( request . ErrInvalidParams ) )
}
}
if s . HealthCheckConfig != nil {
if err := s . HealthCheckConfig . Validate ( ) ; err != nil {
invalidParams . AddNested ( "HealthCheckConfig" , err . ( request . ErrInvalidParams ) )
}
}
2018-03-19 16:51:38 +01:00
if s . HealthCheckCustomConfig != nil {
if err := s . HealthCheckCustomConfig . Validate ( ) ; err != nil {
invalidParams . AddNested ( "HealthCheckCustomConfig" , err . ( request . ErrInvalidParams ) )
}
}
2018-01-16 14:20:59 +01:00
if invalidParams . Len ( ) > 0 {
return invalidParams
}
return nil
}
// SetCreatorRequestId sets the CreatorRequestId field's value.
func ( s * CreateServiceInput ) SetCreatorRequestId ( v string ) * CreateServiceInput {
s . CreatorRequestId = & v
return s
}
// SetDescription sets the Description field's value.
func ( s * CreateServiceInput ) SetDescription ( v string ) * CreateServiceInput {
s . Description = & v
return s
}
// SetDnsConfig sets the DnsConfig field's value.
func ( s * CreateServiceInput ) SetDnsConfig ( v * DnsConfig ) * CreateServiceInput {
s . DnsConfig = v
return s
}
// SetHealthCheckConfig sets the HealthCheckConfig field's value.
func ( s * CreateServiceInput ) SetHealthCheckConfig ( v * HealthCheckConfig ) * CreateServiceInput {
s . HealthCheckConfig = v
return s
}
2018-03-19 16:51:38 +01:00
// SetHealthCheckCustomConfig sets the HealthCheckCustomConfig field's value.
func ( s * CreateServiceInput ) SetHealthCheckCustomConfig ( v * HealthCheckCustomConfig ) * CreateServiceInput {
s . HealthCheckCustomConfig = v
return s
}
2018-01-16 14:20:59 +01:00
// SetName sets the Name field's value.
func ( s * CreateServiceInput ) SetName ( v string ) * CreateServiceInput {
s . Name = & v
return s
}
type CreateServiceOutput struct {
_ struct { } ` type:"structure" `
// A complex type that contains information about the new service.
Service * Service ` type:"structure" `
}
// String returns the string representation
func ( s CreateServiceOutput ) String ( ) string {
return awsutil . Prettify ( s )
}
// GoString returns the string representation
func ( s CreateServiceOutput ) GoString ( ) string {
return s . String ( )
}
// SetService sets the Service field's value.
func ( s * CreateServiceOutput ) SetService ( v * Service ) * CreateServiceOutput {
s . Service = v
return s
}
type DeleteNamespaceInput struct {
_ struct { } ` type:"structure" `
// The ID of the namespace that you want to delete.
//
// Id is a required field
Id * string ` type:"string" required:"true" `
}
// String returns the string representation
func ( s DeleteNamespaceInput ) String ( ) string {
return awsutil . Prettify ( s )
}
// GoString returns the string representation
func ( s DeleteNamespaceInput ) GoString ( ) string {
return s . String ( )
}
// Validate inspects the fields of the type to determine if they are valid.
func ( s * DeleteNamespaceInput ) Validate ( ) error {
invalidParams := request . ErrInvalidParams { Context : "DeleteNamespaceInput" }
if s . Id == nil {
invalidParams . Add ( request . NewErrParamRequired ( "Id" ) )
}
if invalidParams . Len ( ) > 0 {
return invalidParams
}
return nil
}
// SetId sets the Id field's value.
func ( s * DeleteNamespaceInput ) SetId ( v string ) * DeleteNamespaceInput {
s . Id = & v
return s
}
type DeleteNamespaceOutput struct {
_ struct { } ` type:"structure" `
// A value that you can use to determine whether the request completed successfully.
// To get the status of the operation, see GetOperation.
OperationId * string ` type:"string" `
}
// String returns the string representation
func ( s DeleteNamespaceOutput ) String ( ) string {
return awsutil . Prettify ( s )
}
// GoString returns the string representation
func ( s DeleteNamespaceOutput ) GoString ( ) string {
return s . String ( )
}
// SetOperationId sets the OperationId field's value.
func ( s * DeleteNamespaceOutput ) SetOperationId ( v string ) * DeleteNamespaceOutput {
s . OperationId = & v
return s
}
type DeleteServiceInput struct {
_ struct { } ` type:"structure" `
// The ID of the service that you want to delete.
//
// Id is a required field
Id * string ` type:"string" required:"true" `
}
// String returns the string representation
func ( s DeleteServiceInput ) String ( ) string {
return awsutil . Prettify ( s )
}
// GoString returns the string representation
func ( s DeleteServiceInput ) GoString ( ) string {
return s . String ( )
}
// Validate inspects the fields of the type to determine if they are valid.
func ( s * DeleteServiceInput ) Validate ( ) error {
invalidParams := request . ErrInvalidParams { Context : "DeleteServiceInput" }
if s . Id == nil {
invalidParams . Add ( request . NewErrParamRequired ( "Id" ) )
}
if invalidParams . Len ( ) > 0 {
return invalidParams
}
return nil
}
// SetId sets the Id field's value.
func ( s * DeleteServiceInput ) SetId ( v string ) * DeleteServiceInput {
s . Id = & v
return s
}
type DeleteServiceOutput struct {
_ struct { } ` type:"structure" `
}
// String returns the string representation
func ( s DeleteServiceOutput ) String ( ) string {
return awsutil . Prettify ( s )
}
// GoString returns the string representation
func ( s DeleteServiceOutput ) GoString ( ) string {
return s . String ( )
}
type DeregisterInstanceInput struct {
_ struct { } ` type:"structure" `
// The value that you specified for Id in the RegisterInstance request.
//
// InstanceId is a required field
InstanceId * string ` type:"string" required:"true" `
// The ID of the service that the instance is associated with.
//
// ServiceId is a required field
ServiceId * string ` type:"string" required:"true" `
}
// String returns the string representation
func ( s DeregisterInstanceInput ) String ( ) string {
return awsutil . Prettify ( s )
}
// GoString returns the string representation
func ( s DeregisterInstanceInput ) GoString ( ) string {
return s . String ( )
}
// Validate inspects the fields of the type to determine if they are valid.
func ( s * DeregisterInstanceInput ) Validate ( ) error {
invalidParams := request . ErrInvalidParams { Context : "DeregisterInstanceInput" }
if s . InstanceId == nil {
invalidParams . Add ( request . NewErrParamRequired ( "InstanceId" ) )
}
if s . ServiceId == nil {
invalidParams . Add ( request . NewErrParamRequired ( "ServiceId" ) )
}
if invalidParams . Len ( ) > 0 {
return invalidParams
}
return nil
}
// SetInstanceId sets the InstanceId field's value.
func ( s * DeregisterInstanceInput ) SetInstanceId ( v string ) * DeregisterInstanceInput {
s . InstanceId = & v
return s
}
// SetServiceId sets the ServiceId field's value.
func ( s * DeregisterInstanceInput ) SetServiceId ( v string ) * DeregisterInstanceInput {
s . ServiceId = & v
return s
}
type DeregisterInstanceOutput struct {
_ struct { } ` type:"structure" `
// A value that you can use to determine whether the request completed successfully.
// For more information, see GetOperation.
OperationId * string ` type:"string" `
}
// String returns the string representation
func ( s DeregisterInstanceOutput ) String ( ) string {
return awsutil . Prettify ( s )
}
// GoString returns the string representation
func ( s DeregisterInstanceOutput ) GoString ( ) string {
return s . String ( )
}
// SetOperationId sets the OperationId field's value.
func ( s * DeregisterInstanceOutput ) SetOperationId ( v string ) * DeregisterInstanceOutput {
s . OperationId = & v
return s
}
2018-03-19 16:51:38 +01:00
// A complex type that contains information about the records that you want
// Amazon Route 53 to create when you register an instance.
2018-01-16 14:20:59 +01:00
type DnsConfig struct {
_ struct { } ` type:"structure" `
2018-03-19 16:51:38 +01:00
// An array that contains one DnsRecord object for each record that you want
// Route 53 to create when you register an instance.
2018-01-16 14:20:59 +01:00
//
// DnsRecords is a required field
DnsRecords [ ] * DnsRecord ` type:"list" required:"true" `
// The ID of the namespace to use for DNS configuration.
//
// NamespaceId is a required field
NamespaceId * string ` type:"string" required:"true" `
2018-03-19 16:51:38 +01:00
// The routing policy that you want to apply to all records that Route 53 creates
// when you register an instance and specify this service.
//
// If you want to use this service to register instances that create alias records,
// specify WEIGHTED for the routing policy.
//
// You can specify the following values:
//
// MULTIVALUE
//
// If you define a health check for the service and the health check is healthy,
// Route 53 returns the applicable value for up to eight instances.
//
// For example, suppose the service includes configurations for one A record
// and a health check, and you use the service to register 10 instances. Route
// 53 responds to DNS queries with IP addresses for up to eight healthy instances.
// If fewer than eight instances are healthy, Route 53 responds to every DNS
// query with the IP addresses for all of the healthy instances.
//
// If you don't define a health check for the service, Route 53 assumes that
// all instances are healthy and returns the values for up to eight instances.
//
// For more information about the multivalue routing policy, see Multivalue
// Answer Routing (http://docs.aws.amazon.com/Route53/latest/DeveloperGuide/routing-policy.html#routing-policy-multivalue)
// in the Route 53 Developer Guide.
//
// WEIGHTED
//
// Route 53 returns the applicable value from one randomly selected instance
// from among the instances that you registered using the same service. Currently,
// all records have the same weight, so you can't route more or less traffic
// to any instances.
//
// For example, suppose the service includes configurations for one A record
// and a health check, and you use the service to register 10 instances. Route
// 53 responds to DNS queries with the IP address for one randomly selected
// instance from among the healthy instances. If no instances are healthy, Route
// 53 responds to DNS queries as if all of the instances were healthy.
//
// If you don't define a health check for the service, Route 53 assumes that
// all instances are healthy and returns the applicable value for one randomly
// selected instance.
//
// For more information about the weighted routing policy, see Weighted Routing
// (http://docs.aws.amazon.com/Route53/latest/DeveloperGuide/routing-policy.html#routing-policy-weighted)
// in the Route 53 Developer Guide.
RoutingPolicy * string ` type:"string" enum:"RoutingPolicy" `
2018-01-16 14:20:59 +01:00
}
// String returns the string representation
func ( s DnsConfig ) String ( ) string {
return awsutil . Prettify ( s )
}
// GoString returns the string representation
func ( s DnsConfig ) GoString ( ) string {
return s . String ( )
}
// Validate inspects the fields of the type to determine if they are valid.
func ( s * DnsConfig ) Validate ( ) error {
invalidParams := request . ErrInvalidParams { Context : "DnsConfig" }
if s . DnsRecords == nil {
invalidParams . Add ( request . NewErrParamRequired ( "DnsRecords" ) )
}
if s . NamespaceId == nil {
invalidParams . Add ( request . NewErrParamRequired ( "NamespaceId" ) )
}
if s . DnsRecords != nil {
for i , v := range s . DnsRecords {
if v == nil {
continue
}
if err := v . Validate ( ) ; err != nil {
invalidParams . AddNested ( fmt . Sprintf ( "%s[%v]" , "DnsRecords" , i ) , err . ( request . ErrInvalidParams ) )
}
}
}
if invalidParams . Len ( ) > 0 {
return invalidParams
}
return nil
}
// SetDnsRecords sets the DnsRecords field's value.
func ( s * DnsConfig ) SetDnsRecords ( v [ ] * DnsRecord ) * DnsConfig {
s . DnsRecords = v
return s
}
// SetNamespaceId sets the NamespaceId field's value.
func ( s * DnsConfig ) SetNamespaceId ( v string ) * DnsConfig {
s . NamespaceId = & v
return s
}
2018-03-19 16:51:38 +01:00
// SetRoutingPolicy sets the RoutingPolicy field's value.
func ( s * DnsConfig ) SetRoutingPolicy ( v string ) * DnsConfig {
s . RoutingPolicy = & v
return s
}
// A complex type that contains information about changes to the records that
// Route 53 creates when you register an instance.
2018-01-16 14:20:59 +01:00
type DnsConfigChange struct {
_ struct { } ` type:"structure" `
2018-03-19 16:51:38 +01:00
// An array that contains one DnsRecord object for each record that you want
// Route 53 to create when you register an instance.
2018-01-16 14:20:59 +01:00
//
// DnsRecords is a required field
DnsRecords [ ] * DnsRecord ` type:"list" required:"true" `
}
// String returns the string representation
func ( s DnsConfigChange ) String ( ) string {
return awsutil . Prettify ( s )
}
// GoString returns the string representation
func ( s DnsConfigChange ) GoString ( ) string {
return s . String ( )
}
// Validate inspects the fields of the type to determine if they are valid.
func ( s * DnsConfigChange ) Validate ( ) error {
invalidParams := request . ErrInvalidParams { Context : "DnsConfigChange" }
if s . DnsRecords == nil {
invalidParams . Add ( request . NewErrParamRequired ( "DnsRecords" ) )
}
if s . DnsRecords != nil {
for i , v := range s . DnsRecords {
if v == nil {
continue
}
if err := v . Validate ( ) ; err != nil {
invalidParams . AddNested ( fmt . Sprintf ( "%s[%v]" , "DnsRecords" , i ) , err . ( request . ErrInvalidParams ) )
}
}
}
if invalidParams . Len ( ) > 0 {
return invalidParams
}
return nil
}
// SetDnsRecords sets the DnsRecords field's value.
func ( s * DnsConfigChange ) SetDnsRecords ( v [ ] * DnsRecord ) * DnsConfigChange {
s . DnsRecords = v
return s
}
2018-03-19 16:51:38 +01:00
// A complex type that contains the ID for the hosted zone that Route 53 creates
// when you create a namespace.
2018-01-16 14:20:59 +01:00
type DnsProperties struct {
_ struct { } ` type:"structure" `
2018-03-19 16:51:38 +01:00
// The ID for the hosted zone that Route 53 creates when you create a namespace.
2018-01-16 14:20:59 +01:00
HostedZoneId * string ` type:"string" `
}
// String returns the string representation
func ( s DnsProperties ) String ( ) string {
return awsutil . Prettify ( s )
}
// GoString returns the string representation
func ( s DnsProperties ) GoString ( ) string {
return s . String ( )
}
// SetHostedZoneId sets the HostedZoneId field's value.
func ( s * DnsProperties ) SetHostedZoneId ( v string ) * DnsProperties {
s . HostedZoneId = & v
return s
}
2018-03-19 16:51:38 +01:00
// A complex type that contains information about the records that you want
// Route 53 to create when you register an instance.
2018-01-16 14:20:59 +01:00
type DnsRecord struct {
_ struct { } ` type:"structure" `
// The amount of time, in seconds, that you want DNS resolvers to cache the
2018-03-19 16:51:38 +01:00
// settings for this record.
//
// Alias records don't include a TTL because Route 53 uses the TTL for the AWS
// resource that an alias record routes traffic to. If you include the AWS_ALIAS_DNS_NAME
// attribute when you submit a RegisterInstance request, the TTL value is ignored.
// Always specify a TTL for the service; you can use a service to register instances
// that create either alias or non-alias records.
2018-01-16 14:20:59 +01:00
//
// TTL is a required field
TTL * int64 ` type:"long" required:"true" `
2018-03-19 16:51:38 +01:00
// The type of the resource, which indicates the type of value that Route 53
// returns in response to DNS queries.
2018-01-16 14:20:59 +01:00
//
2018-03-19 16:51:38 +01:00
// Note the following:
2018-01-16 14:20:59 +01:00
//
2018-03-19 16:51:38 +01:00
// * A, AAAA, and SRV records: You can specify settings for a maximum of
// one A, one AAAA, and one SRV record. You can specify them in any combination.
2018-01-16 14:20:59 +01:00
//
2018-03-19 16:51:38 +01:00
// * CNAME records: If you specify CNAME for Type, you can't define any other
// records. This is a limitation of DNS—you can't create a CNAME record and
// any other type of record that has the same name as a CNAME record.
2018-01-16 14:20:59 +01:00
//
2018-03-19 16:51:38 +01:00
// * Alias records: If you want Route 53 to create an alias record when you
// register an instance, specify A or AAAA for Type.
2018-01-16 14:20:59 +01:00
//
2018-03-19 16:51:38 +01:00
// * All records: You specify settings other than TTL and Type when you register
// an instance.
//
// The following values are supported:
//
// A
//
// Route 53 returns the IP address of the resource in IPv4 format, such as 192.0.2.44.
//
// AAAA
//
// Route 53 returns the IP address of the resource in IPv6 format, such as 2001:0db8:85a3:0000:0000:abcd:0001:2345.
//
// CNAME
//
// Route 53 returns the domain name of the resource, such as www.example.com.
// Note the following:
//
// * You specify the domain name that you want to route traffic to when you
// register an instance. For more information, see RegisterInstanceRequest$Attributes.
//
// * You must specify WEIGHTED for the value of RoutingPolicy.
//
// * You can't specify both CNAME for Type and settings for HealthCheckConfig.
// If you do, the request will fail with an InvalidInput error.
//
// SRV
//
// Route 53 returns the value for an SRV record. The value for an SRV record
// uses the following values:
//
// priority weight port service-hostname
//
// Note the following about the values:
//
// * The values of priority and weight are both set to 1 and can't be changed.
//
//
// * The value of port comes from the value that you specify for the AWS_INSTANCE_PORT
// attribute when you submit a RegisterInstance request.
//
// * The value of service-hostname is a concatenation of the following values:
//
// The value that you specify for InstanceId when you register an instance.
//
// The name of the service.
//
// The name of the namespace.
//
// For example, if the value of InstanceId is test, the name of the service
// is backend, and the name of the namespace is example.com, the value of
// service-hostname is:
//
// test.backend.example.com
//
// If you specify settings for an SRV record and if you specify values for AWS_INSTANCE_IPV4,
// AWS_INSTANCE_IPV6, or both in the RegisterInstance request, Route 53 automatically
// creates A and/or AAAA records that have the same name as the value of service-hostname
// in the SRV record. You can ignore these records.
2018-01-16 14:20:59 +01:00
//
// Type is a required field
Type * string ` type:"string" required:"true" enum:"RecordType" `
}
// String returns the string representation
func ( s DnsRecord ) String ( ) string {
return awsutil . Prettify ( s )
}
// GoString returns the string representation
func ( s DnsRecord ) GoString ( ) string {
return s . String ( )
}
// Validate inspects the fields of the type to determine if they are valid.
func ( s * DnsRecord ) Validate ( ) error {
invalidParams := request . ErrInvalidParams { Context : "DnsRecord" }
if s . TTL == nil {
invalidParams . Add ( request . NewErrParamRequired ( "TTL" ) )
}
if s . Type == nil {
invalidParams . Add ( request . NewErrParamRequired ( "Type" ) )
}
if invalidParams . Len ( ) > 0 {
return invalidParams
}
return nil
}
// SetTTL sets the TTL field's value.
func ( s * DnsRecord ) SetTTL ( v int64 ) * DnsRecord {
s . TTL = & v
return s
}
// SetType sets the Type field's value.
func ( s * DnsRecord ) SetType ( v string ) * DnsRecord {
s . Type = & v
return s
}
type GetInstanceInput struct {
_ struct { } ` type:"structure" `
// The ID of the instance that you want to get information about.
//
// InstanceId is a required field
InstanceId * string ` type:"string" required:"true" `
// The ID of the service that the instance is associated with.
//
// ServiceId is a required field
ServiceId * string ` type:"string" required:"true" `
}
// String returns the string representation
func ( s GetInstanceInput ) String ( ) string {
return awsutil . Prettify ( s )
}
// GoString returns the string representation
func ( s GetInstanceInput ) GoString ( ) string {
return s . String ( )
}
// Validate inspects the fields of the type to determine if they are valid.
func ( s * GetInstanceInput ) Validate ( ) error {
invalidParams := request . ErrInvalidParams { Context : "GetInstanceInput" }
if s . InstanceId == nil {
invalidParams . Add ( request . NewErrParamRequired ( "InstanceId" ) )
}
if s . ServiceId == nil {
invalidParams . Add ( request . NewErrParamRequired ( "ServiceId" ) )
}
if invalidParams . Len ( ) > 0 {
return invalidParams
}
return nil
}
// SetInstanceId sets the InstanceId field's value.
func ( s * GetInstanceInput ) SetInstanceId ( v string ) * GetInstanceInput {
s . InstanceId = & v
return s
}
// SetServiceId sets the ServiceId field's value.
func ( s * GetInstanceInput ) SetServiceId ( v string ) * GetInstanceInput {
s . ServiceId = & v
return s
}
type GetInstanceOutput struct {
_ struct { } ` type:"structure" `
// A complex type that contains information about a specified instance.
Instance * Instance ` type:"structure" `
}
// String returns the string representation
func ( s GetInstanceOutput ) String ( ) string {
return awsutil . Prettify ( s )
}
// GoString returns the string representation
func ( s GetInstanceOutput ) GoString ( ) string {
return s . String ( )
}
// SetInstance sets the Instance field's value.
func ( s * GetInstanceOutput ) SetInstance ( v * Instance ) * GetInstanceOutput {
s . Instance = v
return s
}
type GetInstancesHealthStatusInput struct {
_ struct { } ` type:"structure" `
// An array that contains the IDs of all the instances that you want to get
2018-03-19 16:51:38 +01:00
// the health status for.
2018-01-16 14:20:59 +01:00
//
// If you omit Instances, Amazon Route 53 returns the health status for all
// the instances that are associated with the specified service.
2018-03-19 16:51:38 +01:00
//
// To get the IDs for the instances that you've registered by using a specified
// service, submit a ListInstances request.
2018-01-16 14:20:59 +01:00
Instances [ ] * string ` min:"1" type:"list" `
2018-03-19 16:51:38 +01:00
// The maximum number of instances that you want Route 53 to return in the response
// to a GetInstancesHealthStatus request. If you don't specify a value for MaxResults,
// Route 53 returns up to 100 instances.
2018-01-16 14:20:59 +01:00
MaxResults * int64 ` min:"1" type:"integer" `
// For the first GetInstancesHealthStatus request, omit this value.
//
// If more than MaxResults instances match the specified criteria, you can submit
// another GetInstancesHealthStatus request to get the next group of results.
// Specify the value of NextToken from the previous response in the next request.
NextToken * string ` type:"string" `
// The ID of the service that the instance is associated with.
//
// ServiceId is a required field
ServiceId * string ` type:"string" required:"true" `
}
// String returns the string representation
func ( s GetInstancesHealthStatusInput ) String ( ) string {
return awsutil . Prettify ( s )
}
// GoString returns the string representation
func ( s GetInstancesHealthStatusInput ) GoString ( ) string {
return s . String ( )
}
// Validate inspects the fields of the type to determine if they are valid.
func ( s * GetInstancesHealthStatusInput ) Validate ( ) error {
invalidParams := request . ErrInvalidParams { Context : "GetInstancesHealthStatusInput" }
if s . Instances != nil && len ( s . Instances ) < 1 {
invalidParams . Add ( request . NewErrParamMinLen ( "Instances" , 1 ) )
}
if s . MaxResults != nil && * s . MaxResults < 1 {
invalidParams . Add ( request . NewErrParamMinValue ( "MaxResults" , 1 ) )
}
if s . ServiceId == nil {
invalidParams . Add ( request . NewErrParamRequired ( "ServiceId" ) )
}
if invalidParams . Len ( ) > 0 {
return invalidParams
}
return nil
}
// SetInstances sets the Instances field's value.
func ( s * GetInstancesHealthStatusInput ) SetInstances ( v [ ] * string ) * GetInstancesHealthStatusInput {
s . Instances = v
return s
}
// SetMaxResults sets the MaxResults field's value.
func ( s * GetInstancesHealthStatusInput ) SetMaxResults ( v int64 ) * GetInstancesHealthStatusInput {
s . MaxResults = & v
return s
}
// SetNextToken sets the NextToken field's value.
func ( s * GetInstancesHealthStatusInput ) SetNextToken ( v string ) * GetInstancesHealthStatusInput {
s . NextToken = & v
return s
}
// SetServiceId sets the ServiceId field's value.
func ( s * GetInstancesHealthStatusInput ) SetServiceId ( v string ) * GetInstancesHealthStatusInput {
s . ServiceId = & v
return s
}
type GetInstancesHealthStatusOutput struct {
_ struct { } ` type:"structure" `
// If more than MaxResults instances match the specified criteria, you can submit
// another GetInstancesHealthStatus request to get the next group of results.
// Specify the value of NextToken from the previous response in the next request.
NextToken * string ` type:"string" `
// A complex type that contains the IDs and the health status of the instances
// that you specified in the GetInstancesHealthStatus request.
Status map [ string ] * string ` type:"map" `
}
// String returns the string representation
func ( s GetInstancesHealthStatusOutput ) String ( ) string {
return awsutil . Prettify ( s )
}
// GoString returns the string representation
func ( s GetInstancesHealthStatusOutput ) GoString ( ) string {
return s . String ( )
}
// SetNextToken sets the NextToken field's value.
func ( s * GetInstancesHealthStatusOutput ) SetNextToken ( v string ) * GetInstancesHealthStatusOutput {
s . NextToken = & v
return s
}
// SetStatus sets the Status field's value.
func ( s * GetInstancesHealthStatusOutput ) SetStatus ( v map [ string ] * string ) * GetInstancesHealthStatusOutput {
s . Status = v
return s
}
type GetNamespaceInput struct {
_ struct { } ` type:"structure" `
// The ID of the namespace that you want to get information about.
//
// Id is a required field
Id * string ` type:"string" required:"true" `
}
// String returns the string representation
func ( s GetNamespaceInput ) String ( ) string {
return awsutil . Prettify ( s )
}
// GoString returns the string representation
func ( s GetNamespaceInput ) GoString ( ) string {
return s . String ( )
}
// Validate inspects the fields of the type to determine if they are valid.
func ( s * GetNamespaceInput ) Validate ( ) error {
invalidParams := request . ErrInvalidParams { Context : "GetNamespaceInput" }
if s . Id == nil {
invalidParams . Add ( request . NewErrParamRequired ( "Id" ) )
}
if invalidParams . Len ( ) > 0 {
return invalidParams
}
return nil
}
// SetId sets the Id field's value.
func ( s * GetNamespaceInput ) SetId ( v string ) * GetNamespaceInput {
s . Id = & v
return s
}
type GetNamespaceOutput struct {
_ struct { } ` type:"structure" `
// A complex type that contains information about the specified namespace.
Namespace * Namespace ` type:"structure" `
}
// String returns the string representation
func ( s GetNamespaceOutput ) String ( ) string {
return awsutil . Prettify ( s )
}
// GoString returns the string representation
func ( s GetNamespaceOutput ) GoString ( ) string {
return s . String ( )
}
// SetNamespace sets the Namespace field's value.
func ( s * GetNamespaceOutput ) SetNamespace ( v * Namespace ) * GetNamespaceOutput {
s . Namespace = v
return s
}
type GetOperationInput struct {
_ struct { } ` type:"structure" `
// The ID of the operation that you want to get more information about.
//
// OperationId is a required field
OperationId * string ` type:"string" required:"true" `
}
// String returns the string representation
func ( s GetOperationInput ) String ( ) string {
return awsutil . Prettify ( s )
}
// GoString returns the string representation
func ( s GetOperationInput ) GoString ( ) string {
return s . String ( )
}
// Validate inspects the fields of the type to determine if they are valid.
func ( s * GetOperationInput ) Validate ( ) error {
invalidParams := request . ErrInvalidParams { Context : "GetOperationInput" }
if s . OperationId == nil {
invalidParams . Add ( request . NewErrParamRequired ( "OperationId" ) )
}
if invalidParams . Len ( ) > 0 {
return invalidParams
}
return nil
}
// SetOperationId sets the OperationId field's value.
func ( s * GetOperationInput ) SetOperationId ( v string ) * GetOperationInput {
s . OperationId = & v
return s
}
type GetOperationOutput struct {
_ struct { } ` type:"structure" `
// A complex type that contains information about the operation.
Operation * Operation ` type:"structure" `
}
// String returns the string representation
func ( s GetOperationOutput ) String ( ) string {
return awsutil . Prettify ( s )
}
// GoString returns the string representation
func ( s GetOperationOutput ) GoString ( ) string {
return s . String ( )
}
// SetOperation sets the Operation field's value.
func ( s * GetOperationOutput ) SetOperation ( v * Operation ) * GetOperationOutput {
s . Operation = v
return s
}
type GetServiceInput struct {
_ struct { } ` type:"structure" `
// The ID of the service that you want to get settings for.
//
// Id is a required field
Id * string ` type:"string" required:"true" `
}
// String returns the string representation
func ( s GetServiceInput ) String ( ) string {
return awsutil . Prettify ( s )
}
// GoString returns the string representation
func ( s GetServiceInput ) GoString ( ) string {
return s . String ( )
}
// Validate inspects the fields of the type to determine if they are valid.
func ( s * GetServiceInput ) Validate ( ) error {
invalidParams := request . ErrInvalidParams { Context : "GetServiceInput" }
if s . Id == nil {
invalidParams . Add ( request . NewErrParamRequired ( "Id" ) )
}
if invalidParams . Len ( ) > 0 {
return invalidParams
}
return nil
}
// SetId sets the Id field's value.
func ( s * GetServiceInput ) SetId ( v string ) * GetServiceInput {
s . Id = & v
return s
}
type GetServiceOutput struct {
_ struct { } ` type:"structure" `
// A complex type that contains information about the service.
Service * Service ` type:"structure" `
}
// String returns the string representation
func ( s GetServiceOutput ) String ( ) string {
return awsutil . Prettify ( s )
}
// GoString returns the string representation
func ( s GetServiceOutput ) GoString ( ) string {
return s . String ( )
}
// SetService sets the Service field's value.
func ( s * GetServiceOutput ) SetService ( v * Service ) * GetServiceOutput {
s . Service = v
return s
}
// Public DNS namespaces only. A complex type that contains settings for an
// optional health check. If you specify settings for a health check, Amazon
2018-03-19 16:51:38 +01:00
// Route 53 associates the health check with all the records that you specify
// in DnsConfig.
//
// A and AAAA records
//
// If DnsConfig includes configurations for both A and AAAA records, Route 53
// creates a health check that uses the IPv4 address to check the health of
// the resource. If the endpoint that is specified by the IPv4 address is unhealthy,
// Route 53 considers both the A and AAAA records to be unhealthy.
//
// CNAME records
//
// You can't specify settings for HealthCheckConfig when the DNSConfig includes
// CNAME for the value of Type. If you do, the CreateService request will fail
// with an InvalidInput error.
//
// Request interval
2018-01-16 14:20:59 +01:00
//
// The health check uses 30 seconds as the request interval. This is the number
2018-03-19 16:51:38 +01:00
// of seconds between the time that each Route 53 health checker gets a response
// from your endpoint and the time that it sends the next health check request.
// A health checker in each data center around the world sends your endpoint
// a health check request every 30 seconds. On average, your endpoint receives
// a health check request about every two seconds. Health checkers in different
// data centers don't coordinate with one another, so you'll sometimes see several
// requests per second followed by a few seconds with no health checks at all.
//
// Health checking regions
//
// Health checkers perform checks from all Route 53 health-checking regions.
// For a list of the current regions, see Regions (http://docs.aws.amazon.com/Route53/latest/APIReference/API_HealthCheckConfig.html#Route53-Type-HealthCheckConfig-Regions).
//
// Alias records
//
// When you register an instance, if you include the AWS_ALIAS_DNS_NAME attribute,
// Route 53 creates an alias record. Note the following:
//
// * Route 53 automatically sets EvaluateTargetHealth to true for alias records.
// When EvaluateTargetHealth is true, the alias record inherits the health
// of the referenced AWS resource. such as an ELB load balancer. For more
// information, see EvaluateTargetHealth (http://docs.aws.amazon.com/Route53/latest/APIReference/API_AliasTarget.html#Route53-Type-AliasTarget-EvaluateTargetHealth).
//
// * If you include HealthCheckConfig and then use the service to register
// an instance that creates an alias record, Route 53 doesn't create the
// health check.
//
// For information about the charges for health checks, see Route 53 Pricing
// (http://aws.amazon.com/route53/pricing).
2018-01-16 14:20:59 +01:00
type HealthCheckConfig struct {
_ struct { } ` type:"structure" `
// The number of consecutive health checks that an endpoint must pass or fail
2018-03-19 16:51:38 +01:00
// for Route 53 to change the current status of the endpoint from unhealthy
// to healthy or vice versa. For more information, see How Route 53 Determines
2018-01-16 14:20:59 +01:00
// Whether an Endpoint Is Healthy (http://docs.aws.amazon.com/Route53/latest/DeveloperGuide/dns-failover-determining-health-of-endpoints.html)
2018-03-19 16:51:38 +01:00
// in the Route 53 Developer Guide.
2018-01-16 14:20:59 +01:00
FailureThreshold * int64 ` min:"1" type:"integer" `
2018-03-19 16:51:38 +01:00
// The path that you want Route 53 to request when performing health checks.
// The path can be any value for which your endpoint will return an HTTP status
// code of 2xx or 3xx when the endpoint is healthy, such as the file /docs/route53-health-check.html.
// Route 53 automatically adds the DNS name for the service and a leading forward
// slash (/) character.
2018-01-16 14:20:59 +01:00
ResourcePath * string ` type:"string" `
2018-03-19 16:51:38 +01:00
// The type of health check that you want to create, which indicates how Route
// 53 determines whether an endpoint is healthy.
2018-01-16 14:20:59 +01:00
//
// You can't change the value of Type after you create a health check.
//
// You can create the following types of health checks:
//
2018-03-19 16:51:38 +01:00
// * HTTP: Route 53 tries to establish a TCP connection. If successful, Route
// 53 submits an HTTP request and waits for an HTTP status code of 200 or
// greater and less than 400.
2018-01-16 14:20:59 +01:00
//
2018-03-19 16:51:38 +01:00
// * HTTPS: Route 53 tries to establish a TCP connection. If successful,
// Route 53 submits an HTTPS request and waits for an HTTP status code of
// 200 or greater and less than 400.
2018-01-16 14:20:59 +01:00
//
// If you specify HTTPS for the value of Type, the endpoint must support TLS
// v1.0 or later.
//
2018-03-19 16:51:38 +01:00
// * TCP: Route 53 tries to establish a TCP connection.
2018-01-16 14:20:59 +01:00
//
2018-03-19 16:51:38 +01:00
// For more information, see How Route 53 Determines Whether an Endpoint Is
// Healthy (http://docs.aws.amazon.com/Route53/latest/DeveloperGuide/dns-failover-determining-health-of-endpoints.html)
// in the Route 53 Developer Guide.
2018-01-16 14:20:59 +01:00
Type * string ` type:"string" enum:"HealthCheckType" `
}
// String returns the string representation
func ( s HealthCheckConfig ) String ( ) string {
return awsutil . Prettify ( s )
}
// GoString returns the string representation
func ( s HealthCheckConfig ) GoString ( ) string {
return s . String ( )
}
// Validate inspects the fields of the type to determine if they are valid.
func ( s * HealthCheckConfig ) Validate ( ) error {
invalidParams := request . ErrInvalidParams { Context : "HealthCheckConfig" }
if s . FailureThreshold != nil && * s . FailureThreshold < 1 {
invalidParams . Add ( request . NewErrParamMinValue ( "FailureThreshold" , 1 ) )
}
if invalidParams . Len ( ) > 0 {
return invalidParams
}
return nil
}
// SetFailureThreshold sets the FailureThreshold field's value.
func ( s * HealthCheckConfig ) SetFailureThreshold ( v int64 ) * HealthCheckConfig {
s . FailureThreshold = & v
return s
}
// SetResourcePath sets the ResourcePath field's value.
func ( s * HealthCheckConfig ) SetResourcePath ( v string ) * HealthCheckConfig {
s . ResourcePath = & v
return s
}
// SetType sets the Type field's value.
func ( s * HealthCheckConfig ) SetType ( v string ) * HealthCheckConfig {
s . Type = & v
return s
}
2018-03-19 16:51:38 +01:00
type HealthCheckCustomConfig struct {
_ struct { } ` type:"structure" `
FailureThreshold * int64 ` min:"1" type:"integer" `
}
// String returns the string representation
func ( s HealthCheckCustomConfig ) String ( ) string {
return awsutil . Prettify ( s )
}
// GoString returns the string representation
func ( s HealthCheckCustomConfig ) GoString ( ) string {
return s . String ( )
}
// Validate inspects the fields of the type to determine if they are valid.
func ( s * HealthCheckCustomConfig ) Validate ( ) error {
invalidParams := request . ErrInvalidParams { Context : "HealthCheckCustomConfig" }
if s . FailureThreshold != nil && * s . FailureThreshold < 1 {
invalidParams . Add ( request . NewErrParamMinValue ( "FailureThreshold" , 1 ) )
}
if invalidParams . Len ( ) > 0 {
return invalidParams
}
return nil
}
// SetFailureThreshold sets the FailureThreshold field's value.
func ( s * HealthCheckCustomConfig ) SetFailureThreshold ( v int64 ) * HealthCheckCustomConfig {
s . FailureThreshold = & v
return s
}
2018-01-16 14:20:59 +01:00
// A complex type that contains information about an instance that Amazon Route
// 53 creates when you submit a RegisterInstance request.
type Instance struct {
_ struct { } ` type:"structure" `
2018-03-19 16:51:38 +01:00
// A string map that contains the following information for the service that
// you specify in ServiceId:
//
// * The attributes that apply to the records that are defined in the service.
//
//
// * For each attribute, the applicable value.
//
// Supported attribute keys include the following:
//
// AWS_ALIAS_DNS_NAME
//
// If you want Route 53 to create an alias record that routes traffic to an
// Elastic Load Balancing load balancer, specify the DNS name that is associated
// with the load balancer. For information about how to get the DNS name, see
// "DNSName" in the topic AliasTarget (http://docs.aws.amazon.com/http:/docs.aws.amazon.com/Route53/latest/APIReference/API_AliasTarget.html).
//
// Note the following:
//
// The configuration for the service that is specified by ServiceId must include
// settings for an A record, an AAAA record, or both.
//
// * In the service that is specified by ServiceId, the value of RoutingPolicy
// must be WEIGHTED.
//
// * If the service that is specified by ServiceId includes HealthCheckConfig
// settings, Route 53 will create the health check, but it won't associate
// the health check with the alias record.
//
// * Auto naming currently doesn't support creating alias records that route
// traffic to AWS resources other than ELB load balancers.
//
// * If you specify a value for AWS_ALIAS_DNS_NAME, don't specify values
// for any of the AWS_INSTANCE attributes.
//
// AWS_INSTANCE_CNAME
//
// If the service configuration includes a CNAME record, the domain name that
// you want Route 53 to return in response to DNS queries, for example, example.com.
2018-01-16 14:20:59 +01:00
//
2018-03-19 16:51:38 +01:00
// This value is required if the service specified by ServiceIdincludes settings for an CNAME record.
2018-01-16 14:20:59 +01:00
//
2018-03-19 16:51:38 +01:00
// AWS_INSTANCE_IPV4
2018-01-16 14:20:59 +01:00
//
2018-03-19 16:51:38 +01:00
// If the service configuration includes an A record, the IPv4 address that
// you want Route 53 to return in response to DNS queries, for example, 192.0.2.44.
2018-01-16 14:20:59 +01:00
//
2018-03-19 16:51:38 +01:00
// This value is required if the service specified by ServiceIdincludes settings for an A record. If the service includes settings for an
// SRV record, you must specify a value for AWS_INSTANCE_IPV4, AWS_INSTANCE_IPV6, or both.
//
// AWS_INSTANCE_IPV6
//
// If the service configuration includes an AAAA record, the IPv6 address that
// you want Route 53 to return in response to DNS queries, for example, 2001:0db8:85a3:0000:0000:abcd:0001:2345.
//
// This value is required if the service specified by ServiceIdincludes settings for an AAAA record. If the service includes settings for
// an SRV record, you must specify a value for AWS_INSTANCE_IPV4, AWS_INSTANCE_IPV6, or both.
//
// AWS_INSTANCE_PORT
//
// If the service includes an SRV record, the value that you want Route 53 to
// return for the port.
//
// If the service includes HealthCheckConfig
2018-01-16 14:20:59 +01:00
Attributes map [ string ] * string ` type:"map" `
2018-03-19 16:51:38 +01:00
// A unique string that identifies the request and that allows failed RegisterInstance
// requests to be retried without the risk of executing the operation twice.
// You must use a unique CreatorRequestId string every time you submit a RegisterInstance
// request if you're registering additional instances for the same namespace
// and service. CreatorRequestId can be any unique string, for example, a date/time
// stamp.
2018-01-16 14:20:59 +01:00
CreatorRequestId * string ` type:"string" `
// An identifier that you want to associate with the instance. Note the following:
//
2018-03-19 16:51:38 +01:00
// * If the service that is specified by ServiceId includes settings for
// an SRV record, the value of InstanceId is automatically included as part
// of the value for the SRV record. For more information, see DnsRecord$Type.
//
2018-01-16 14:20:59 +01:00
// * You can use this value to update an existing instance.
//
2018-03-19 16:51:38 +01:00
// * To register a new instance, you must specify a value that is unique
// among instances that you register by using the same service.
//
// * If you specify an existing InstanceId and ServiceId, Route 53 updates
// the existing records. If there's also an existing health check, Route
// 53 deletes the old health check and creates a new one.
//
// The health check isn't deleted immediately, so it will still appear for a
// while if you submit a ListHealthChecks request, for example.
2018-01-16 14:20:59 +01:00
//
// Id is a required field
Id * string ` type:"string" required:"true" `
}
// String returns the string representation
func ( s Instance ) String ( ) string {
return awsutil . Prettify ( s )
}
// GoString returns the string representation
func ( s Instance ) GoString ( ) string {
return s . String ( )
}
// SetAttributes sets the Attributes field's value.
func ( s * Instance ) SetAttributes ( v map [ string ] * string ) * Instance {
s . Attributes = v
return s
}
// SetCreatorRequestId sets the CreatorRequestId field's value.
func ( s * Instance ) SetCreatorRequestId ( v string ) * Instance {
s . CreatorRequestId = & v
return s
}
// SetId sets the Id field's value.
func ( s * Instance ) SetId ( v string ) * Instance {
s . Id = & v
return s
}
2018-03-19 16:51:38 +01:00
// A complex type that contains information about the instances that you registered
2018-01-16 14:20:59 +01:00
// by using a specified service.
type InstanceSummary struct {
_ struct { } ` type:"structure" `
2018-03-19 16:51:38 +01:00
// A string map that contains the following information:
2018-01-16 14:20:59 +01:00
//
2018-03-19 16:51:38 +01:00
// * The attributes that are associate with the instance.
2018-01-16 14:20:59 +01:00
//
2018-03-19 16:51:38 +01:00
// * For each attribute, the applicable value.
//
// Supported attribute keys include the following:
//
// * AWS_ALIAS_DNS_NAME: For an alias record that routes traffic to an Elastic
// Load Balancing load balancer, the DNS name that is associated with the
// load balancer.
//
// * AWS_INSTANCE_CNAME: For a CNAME record, the domain name that Route 53
// returns in response to DNS queries, for example, example.com.
//
// * AWS_INSTANCE_IPV4: For an A record, the IPv4 address that Route 53 returns
// in response to DNS queries, for example, 192.0.2.44.
//
// * AWS_INSTANCE_IPV6: For an AAAA record, the IPv6 address that Route 53
// returns in response to DNS queries, for example, 2001:0db8:85a3:0000:0000:abcd:0001:2345.
//
// * AWS_INSTANCE_PORT: For an SRV record, the value that Route 53 returns
// for the port. In addition, if the service includes HealthCheckConfig,
// the port on the endpoint that Route 53 sends requests to.
2018-01-16 14:20:59 +01:00
Attributes map [ string ] * string ` type:"map" `
// The ID for an instance that you created by using a specified service.
Id * string ` type:"string" `
}
// String returns the string representation
func ( s InstanceSummary ) String ( ) string {
return awsutil . Prettify ( s )
}
// GoString returns the string representation
func ( s InstanceSummary ) GoString ( ) string {
return s . String ( )
}
// SetAttributes sets the Attributes field's value.
func ( s * InstanceSummary ) SetAttributes ( v map [ string ] * string ) * InstanceSummary {
s . Attributes = v
return s
}
// SetId sets the Id field's value.
func ( s * InstanceSummary ) SetId ( v string ) * InstanceSummary {
s . Id = & v
return s
}
type ListInstancesInput struct {
_ struct { } ` type:"structure" `
// The maximum number of instances that you want Amazon Route 53 to return in
// the response to a ListInstances request. If you don't specify a value for
2018-03-19 16:51:38 +01:00
// MaxResults, Route 53 returns up to 100 instances.
2018-01-16 14:20:59 +01:00
MaxResults * int64 ` min:"1" type:"integer" `
// For the first ListInstances request, omit this value.
//
// If more than MaxResults instances match the specified criteria, you can submit
// another ListInstances request to get the next group of results. Specify the
// value of NextToken from the previous response in the next request.
NextToken * string ` type:"string" `
// The ID of the service that you want to list instances for.
//
// ServiceId is a required field
ServiceId * string ` type:"string" required:"true" `
}
// String returns the string representation
func ( s ListInstancesInput ) String ( ) string {
return awsutil . Prettify ( s )
}
// GoString returns the string representation
func ( s ListInstancesInput ) GoString ( ) string {
return s . String ( )
}
// Validate inspects the fields of the type to determine if they are valid.
func ( s * ListInstancesInput ) Validate ( ) error {
invalidParams := request . ErrInvalidParams { Context : "ListInstancesInput" }
if s . MaxResults != nil && * s . MaxResults < 1 {
invalidParams . Add ( request . NewErrParamMinValue ( "MaxResults" , 1 ) )
}
if s . ServiceId == nil {
invalidParams . Add ( request . NewErrParamRequired ( "ServiceId" ) )
}
if invalidParams . Len ( ) > 0 {
return invalidParams
}
return nil
}
// SetMaxResults sets the MaxResults field's value.
func ( s * ListInstancesInput ) SetMaxResults ( v int64 ) * ListInstancesInput {
s . MaxResults = & v
return s
}
// SetNextToken sets the NextToken field's value.
func ( s * ListInstancesInput ) SetNextToken ( v string ) * ListInstancesInput {
s . NextToken = & v
return s
}
// SetServiceId sets the ServiceId field's value.
func ( s * ListInstancesInput ) SetServiceId ( v string ) * ListInstancesInput {
s . ServiceId = & v
return s
}
type ListInstancesOutput struct {
_ struct { } ` type:"structure" `
// Summary information about the instances that are associated with the specified
// service.
Instances [ ] * InstanceSummary ` type:"list" `
// If more than MaxResults instances match the specified criteria, you can submit
// another ListInstances request to get the next group of results. Specify the
// value of NextToken from the previous response in the next request.
NextToken * string ` type:"string" `
}
// String returns the string representation
func ( s ListInstancesOutput ) String ( ) string {
return awsutil . Prettify ( s )
}
// GoString returns the string representation
func ( s ListInstancesOutput ) GoString ( ) string {
return s . String ( )
}
// SetInstances sets the Instances field's value.
func ( s * ListInstancesOutput ) SetInstances ( v [ ] * InstanceSummary ) * ListInstancesOutput {
s . Instances = v
return s
}
// SetNextToken sets the NextToken field's value.
func ( s * ListInstancesOutput ) SetNextToken ( v string ) * ListInstancesOutput {
s . NextToken = & v
return s
}
type ListNamespacesInput struct {
_ struct { } ` type:"structure" `
// A complex type that contains specifications for the namespaces that you want
// to list.
//
2018-03-19 16:51:38 +01:00
// If you specify more than one filter, a namespace must match all filters to
// be returned by ListNamespaces.
2018-01-16 14:20:59 +01:00
Filters [ ] * NamespaceFilter ` type:"list" `
// The maximum number of namespaces that you want Amazon Route 53 to return
// in the response to a ListNamespaces request. If you don't specify a value
2018-03-19 16:51:38 +01:00
// for MaxResults, Route 53 returns up to 100 namespaces.
2018-01-16 14:20:59 +01:00
MaxResults * int64 ` min:"1" type:"integer" `
// For the first ListNamespaces request, omit this value.
//
2018-03-19 16:51:38 +01:00
// If the response contains NextToken, submit another ListNamespaces request
// to get the next group of results. Specify the value of NextToken from the
// previous response in the next request.
//
// Route 53 gets MaxResults namespaces and then filters them based on the specified
// criteria. It's possible that no namespaces in the first MaxResults namespaces
// matched the specified criteria but that subsequent groups of MaxResults namespaces
// do contain namespaces that match the criteria.
2018-01-16 14:20:59 +01:00
NextToken * string ` type:"string" `
}
// String returns the string representation
func ( s ListNamespacesInput ) String ( ) string {
return awsutil . Prettify ( s )
}
// GoString returns the string representation
func ( s ListNamespacesInput ) GoString ( ) string {
return s . String ( )
}
// Validate inspects the fields of the type to determine if they are valid.
func ( s * ListNamespacesInput ) Validate ( ) error {
invalidParams := request . ErrInvalidParams { Context : "ListNamespacesInput" }
if s . MaxResults != nil && * s . MaxResults < 1 {
invalidParams . Add ( request . NewErrParamMinValue ( "MaxResults" , 1 ) )
}
if s . Filters != nil {
for i , v := range s . Filters {
if v == nil {
continue
}
if err := v . Validate ( ) ; err != nil {
invalidParams . AddNested ( fmt . Sprintf ( "%s[%v]" , "Filters" , i ) , err . ( request . ErrInvalidParams ) )
}
}
}
if invalidParams . Len ( ) > 0 {
return invalidParams
}
return nil
}
// SetFilters sets the Filters field's value.
func ( s * ListNamespacesInput ) SetFilters ( v [ ] * NamespaceFilter ) * ListNamespacesInput {
s . Filters = v
return s
}
// SetMaxResults sets the MaxResults field's value.
func ( s * ListNamespacesInput ) SetMaxResults ( v int64 ) * ListNamespacesInput {
s . MaxResults = & v
return s
}
// SetNextToken sets the NextToken field's value.
func ( s * ListNamespacesInput ) SetNextToken ( v string ) * ListNamespacesInput {
s . NextToken = & v
return s
}
type ListNamespacesOutput struct {
_ struct { } ` type:"structure" `
// An array that contains one NamespaceSummary object for each namespace that
// matches the specified filter criteria.
Namespaces [ ] * NamespaceSummary ` type:"list" `
2018-03-19 16:51:38 +01:00
// If the response contains NextToken, submit another ListNamespaces request
// to get the next group of results. Specify the value of NextToken from the
// previous response in the next request.
//
// Route 53 gets MaxResults namespaces and then filters them based on the specified
// criteria. It's possible that no namespaces in the first MaxResults namespaces
// matched the specified criteria but that subsequent groups of MaxResults namespaces
// do contain namespaces that match the criteria.
2018-01-16 14:20:59 +01:00
NextToken * string ` type:"string" `
}
// String returns the string representation
func ( s ListNamespacesOutput ) String ( ) string {
return awsutil . Prettify ( s )
}
// GoString returns the string representation
func ( s ListNamespacesOutput ) GoString ( ) string {
return s . String ( )
}
// SetNamespaces sets the Namespaces field's value.
func ( s * ListNamespacesOutput ) SetNamespaces ( v [ ] * NamespaceSummary ) * ListNamespacesOutput {
s . Namespaces = v
return s
}
// SetNextToken sets the NextToken field's value.
func ( s * ListNamespacesOutput ) SetNextToken ( v string ) * ListNamespacesOutput {
s . NextToken = & v
return s
}
type ListOperationsInput struct {
_ struct { } ` type:"structure" `
// A complex type that contains specifications for the operations that you want
// to list, for example, operations that you started between a specified start
// date and end date.
//
// If you specify more than one filter, an operation must match all filters
// to be returned by ListOperations.
Filters [ ] * OperationFilter ` type:"list" `
// The maximum number of items that you want Amazon Route 53 to return in the
// response to a ListOperations request. If you don't specify a value for MaxResults,
2018-03-19 16:51:38 +01:00
// Route 53 returns up to 100 operations.
2018-01-16 14:20:59 +01:00
MaxResults * int64 ` min:"1" type:"integer" `
// For the first ListOperations request, omit this value.
//
2018-03-19 16:51:38 +01:00
// If the response contains NextToken, submit another ListOperations request
// to get the next group of results. Specify the value of NextToken from the
// previous response in the next request.
//
// Route 53 gets MaxResults operations and then filters them based on the specified
// criteria. It's possible that no operations in the first MaxResults operations
// matched the specified criteria but that subsequent groups of MaxResults operations
// do contain operations that match the criteria.
2018-01-16 14:20:59 +01:00
NextToken * string ` type:"string" `
}
// String returns the string representation
func ( s ListOperationsInput ) String ( ) string {
return awsutil . Prettify ( s )
}
// GoString returns the string representation
func ( s ListOperationsInput ) GoString ( ) string {
return s . String ( )
}
// Validate inspects the fields of the type to determine if they are valid.
func ( s * ListOperationsInput ) Validate ( ) error {
invalidParams := request . ErrInvalidParams { Context : "ListOperationsInput" }
if s . MaxResults != nil && * s . MaxResults < 1 {
invalidParams . Add ( request . NewErrParamMinValue ( "MaxResults" , 1 ) )
}
if s . Filters != nil {
for i , v := range s . Filters {
if v == nil {
continue
}
if err := v . Validate ( ) ; err != nil {
invalidParams . AddNested ( fmt . Sprintf ( "%s[%v]" , "Filters" , i ) , err . ( request . ErrInvalidParams ) )
}
}
}
if invalidParams . Len ( ) > 0 {
return invalidParams
}
return nil
}
// SetFilters sets the Filters field's value.
func ( s * ListOperationsInput ) SetFilters ( v [ ] * OperationFilter ) * ListOperationsInput {
s . Filters = v
return s
}
// SetMaxResults sets the MaxResults field's value.
func ( s * ListOperationsInput ) SetMaxResults ( v int64 ) * ListOperationsInput {
s . MaxResults = & v
return s
}
// SetNextToken sets the NextToken field's value.
func ( s * ListOperationsInput ) SetNextToken ( v string ) * ListOperationsInput {
s . NextToken = & v
return s
}
type ListOperationsOutput struct {
_ struct { } ` type:"structure" `
2018-03-19 16:51:38 +01:00
// If the response contains NextToken, submit another ListOperations request
// to get the next group of results. Specify the value of NextToken from the
// previous response in the next request.
//
// Route 53 gets MaxResults operations and then filters them based on the specified
// criteria. It's possible that no operations in the first MaxResults operations
// matched the specified criteria but that subsequent groups of MaxResults operations
// do contain operations that match the criteria.
2018-01-16 14:20:59 +01:00
NextToken * string ` type:"string" `
// Summary information about the operations that match the specified criteria.
Operations [ ] * OperationSummary ` type:"list" `
}
// String returns the string representation
func ( s ListOperationsOutput ) String ( ) string {
return awsutil . Prettify ( s )
}
// GoString returns the string representation
func ( s ListOperationsOutput ) GoString ( ) string {
return s . String ( )
}
// SetNextToken sets the NextToken field's value.
func ( s * ListOperationsOutput ) SetNextToken ( v string ) * ListOperationsOutput {
s . NextToken = & v
return s
}
// SetOperations sets the Operations field's value.
func ( s * ListOperationsOutput ) SetOperations ( v [ ] * OperationSummary ) * ListOperationsOutput {
s . Operations = v
return s
}
type ListServicesInput struct {
_ struct { } ` type:"structure" `
// A complex type that contains specifications for the namespaces that you want
// to list services for.
//
// If you specify more than one filter, an operation must match all filters
// to be returned by ListServices.
Filters [ ] * ServiceFilter ` type:"list" `
// The maximum number of services that you want Amazon Route 53 to return in
// the response to a ListServices request. If you don't specify a value for
2018-03-19 16:51:38 +01:00
// MaxResults, Route 53 returns up to 100 services.
2018-01-16 14:20:59 +01:00
MaxResults * int64 ` min:"1" type:"integer" `
// For the first ListServices request, omit this value.
//
2018-03-19 16:51:38 +01:00
// If the response contains NextToken, submit another ListServices request to
// get the next group of results. Specify the value of NextToken from the previous
// response in the next request.
//
// Route 53 gets MaxResults services and then filters them based on the specified
// criteria. It's possible that no services in the first MaxResults services
// matched the specified criteria but that subsequent groups of MaxResults services
// do contain services that match the criteria.
2018-01-16 14:20:59 +01:00
NextToken * string ` type:"string" `
}
// String returns the string representation
func ( s ListServicesInput ) String ( ) string {
return awsutil . Prettify ( s )
}
// GoString returns the string representation
func ( s ListServicesInput ) GoString ( ) string {
return s . String ( )
}
// Validate inspects the fields of the type to determine if they are valid.
func ( s * ListServicesInput ) Validate ( ) error {
invalidParams := request . ErrInvalidParams { Context : "ListServicesInput" }
if s . MaxResults != nil && * s . MaxResults < 1 {
invalidParams . Add ( request . NewErrParamMinValue ( "MaxResults" , 1 ) )
}
if s . Filters != nil {
for i , v := range s . Filters {
if v == nil {
continue
}
if err := v . Validate ( ) ; err != nil {
invalidParams . AddNested ( fmt . Sprintf ( "%s[%v]" , "Filters" , i ) , err . ( request . ErrInvalidParams ) )
}
}
}
if invalidParams . Len ( ) > 0 {
return invalidParams
}
return nil
}
// SetFilters sets the Filters field's value.
func ( s * ListServicesInput ) SetFilters ( v [ ] * ServiceFilter ) * ListServicesInput {
s . Filters = v
return s
}
// SetMaxResults sets the MaxResults field's value.
func ( s * ListServicesInput ) SetMaxResults ( v int64 ) * ListServicesInput {
s . MaxResults = & v
return s
}
// SetNextToken sets the NextToken field's value.
func ( s * ListServicesInput ) SetNextToken ( v string ) * ListServicesInput {
s . NextToken = & v
return s
}
type ListServicesOutput struct {
_ struct { } ` type:"structure" `
2018-03-19 16:51:38 +01:00
// If the response contains NextToken, submit another ListServices request to
// get the next group of results. Specify the value of NextToken from the previous
// response in the next request.
//
// Route 53 gets MaxResults services and then filters them based on the specified
// criteria. It's possible that no services in the first MaxResults services
// matched the specified criteria but that subsequent groups of MaxResults services
// do contain services that match the criteria.
2018-01-16 14:20:59 +01:00
NextToken * string ` type:"string" `
// An array that contains one ServiceSummary object for each service that matches
// the specified filter criteria.
Services [ ] * ServiceSummary ` type:"list" `
}
// String returns the string representation
func ( s ListServicesOutput ) String ( ) string {
return awsutil . Prettify ( s )
}
// GoString returns the string representation
func ( s ListServicesOutput ) GoString ( ) string {
return s . String ( )
}
// SetNextToken sets the NextToken field's value.
func ( s * ListServicesOutput ) SetNextToken ( v string ) * ListServicesOutput {
s . NextToken = & v
return s
}
// SetServices sets the Services field's value.
func ( s * ListServicesOutput ) SetServices ( v [ ] * ServiceSummary ) * ListServicesOutput {
s . Services = v
return s
}
// A complex type that contains information about a specified namespace.
type Namespace struct {
_ struct { } ` type:"structure" `
2018-03-19 16:51:38 +01:00
// The Amazon Resource Name (ARN) that Route 53 assigns to the namespace when
// you create it.
2018-01-16 14:20:59 +01:00
Arn * string ` type:"string" `
// The date that the namespace was created, in Unix date/time format and Coordinated
2018-03-19 16:51:38 +01:00
// Universal Time (UTC). The value of CreateDate is accurate to milliseconds.
// For example, the value 1516925490.087 represents Friday, January 26, 2018
// 12:11:30.087 AM.
2018-01-16 14:20:59 +01:00
CreateDate * time . Time ` type:"timestamp" timestampFormat:"unix" `
2018-03-19 16:51:38 +01:00
// A unique string that identifies the request and that allows failed requests
// to be retried without the risk of executing an operation twice.
2018-01-16 14:20:59 +01:00
CreatorRequestId * string ` type:"string" `
// The description that you specify for the namespace when you create it.
Description * string ` type:"string" `
// The ID of a namespace.
Id * string ` type:"string" `
// The name of the namespace, such as example.com.
Name * string ` type:"string" `
// A complex type that contains information that's specific to the type of the
// namespace.
Properties * NamespaceProperties ` type:"structure" `
// The number of services that are associated with the namespace.
ServiceCount * int64 ` type:"integer" `
// The type of the namespace. Valid values are DNS_PUBLIC and DNS_PRIVATE.
Type * string ` type:"string" enum:"NamespaceType" `
}
// String returns the string representation
func ( s Namespace ) String ( ) string {
return awsutil . Prettify ( s )
}
// GoString returns the string representation
func ( s Namespace ) GoString ( ) string {
return s . String ( )
}
// SetArn sets the Arn field's value.
func ( s * Namespace ) SetArn ( v string ) * Namespace {
s . Arn = & v
return s
}
// SetCreateDate sets the CreateDate field's value.
func ( s * Namespace ) SetCreateDate ( v time . Time ) * Namespace {
s . CreateDate = & v
return s
}
// SetCreatorRequestId sets the CreatorRequestId field's value.
func ( s * Namespace ) SetCreatorRequestId ( v string ) * Namespace {
s . CreatorRequestId = & v
return s
}
// SetDescription sets the Description field's value.
func ( s * Namespace ) SetDescription ( v string ) * Namespace {
s . Description = & v
return s
}
// SetId sets the Id field's value.
func ( s * Namespace ) SetId ( v string ) * Namespace {
s . Id = & v
return s
}
// SetName sets the Name field's value.
func ( s * Namespace ) SetName ( v string ) * Namespace {
s . Name = & v
return s
}
// SetProperties sets the Properties field's value.
func ( s * Namespace ) SetProperties ( v * NamespaceProperties ) * Namespace {
s . Properties = v
return s
}
// SetServiceCount sets the ServiceCount field's value.
func ( s * Namespace ) SetServiceCount ( v int64 ) * Namespace {
s . ServiceCount = & v
return s
}
// SetType sets the Type field's value.
func ( s * Namespace ) SetType ( v string ) * Namespace {
s . Type = & v
return s
}
// A complex type that identifies the namespaces that you want to list. You
// can choose to list public or private namespaces.
type NamespaceFilter struct {
_ struct { } ` type:"structure" `
// The operator that you want to use to determine whether ListNamespaces returns
// a namespace. Valid values for condition include:
//
// * EQ: When you specify EQ for the condition, you can choose to list only
// public namespaces or private namespaces, but not both. EQ is the default
// condition and can be omitted.
//
// * IN: When you specify IN for the condition, you can choose to list public
// namespaces, private namespaces, or both.
2018-03-19 16:51:38 +01:00
//
// * BETWEEN: Not applicable
2018-01-16 14:20:59 +01:00
Condition * string ` type:"string" enum:"FilterCondition" `
// Specify TYPE.
//
// Name is a required field
Name * string ` type:"string" required:"true" enum:"NamespaceFilterName" `
// If you specify EQ for Condition, specify either DNS_PUBLIC or DNS_PRIVATE.
//
// If you specify IN for Condition, you can specify DNS_PUBLIC, DNS_PRIVATE,
// or both.
//
// Values is a required field
Values [ ] * string ` type:"list" required:"true" `
}
// String returns the string representation
func ( s NamespaceFilter ) String ( ) string {
return awsutil . Prettify ( s )
}
// GoString returns the string representation
func ( s NamespaceFilter ) GoString ( ) string {
return s . String ( )
}
// Validate inspects the fields of the type to determine if they are valid.
func ( s * NamespaceFilter ) Validate ( ) error {
invalidParams := request . ErrInvalidParams { Context : "NamespaceFilter" }
if s . Name == nil {
invalidParams . Add ( request . NewErrParamRequired ( "Name" ) )
}
if s . Values == nil {
invalidParams . Add ( request . NewErrParamRequired ( "Values" ) )
}
if invalidParams . Len ( ) > 0 {
return invalidParams
}
return nil
}
// SetCondition sets the Condition field's value.
func ( s * NamespaceFilter ) SetCondition ( v string ) * NamespaceFilter {
s . Condition = & v
return s
}
// SetName sets the Name field's value.
func ( s * NamespaceFilter ) SetName ( v string ) * NamespaceFilter {
s . Name = & v
return s
}
// SetValues sets the Values field's value.
func ( s * NamespaceFilter ) SetValues ( v [ ] * string ) * NamespaceFilter {
s . Values = v
return s
}
// A complex type that contains information that is specific to the namespace
// type.
type NamespaceProperties struct {
_ struct { } ` type:"structure" `
2018-03-19 16:51:38 +01:00
// A complex type that contains the ID for the hosted zone that Route 53 creates
// when you create a namespace.
2018-01-16 14:20:59 +01:00
DnsProperties * DnsProperties ` type:"structure" `
}
// String returns the string representation
func ( s NamespaceProperties ) String ( ) string {
return awsutil . Prettify ( s )
}
// GoString returns the string representation
func ( s NamespaceProperties ) GoString ( ) string {
return s . String ( )
}
// SetDnsProperties sets the DnsProperties field's value.
func ( s * NamespaceProperties ) SetDnsProperties ( v * DnsProperties ) * NamespaceProperties {
s . DnsProperties = v
return s
}
// A complex type that contains information about a namespace.
type NamespaceSummary struct {
_ struct { } ` type:"structure" `
2018-03-19 16:51:38 +01:00
// The Amazon Resource Name (ARN) that Route 53 assigns to the namespace when
// you create it.
2018-01-16 14:20:59 +01:00
Arn * string ` type:"string" `
// The ID of the namespace.
Id * string ` type:"string" `
2018-03-19 16:51:38 +01:00
// The name of the namespace. When you create a namespace, Route 53 automatically
2018-01-16 14:20:59 +01:00
// creates a hosted zone that has the same name as the namespace.
Name * string ` type:"string" `
// The type of the namespace, either public or private.
Type * string ` type:"string" enum:"NamespaceType" `
}
// String returns the string representation
func ( s NamespaceSummary ) String ( ) string {
return awsutil . Prettify ( s )
}
// GoString returns the string representation
func ( s NamespaceSummary ) GoString ( ) string {
return s . String ( )
}
// SetArn sets the Arn field's value.
func ( s * NamespaceSummary ) SetArn ( v string ) * NamespaceSummary {
s . Arn = & v
return s
}
// SetId sets the Id field's value.
func ( s * NamespaceSummary ) SetId ( v string ) * NamespaceSummary {
s . Id = & v
return s
}
// SetName sets the Name field's value.
func ( s * NamespaceSummary ) SetName ( v string ) * NamespaceSummary {
s . Name = & v
return s
}
// SetType sets the Type field's value.
func ( s * NamespaceSummary ) SetType ( v string ) * NamespaceSummary {
s . Type = & v
return s
}
// A complex type that contains information about a specified operation.
type Operation struct {
_ struct { } ` type:"structure" `
// The date and time that the request was submitted, in Unix date/time format
2018-03-19 16:51:38 +01:00
// and Coordinated Universal Time (UTC). The value of CreateDate is accurate
// to milliseconds. For example, the value 1516925490.087 represents Friday,
// January 26, 2018 12:11:30.087 AM.
2018-01-16 14:20:59 +01:00
CreateDate * time . Time ` type:"timestamp" timestampFormat:"unix" `
2018-03-19 16:51:38 +01:00
// The code associated with ErrorMessage. Values for ErrorCode include the following:
//
// * ACCESS_DENIED
//
// * CANNOT_CREATE_HOSTED_ZONE
//
// * EXPIRED_TOKEN
//
// * HOSTED_ZONE_NOT_FOUND
//
// * INTERNAL_FAILURE
//
// * INVALID_CHANGE_BATCH
//
// * THROTTLED_REQUEST
2018-01-16 14:20:59 +01:00
ErrorCode * string ` type:"string" `
// If the value of Status is FAIL, the reason that the operation failed.
ErrorMessage * string ` type:"string" `
// The ID of the operation that you want to get information about.
Id * string ` type:"string" `
// The status of the operation. Values include the following:
//
// * SUBMITTED: This is the initial state immediately after you submit a
// request.
//
2018-03-19 16:51:38 +01:00
// * PENDING: Route 53 is performing the operation.
2018-01-16 14:20:59 +01:00
//
// * SUCCESS: The operation succeeded.
//
// * FAIL: The operation failed. For the failure reason, see ErrorMessage.
Status * string ` type:"string" enum:"OperationStatus" `
// The name of the target entity that is associated with the operation:
//
// * NAMESPACE: The namespace ID is returned in the ResourceId property.
//
// * SERVICE: The service ID is returned in the ResourceId property.
//
// * INSTANCE: The instance ID is returned in the ResourceId property.
Targets map [ string ] * string ` type:"map" `
// The name of the operation that is associated with the specified ID.
Type * string ` type:"string" enum:"OperationType" `
// The date and time that the value of Status changed to the current value,
2018-03-19 16:51:38 +01:00
// in Unix date/time format and Coordinated Universal Time (UTC). The value
// of UpdateDate is accurate to milliseconds. For example, the value 1516925490.087
// represents Friday, January 26, 2018 12:11:30.087 AM.
2018-01-16 14:20:59 +01:00
UpdateDate * time . Time ` type:"timestamp" timestampFormat:"unix" `
}
// String returns the string representation
func ( s Operation ) String ( ) string {
return awsutil . Prettify ( s )
}
// GoString returns the string representation
func ( s Operation ) GoString ( ) string {
return s . String ( )
}
// SetCreateDate sets the CreateDate field's value.
func ( s * Operation ) SetCreateDate ( v time . Time ) * Operation {
s . CreateDate = & v
return s
}
// SetErrorCode sets the ErrorCode field's value.
func ( s * Operation ) SetErrorCode ( v string ) * Operation {
s . ErrorCode = & v
return s
}
// SetErrorMessage sets the ErrorMessage field's value.
func ( s * Operation ) SetErrorMessage ( v string ) * Operation {
s . ErrorMessage = & v
return s
}
// SetId sets the Id field's value.
func ( s * Operation ) SetId ( v string ) * Operation {
s . Id = & v
return s
}
// SetStatus sets the Status field's value.
func ( s * Operation ) SetStatus ( v string ) * Operation {
s . Status = & v
return s
}
// SetTargets sets the Targets field's value.
func ( s * Operation ) SetTargets ( v map [ string ] * string ) * Operation {
s . Targets = v
return s
}
// SetType sets the Type field's value.
func ( s * Operation ) SetType ( v string ) * Operation {
s . Type = & v
return s
}
// SetUpdateDate sets the UpdateDate field's value.
func ( s * Operation ) SetUpdateDate ( v time . Time ) * Operation {
s . UpdateDate = & v
return s
}
// A complex type that lets you select the operations that you want to list.
type OperationFilter struct {
_ struct { } ` type:"structure" `
// The operator that you want to use to determine whether an operation matches
// the specified value. Valid values for condition include:
//
// * EQ: When you specify EQ for the condition, you can specify only one
// value. EQ is supported for NAMESPACE_ID, SERVICE_ID, STATUS, and TYPE.
// EQ is the default condition and can be omitted.
//
// * IN: When you specify IN for the condition, you can specify a list of
// one or more values. IN is supported for STATUS and TYPE. An operation
// must match one of the specified values to be returned in the response.
//
2018-03-19 16:51:38 +01:00
// * BETWEEN: Specify a start date and an end date in Unix date/time format
// and Coordinated Universal Time (UTC). The start date must be the first
// value. BETWEEN is supported for UPDATE_DATE.
2018-01-16 14:20:59 +01:00
Condition * string ` type:"string" enum:"FilterCondition" `
// Specify the operations that you want to get:
//
// * NAMESPACE_ID: Gets operations related to specified namespaces.
//
// * SERVICE_ID: Gets operations related to specified services.
//
// * STATUS: Gets operations based on the status of the operations: SUBMITTED,
// PENDING, SUCCEED, or FAIL.
//
// * TYPE: Gets specified types of operation.
//
// * UPDATE_DATE: Gets operations that changed status during a specified
// date/time range.
//
// Name is a required field
Name * string ` type:"string" required:"true" enum:"OperationFilterName" `
// Specify values that are applicable to the value that you specify for Name:
//
// * NAMESPACE_ID: Specify one namespace ID.
//
// * SERVICE_ID: Specify one service ID.
//
// * STATUS: Specify one or more statuses: SUBMITTED, PENDING, SUCCEED, or
// FAIL.
//
// * TYPE: Specify one or more of the following types: CREATE_NAMESPACE,
// DELETE_NAMESPACE, UPDATE_SERVICE, REGISTER_INSTANCE, or DEREGISTER_INSTANCE.
//
// * UPDATE_DATE: Specify a start date and an end date in Unix date/time
// format and Coordinated Universal Time (UTC). The start date must be the
// first value.
//
// Values is a required field
Values [ ] * string ` type:"list" required:"true" `
}
// String returns the string representation
func ( s OperationFilter ) String ( ) string {
return awsutil . Prettify ( s )
}
// GoString returns the string representation
func ( s OperationFilter ) GoString ( ) string {
return s . String ( )
}
// Validate inspects the fields of the type to determine if they are valid.
func ( s * OperationFilter ) Validate ( ) error {
invalidParams := request . ErrInvalidParams { Context : "OperationFilter" }
if s . Name == nil {
invalidParams . Add ( request . NewErrParamRequired ( "Name" ) )
}
if s . Values == nil {
invalidParams . Add ( request . NewErrParamRequired ( "Values" ) )
}
if invalidParams . Len ( ) > 0 {
return invalidParams
}
return nil
}
// SetCondition sets the Condition field's value.
func ( s * OperationFilter ) SetCondition ( v string ) * OperationFilter {
s . Condition = & v
return s
}
// SetName sets the Name field's value.
func ( s * OperationFilter ) SetName ( v string ) * OperationFilter {
s . Name = & v
return s
}
// SetValues sets the Values field's value.
func ( s * OperationFilter ) SetValues ( v [ ] * string ) * OperationFilter {
s . Values = v
return s
}
// A complex type that contains information about an operation that matches
// the criteria that you specified in a ListOperations request.
type OperationSummary struct {
_ struct { } ` type:"structure" `
// The ID for an operation.
Id * string ` type:"string" `
// The status of the operation. Values include the following:
//
// * SUBMITTED: This is the initial state immediately after you submit a
// request.
//
2018-03-19 16:51:38 +01:00
// * PENDING: Route 53 is performing the operation.
2018-01-16 14:20:59 +01:00
//
// * SUCCESS: The operation succeeded.
//
// * FAIL: The operation failed. For the failure reason, see ErrorMessage.
Status * string ` type:"string" enum:"OperationStatus" `
}
// String returns the string representation
func ( s OperationSummary ) String ( ) string {
return awsutil . Prettify ( s )
}
// GoString returns the string representation
func ( s OperationSummary ) GoString ( ) string {
return s . String ( )
}
// SetId sets the Id field's value.
func ( s * OperationSummary ) SetId ( v string ) * OperationSummary {
s . Id = & v
return s
}
// SetStatus sets the Status field's value.
func ( s * OperationSummary ) SetStatus ( v string ) * OperationSummary {
s . Status = & v
return s
}
type RegisterInstanceInput struct {
_ struct { } ` type:"structure" `
2018-03-19 16:51:38 +01:00
// A string map that contains the following information for the service that
// you specify in ServiceId:
//
// * The attributes that apply to the records that are defined in the service.
//
//
// * For each attribute, the applicable value.
//
// Supported attribute keys include the following:
//
// AWS_ALIAS_DNS_NAME
//
// If you want Route 53 to create an alias record that routes traffic to an
// Elastic Load Balancing load balancer, specify the DNS name that is associated
// with the load balancer. For information about how to get the DNS name, see
// "DNSName" in the topic AliasTarget (http://docs.aws.amazon.com/http:/docs.aws.amazon.com/Route53/latest/APIReference/API_AliasTarget.html).
//
// Note the following:
//
// The configuration for the service that is specified by ServiceId must include
// settings for an A record, an AAAA record, or both.
//
// * In the service that is specified by ServiceId, the value of RoutingPolicy
// must be WEIGHTED.
2018-01-16 14:20:59 +01:00
//
2018-03-19 16:51:38 +01:00
// * If the service that is specified by ServiceId includes HealthCheckConfig
// settings, Route 53 will create the health check, but it won't associate
// the health check with the alias record.
2018-01-16 14:20:59 +01:00
//
2018-03-19 16:51:38 +01:00
// * Auto naming currently doesn't support creating alias records that route
// traffic to AWS resources other than ELB load balancers.
2018-01-16 14:20:59 +01:00
//
2018-03-19 16:51:38 +01:00
// * If you specify a value for AWS_ALIAS_DNS_NAME, don't specify values
// for any of the AWS_INSTANCE attributes.
//
// AWS_INSTANCE_CNAME
//
// If the service configuration includes a CNAME record, the domain name that
// you want Route 53 to return in response to DNS queries, for example, example.com.
//
// This value is required if the service specified by ServiceIdincludes settings for an CNAME record.
//
// AWS_INSTANCE_IPV4
//
// If the service configuration includes an A record, the IPv4 address that
// you want Route 53 to return in response to DNS queries, for example, 192.0.2.44.
//
// This value is required if the service specified by ServiceIdincludes settings for an A record. If the service includes settings for an
// SRV record, you must specify a value for AWS_INSTANCE_IPV4, AWS_INSTANCE_IPV6, or both.
//
// AWS_INSTANCE_IPV6
//
// If the service configuration includes an AAAA record, the IPv6 address that
// you want Route 53 to return in response to DNS queries, for example, 2001:0db8:85a3:0000:0000:abcd:0001:2345.
//
// This value is required if the service specified by ServiceIdincludes settings for an AAAA record. If the service includes settings for
// an SRV record, you must specify a value for AWS_INSTANCE_IPV4, AWS_INSTANCE_IPV6, or both.
//
// AWS_INSTANCE_PORT
//
// If the service includes an SRV record, the value that you want Route 53 to
// return for the port.
//
// If the service includes HealthCheckConfig
2018-01-16 14:20:59 +01:00
//
// Attributes is a required field
Attributes map [ string ] * string ` type:"map" required:"true" `
2018-03-19 16:51:38 +01:00
// A unique string that identifies the request and that allows failed RegisterInstance
// requests to be retried without the risk of executing the operation twice.
// You must use a unique CreatorRequestId string every time you submit a RegisterInstance
// request if you're registering additional instances for the same namespace
// and service. CreatorRequestId can be any unique string, for example, a date/time
// stamp.
2018-01-16 14:20:59 +01:00
CreatorRequestId * string ` type:"string" idempotencyToken:"true" `
// An identifier that you want to associate with the instance. Note the following:
//
2018-03-19 16:51:38 +01:00
// * If the service that is specified by ServiceId includes settings for
// an SRV record, the value of InstanceId is automatically included as part
// of the value for the SRV record. For more information, see DnsRecord$Type.
//
2018-01-16 14:20:59 +01:00
// * You can use this value to update an existing instance.
//
// * To register a new instance, you must specify a value that is unique
// among instances that you register by using the same service.
//
2018-03-19 16:51:38 +01:00
// * If you specify an existing InstanceId and ServiceId, Route 53 updates
// the existing records. If there's also an existing health check, Route
// 53 deletes the old health check and creates a new one.
//
// The health check isn't deleted immediately, so it will still appear for a
// while if you submit a ListHealthChecks request, for example.
//
2018-01-16 14:20:59 +01:00
// InstanceId is a required field
InstanceId * string ` type:"string" required:"true" `
2018-03-19 16:51:38 +01:00
// The ID of the service that you want to use for settings for the records and
// health check that Route 53 will create.
2018-01-16 14:20:59 +01:00
//
// ServiceId is a required field
ServiceId * string ` type:"string" required:"true" `
}
// String returns the string representation
func ( s RegisterInstanceInput ) String ( ) string {
return awsutil . Prettify ( s )
}
// GoString returns the string representation
func ( s RegisterInstanceInput ) GoString ( ) string {
return s . String ( )
}
// Validate inspects the fields of the type to determine if they are valid.
func ( s * RegisterInstanceInput ) Validate ( ) error {
invalidParams := request . ErrInvalidParams { Context : "RegisterInstanceInput" }
if s . Attributes == nil {
invalidParams . Add ( request . NewErrParamRequired ( "Attributes" ) )
}
if s . InstanceId == nil {
invalidParams . Add ( request . NewErrParamRequired ( "InstanceId" ) )
}
if s . ServiceId == nil {
invalidParams . Add ( request . NewErrParamRequired ( "ServiceId" ) )
}
if invalidParams . Len ( ) > 0 {
return invalidParams
}
return nil
}
// SetAttributes sets the Attributes field's value.
func ( s * RegisterInstanceInput ) SetAttributes ( v map [ string ] * string ) * RegisterInstanceInput {
s . Attributes = v
return s
}
// SetCreatorRequestId sets the CreatorRequestId field's value.
func ( s * RegisterInstanceInput ) SetCreatorRequestId ( v string ) * RegisterInstanceInput {
s . CreatorRequestId = & v
return s
}
// SetInstanceId sets the InstanceId field's value.
func ( s * RegisterInstanceInput ) SetInstanceId ( v string ) * RegisterInstanceInput {
s . InstanceId = & v
return s
}
// SetServiceId sets the ServiceId field's value.
func ( s * RegisterInstanceInput ) SetServiceId ( v string ) * RegisterInstanceInput {
s . ServiceId = & v
return s
}
type RegisterInstanceOutput struct {
_ struct { } ` type:"structure" `
// A value that you can use to determine whether the request completed successfully.
// To get the status of the operation, see GetOperation.
OperationId * string ` type:"string" `
}
// String returns the string representation
func ( s RegisterInstanceOutput ) String ( ) string {
return awsutil . Prettify ( s )
}
// GoString returns the string representation
func ( s RegisterInstanceOutput ) GoString ( ) string {
return s . String ( )
}
// SetOperationId sets the OperationId field's value.
func ( s * RegisterInstanceOutput ) SetOperationId ( v string ) * RegisterInstanceOutput {
s . OperationId = & v
return s
}
// A complex type that contains information about the specified service.
type Service struct {
_ struct { } ` type:"structure" `
2018-03-19 16:51:38 +01:00
// The Amazon Resource Name (ARN) that Route 53 assigns to the service when
// you create it.
2018-01-16 14:20:59 +01:00
Arn * string ` type:"string" `
// The date and time that the service was created, in Unix format and Coordinated
2018-03-19 16:51:38 +01:00
// Universal Time (UTC). The value of CreateDate is accurate to milliseconds.
// For example, the value 1516925490.087 represents Friday, January 26, 2018
// 12:11:30.087 AM.
2018-01-16 14:20:59 +01:00
CreateDate * time . Time ` type:"timestamp" timestampFormat:"unix" `
2018-03-19 16:51:38 +01:00
// A unique string that identifies the request and that allows failed requests
// to be retried without the risk of executing the operation twice. CreatorRequestId
// can be any unique string, for example, a date/time stamp.
2018-01-16 14:20:59 +01:00
CreatorRequestId * string ` type:"string" `
// The description of the service.
Description * string ` type:"string" `
2018-03-19 16:51:38 +01:00
// A complex type that contains information about the records that you want
// Route 53 to create when you register an instance.
2018-01-16 14:20:59 +01:00
DnsConfig * DnsConfig ` type:"structure" `
// Public DNS namespaces only. A complex type that contains settings for an
2018-03-19 16:51:38 +01:00
// optional health check. If you specify settings for a health check, Route
// 53 associates the health check with all the records that you specify in DnsConfig.
2018-01-16 14:20:59 +01:00
//
2018-03-19 16:51:38 +01:00
// For information about the charges for health checks, see Route 53 Pricing
// (http://aws.amazon.com/route53/pricing).
2018-01-16 14:20:59 +01:00
HealthCheckConfig * HealthCheckConfig ` type:"structure" `
2018-03-19 16:51:38 +01:00
HealthCheckCustomConfig * HealthCheckCustomConfig ` type:"structure" `
// The ID that Route 53 assigned to the service when you created it.
2018-01-16 14:20:59 +01:00
Id * string ` type:"string" `
// The number of instances that are currently associated with the service. Instances
// that were previously associated with the service but that have been deleted
// are not included in the count.
InstanceCount * int64 ` type:"integer" `
// The name of the service.
Name * string ` type:"string" `
}
// String returns the string representation
func ( s Service ) String ( ) string {
return awsutil . Prettify ( s )
}
// GoString returns the string representation
func ( s Service ) GoString ( ) string {
return s . String ( )
}
// SetArn sets the Arn field's value.
func ( s * Service ) SetArn ( v string ) * Service {
s . Arn = & v
return s
}
// SetCreateDate sets the CreateDate field's value.
func ( s * Service ) SetCreateDate ( v time . Time ) * Service {
s . CreateDate = & v
return s
}
// SetCreatorRequestId sets the CreatorRequestId field's value.
func ( s * Service ) SetCreatorRequestId ( v string ) * Service {
s . CreatorRequestId = & v
return s
}
// SetDescription sets the Description field's value.
func ( s * Service ) SetDescription ( v string ) * Service {
s . Description = & v
return s
}
// SetDnsConfig sets the DnsConfig field's value.
func ( s * Service ) SetDnsConfig ( v * DnsConfig ) * Service {
s . DnsConfig = v
return s
}
// SetHealthCheckConfig sets the HealthCheckConfig field's value.
func ( s * Service ) SetHealthCheckConfig ( v * HealthCheckConfig ) * Service {
s . HealthCheckConfig = v
return s
}
2018-03-19 16:51:38 +01:00
// SetHealthCheckCustomConfig sets the HealthCheckCustomConfig field's value.
func ( s * Service ) SetHealthCheckCustomConfig ( v * HealthCheckCustomConfig ) * Service {
s . HealthCheckCustomConfig = v
return s
}
2018-01-16 14:20:59 +01:00
// SetId sets the Id field's value.
func ( s * Service ) SetId ( v string ) * Service {
s . Id = & v
return s
}
// SetInstanceCount sets the InstanceCount field's value.
func ( s * Service ) SetInstanceCount ( v int64 ) * Service {
s . InstanceCount = & v
return s
}
// SetName sets the Name field's value.
func ( s * Service ) SetName ( v string ) * Service {
s . Name = & v
return s
}
// A complex type that contains changes to an existing service.
type ServiceChange struct {
_ struct { } ` type:"structure" `
// A description for the service.
Description * string ` type:"string" `
2018-03-19 16:51:38 +01:00
// A complex type that contains information about the records that you want
// Route 53 to create when you register an instance.
2018-01-16 14:20:59 +01:00
//
// DnsConfig is a required field
DnsConfig * DnsConfigChange ` type:"structure" required:"true" `
// Public DNS namespaces only. A complex type that contains settings for an
// optional health check. If you specify settings for a health check, Amazon
2018-03-19 16:51:38 +01:00
// Route 53 associates the health check with all the records that you specify
// in DnsConfig.
//
// A and AAAA records
//
// If DnsConfig includes configurations for both A and AAAA records, Route 53
// creates a health check that uses the IPv4 address to check the health of
// the resource. If the endpoint that is specified by the IPv4 address is unhealthy,
// Route 53 considers both the A and AAAA records to be unhealthy.
//
// CNAME records
//
// You can't specify settings for HealthCheckConfig when the DNSConfig includes
// CNAME for the value of Type. If you do, the CreateService request will fail
// with an InvalidInput error.
//
// Request interval
2018-01-16 14:20:59 +01:00
//
// The health check uses 30 seconds as the request interval. This is the number
2018-03-19 16:51:38 +01:00
// of seconds between the time that each Route 53 health checker gets a response
// from your endpoint and the time that it sends the next health check request.
// A health checker in each data center around the world sends your endpoint
// a health check request every 30 seconds. On average, your endpoint receives
// a health check request about every two seconds. Health checkers in different
// data centers don't coordinate with one another, so you'll sometimes see several
// requests per second followed by a few seconds with no health checks at all.
//
// Health checking regions
//
// Health checkers perform checks from all Route 53 health-checking regions.
// For a list of the current regions, see Regions (http://docs.aws.amazon.com/Route53/latest/APIReference/API_HealthCheckConfig.html#Route53-Type-HealthCheckConfig-Regions).
//
// Alias records
//
// When you register an instance, if you include the AWS_ALIAS_DNS_NAME attribute,
// Route 53 creates an alias record. Note the following:
//
// * Route 53 automatically sets EvaluateTargetHealth to true for alias records.
// When EvaluateTargetHealth is true, the alias record inherits the health
// of the referenced AWS resource. such as an ELB load balancer. For more
// information, see EvaluateTargetHealth (http://docs.aws.amazon.com/Route53/latest/APIReference/API_AliasTarget.html#Route53-Type-AliasTarget-EvaluateTargetHealth).
//
// * If you include HealthCheckConfig and then use the service to register
// an instance that creates an alias record, Route 53 doesn't create the
// health check.
//
// For information about the charges for health checks, see Route 53 Pricing
// (http://aws.amazon.com/route53/pricing).
2018-01-16 14:20:59 +01:00
HealthCheckConfig * HealthCheckConfig ` type:"structure" `
}
// String returns the string representation
func ( s ServiceChange ) String ( ) string {
return awsutil . Prettify ( s )
}
// GoString returns the string representation
func ( s ServiceChange ) GoString ( ) string {
return s . String ( )
}
// Validate inspects the fields of the type to determine if they are valid.
func ( s * ServiceChange ) Validate ( ) error {
invalidParams := request . ErrInvalidParams { Context : "ServiceChange" }
if s . DnsConfig == nil {
invalidParams . Add ( request . NewErrParamRequired ( "DnsConfig" ) )
}
if s . DnsConfig != nil {
if err := s . DnsConfig . Validate ( ) ; err != nil {
invalidParams . AddNested ( "DnsConfig" , err . ( request . ErrInvalidParams ) )
}
}
if s . HealthCheckConfig != nil {
if err := s . HealthCheckConfig . Validate ( ) ; err != nil {
invalidParams . AddNested ( "HealthCheckConfig" , err . ( request . ErrInvalidParams ) )
}
}
if invalidParams . Len ( ) > 0 {
return invalidParams
}
return nil
}
// SetDescription sets the Description field's value.
func ( s * ServiceChange ) SetDescription ( v string ) * ServiceChange {
s . Description = & v
return s
}
// SetDnsConfig sets the DnsConfig field's value.
func ( s * ServiceChange ) SetDnsConfig ( v * DnsConfigChange ) * ServiceChange {
s . DnsConfig = v
return s
}
// SetHealthCheckConfig sets the HealthCheckConfig field's value.
func ( s * ServiceChange ) SetHealthCheckConfig ( v * HealthCheckConfig ) * ServiceChange {
s . HealthCheckConfig = v
return s
}
// A complex type that lets you specify the namespaces that you want to list
// services for.
type ServiceFilter struct {
_ struct { } ` type:"structure" `
// The operator that you want to use to determine whether a service is returned
// by ListServices. Valid values for Condition include the following:
//
// * EQ: When you specify EQ, specify one namespace ID for Values. EQ is
// the default condition and can be omitted.
//
// * IN: When you specify IN, specify a list of the IDs for the namespaces
// that you want ListServices to return a list of services for.
2018-03-19 16:51:38 +01:00
//
// * BETWEEN: Not applicable.
2018-01-16 14:20:59 +01:00
Condition * string ` type:"string" enum:"FilterCondition" `
// Specify NAMESPACE_ID.
//
// Name is a required field
Name * string ` type:"string" required:"true" enum:"ServiceFilterName" `
// The values that are applicable to the value that you specify for Condition
// to filter the list of services.
//
// Values is a required field
Values [ ] * string ` type:"list" required:"true" `
}
// String returns the string representation
func ( s ServiceFilter ) String ( ) string {
return awsutil . Prettify ( s )
}
// GoString returns the string representation
func ( s ServiceFilter ) GoString ( ) string {
return s . String ( )
}
// Validate inspects the fields of the type to determine if they are valid.
func ( s * ServiceFilter ) Validate ( ) error {
invalidParams := request . ErrInvalidParams { Context : "ServiceFilter" }
if s . Name == nil {
invalidParams . Add ( request . NewErrParamRequired ( "Name" ) )
}
if s . Values == nil {
invalidParams . Add ( request . NewErrParamRequired ( "Values" ) )
}
if invalidParams . Len ( ) > 0 {
return invalidParams
}
return nil
}
// SetCondition sets the Condition field's value.
func ( s * ServiceFilter ) SetCondition ( v string ) * ServiceFilter {
s . Condition = & v
return s
}
// SetName sets the Name field's value.
func ( s * ServiceFilter ) SetName ( v string ) * ServiceFilter {
s . Name = & v
return s
}
// SetValues sets the Values field's value.
func ( s * ServiceFilter ) SetValues ( v [ ] * string ) * ServiceFilter {
s . Values = v
return s
}
// A complex type that contains information about a specified service.
type ServiceSummary struct {
_ struct { } ` type:"structure" `
2018-03-19 16:51:38 +01:00
// The Amazon Resource Name (ARN) that Route 53 assigns to the service when
// you create it.
2018-01-16 14:20:59 +01:00
Arn * string ` type:"string" `
// The description that you specify when you create the service.
Description * string ` type:"string" `
2018-03-19 16:51:38 +01:00
// The ID that Route 53 assigned to the service when you created it.
2018-01-16 14:20:59 +01:00
Id * string ` type:"string" `
// The number of instances that are currently associated with the service. Instances
// that were previously associated with the service but that have been deleted
// are not included in the count.
InstanceCount * int64 ` type:"integer" `
// The name of the service.
Name * string ` type:"string" `
}
// String returns the string representation
func ( s ServiceSummary ) String ( ) string {
return awsutil . Prettify ( s )
}
// GoString returns the string representation
func ( s ServiceSummary ) GoString ( ) string {
return s . String ( )
}
// SetArn sets the Arn field's value.
func ( s * ServiceSummary ) SetArn ( v string ) * ServiceSummary {
s . Arn = & v
return s
}
// SetDescription sets the Description field's value.
func ( s * ServiceSummary ) SetDescription ( v string ) * ServiceSummary {
s . Description = & v
return s
}
// SetId sets the Id field's value.
func ( s * ServiceSummary ) SetId ( v string ) * ServiceSummary {
s . Id = & v
return s
}
// SetInstanceCount sets the InstanceCount field's value.
func ( s * ServiceSummary ) SetInstanceCount ( v int64 ) * ServiceSummary {
s . InstanceCount = & v
return s
}
// SetName sets the Name field's value.
func ( s * ServiceSummary ) SetName ( v string ) * ServiceSummary {
s . Name = & v
return s
}
2018-03-19 16:51:38 +01:00
type UpdateInstanceCustomHealthStatusInput struct {
_ struct { } ` type:"structure" `
// InstanceId is a required field
InstanceId * string ` type:"string" required:"true" `
// ServiceId is a required field
ServiceId * string ` type:"string" required:"true" `
// Status is a required field
Status * string ` type:"string" required:"true" enum:"CustomHealthStatus" `
}
// String returns the string representation
func ( s UpdateInstanceCustomHealthStatusInput ) String ( ) string {
return awsutil . Prettify ( s )
}
// GoString returns the string representation
func ( s UpdateInstanceCustomHealthStatusInput ) GoString ( ) string {
return s . String ( )
}
// Validate inspects the fields of the type to determine if they are valid.
func ( s * UpdateInstanceCustomHealthStatusInput ) Validate ( ) error {
invalidParams := request . ErrInvalidParams { Context : "UpdateInstanceCustomHealthStatusInput" }
if s . InstanceId == nil {
invalidParams . Add ( request . NewErrParamRequired ( "InstanceId" ) )
}
if s . ServiceId == nil {
invalidParams . Add ( request . NewErrParamRequired ( "ServiceId" ) )
}
if s . Status == nil {
invalidParams . Add ( request . NewErrParamRequired ( "Status" ) )
}
if invalidParams . Len ( ) > 0 {
return invalidParams
}
return nil
}
// SetInstanceId sets the InstanceId field's value.
func ( s * UpdateInstanceCustomHealthStatusInput ) SetInstanceId ( v string ) * UpdateInstanceCustomHealthStatusInput {
s . InstanceId = & v
return s
}
// SetServiceId sets the ServiceId field's value.
func ( s * UpdateInstanceCustomHealthStatusInput ) SetServiceId ( v string ) * UpdateInstanceCustomHealthStatusInput {
s . ServiceId = & v
return s
}
// SetStatus sets the Status field's value.
func ( s * UpdateInstanceCustomHealthStatusInput ) SetStatus ( v string ) * UpdateInstanceCustomHealthStatusInput {
s . Status = & v
return s
}
type UpdateInstanceCustomHealthStatusOutput struct {
_ struct { } ` type:"structure" `
}
// String returns the string representation
func ( s UpdateInstanceCustomHealthStatusOutput ) String ( ) string {
return awsutil . Prettify ( s )
}
// GoString returns the string representation
func ( s UpdateInstanceCustomHealthStatusOutput ) GoString ( ) string {
return s . String ( )
}
2018-01-16 14:20:59 +01:00
type UpdateServiceInput struct {
_ struct { } ` type:"structure" `
// The ID of the service that you want to update.
//
// Id is a required field
Id * string ` type:"string" required:"true" `
// A complex type that contains the new settings for the service.
//
// Service is a required field
Service * ServiceChange ` type:"structure" required:"true" `
}
// String returns the string representation
func ( s UpdateServiceInput ) String ( ) string {
return awsutil . Prettify ( s )
}
// GoString returns the string representation
func ( s UpdateServiceInput ) GoString ( ) string {
return s . String ( )
}
// Validate inspects the fields of the type to determine if they are valid.
func ( s * UpdateServiceInput ) Validate ( ) error {
invalidParams := request . ErrInvalidParams { Context : "UpdateServiceInput" }
if s . Id == nil {
invalidParams . Add ( request . NewErrParamRequired ( "Id" ) )
}
if s . Service == nil {
invalidParams . Add ( request . NewErrParamRequired ( "Service" ) )
}
if s . Service != nil {
if err := s . Service . Validate ( ) ; err != nil {
invalidParams . AddNested ( "Service" , err . ( request . ErrInvalidParams ) )
}
}
if invalidParams . Len ( ) > 0 {
return invalidParams
}
return nil
}
// SetId sets the Id field's value.
func ( s * UpdateServiceInput ) SetId ( v string ) * UpdateServiceInput {
s . Id = & v
return s
}
// SetService sets the Service field's value.
func ( s * UpdateServiceInput ) SetService ( v * ServiceChange ) * UpdateServiceInput {
s . Service = v
return s
}
type UpdateServiceOutput struct {
_ struct { } ` type:"structure" `
// A value that you can use to determine whether the request completed successfully.
// To get the status of the operation, see GetOperation.
OperationId * string ` type:"string" `
}
// String returns the string representation
func ( s UpdateServiceOutput ) String ( ) string {
return awsutil . Prettify ( s )
}
// GoString returns the string representation
func ( s UpdateServiceOutput ) GoString ( ) string {
return s . String ( )
}
// SetOperationId sets the OperationId field's value.
func ( s * UpdateServiceOutput ) SetOperationId ( v string ) * UpdateServiceOutput {
s . OperationId = & v
return s
}
2018-03-19 16:51:38 +01:00
const (
// CustomHealthStatusHealthy is a CustomHealthStatus enum value
CustomHealthStatusHealthy = "HEALTHY"
// CustomHealthStatusUnhealthy is a CustomHealthStatus enum value
CustomHealthStatusUnhealthy = "UNHEALTHY"
)
2018-01-16 14:20:59 +01:00
const (
// FilterConditionEq is a FilterCondition enum value
FilterConditionEq = "EQ"
// FilterConditionIn is a FilterCondition enum value
FilterConditionIn = "IN"
// FilterConditionBetween is a FilterCondition enum value
FilterConditionBetween = "BETWEEN"
)
const (
// HealthCheckTypeHttp is a HealthCheckType enum value
HealthCheckTypeHttp = "HTTP"
// HealthCheckTypeHttps is a HealthCheckType enum value
HealthCheckTypeHttps = "HTTPS"
// HealthCheckTypeTcp is a HealthCheckType enum value
HealthCheckTypeTcp = "TCP"
)
const (
// HealthStatusHealthy is a HealthStatus enum value
HealthStatusHealthy = "HEALTHY"
// HealthStatusUnhealthy is a HealthStatus enum value
HealthStatusUnhealthy = "UNHEALTHY"
// HealthStatusUnknown is a HealthStatus enum value
HealthStatusUnknown = "UNKNOWN"
)
const (
// NamespaceFilterNameType is a NamespaceFilterName enum value
NamespaceFilterNameType = "TYPE"
)
const (
// NamespaceTypeDnsPublic is a NamespaceType enum value
NamespaceTypeDnsPublic = "DNS_PUBLIC"
// NamespaceTypeDnsPrivate is a NamespaceType enum value
NamespaceTypeDnsPrivate = "DNS_PRIVATE"
)
const (
// OperationFilterNameNamespaceId is a OperationFilterName enum value
OperationFilterNameNamespaceId = "NAMESPACE_ID"
// OperationFilterNameServiceId is a OperationFilterName enum value
OperationFilterNameServiceId = "SERVICE_ID"
// OperationFilterNameStatus is a OperationFilterName enum value
OperationFilterNameStatus = "STATUS"
// OperationFilterNameType is a OperationFilterName enum value
OperationFilterNameType = "TYPE"
// OperationFilterNameUpdateDate is a OperationFilterName enum value
OperationFilterNameUpdateDate = "UPDATE_DATE"
)
const (
// OperationStatusSubmitted is a OperationStatus enum value
OperationStatusSubmitted = "SUBMITTED"
// OperationStatusPending is a OperationStatus enum value
OperationStatusPending = "PENDING"
// OperationStatusSuccess is a OperationStatus enum value
OperationStatusSuccess = "SUCCESS"
// OperationStatusFail is a OperationStatus enum value
OperationStatusFail = "FAIL"
)
const (
// OperationTargetTypeNamespace is a OperationTargetType enum value
OperationTargetTypeNamespace = "NAMESPACE"
// OperationTargetTypeService is a OperationTargetType enum value
OperationTargetTypeService = "SERVICE"
// OperationTargetTypeInstance is a OperationTargetType enum value
OperationTargetTypeInstance = "INSTANCE"
)
const (
// OperationTypeCreateNamespace is a OperationType enum value
OperationTypeCreateNamespace = "CREATE_NAMESPACE"
// OperationTypeDeleteNamespace is a OperationType enum value
OperationTypeDeleteNamespace = "DELETE_NAMESPACE"
// OperationTypeUpdateService is a OperationType enum value
OperationTypeUpdateService = "UPDATE_SERVICE"
// OperationTypeRegisterInstance is a OperationType enum value
OperationTypeRegisterInstance = "REGISTER_INSTANCE"
// OperationTypeDeregisterInstance is a OperationType enum value
OperationTypeDeregisterInstance = "DEREGISTER_INSTANCE"
)
const (
// RecordTypeSrv is a RecordType enum value
RecordTypeSrv = "SRV"
// RecordTypeA is a RecordType enum value
RecordTypeA = "A"
// RecordTypeAaaa is a RecordType enum value
RecordTypeAaaa = "AAAA"
2018-03-19 16:51:38 +01:00
// RecordTypeCname is a RecordType enum value
RecordTypeCname = "CNAME"
)
const (
// RoutingPolicyMultivalue is a RoutingPolicy enum value
RoutingPolicyMultivalue = "MULTIVALUE"
// RoutingPolicyWeighted is a RoutingPolicy enum value
RoutingPolicyWeighted = "WEIGHTED"
2018-01-16 14:20:59 +01:00
)
const (
// ServiceFilterNameNamespaceId is a ServiceFilterName enum value
ServiceFilterNameNamespaceId = "NAMESPACE_ID"
)