// Code generated by private/model/cli/gen-api/main.go. DO NOT EDIT. package arczonalshift import ( "fmt" "time" "github.com/aws/aws-sdk-go/aws" "github.com/aws/aws-sdk-go/aws/awsutil" "github.com/aws/aws-sdk-go/aws/request" "github.com/aws/aws-sdk-go/private/protocol" ) const opCancelZonalShift = "CancelZonalShift" // CancelZonalShiftRequest generates a "aws/request.Request" representing the // client's request for the CancelZonalShift operation. The "output" return // value will be populated with the request's response once the request completes // successfully. // // Use "Send" method on the returned Request to send the API call to the service. // the "output" return value is not valid until after Send returns without error. // // See CancelZonalShift for more information on using the CancelZonalShift // 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 CancelZonalShiftRequest method. // req, resp := client.CancelZonalShiftRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // // See also, https://docs.aws.amazon.com/goto/WebAPI/arc-zonal-shift-2022-10-30/CancelZonalShift func (c *ARCZonalShift) CancelZonalShiftRequest(input *CancelZonalShiftInput) (req *request.Request, output *CancelZonalShiftOutput) { op := &request.Operation{ Name: opCancelZonalShift, HTTPMethod: "DELETE", HTTPPath: "/zonalshifts/{zonalShiftId}", } if input == nil { input = &CancelZonalShiftInput{} } output = &CancelZonalShiftOutput{} req = c.newRequest(op, input, output) return } // CancelZonalShift API operation for AWS ARC - Zonal Shift. // // Cancel a zonal shift in Amazon Route 53 Application Recovery Controller that // you've started for a resource in your AWS account in an AWS Region. // // 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 AWS ARC - Zonal Shift's // API operation CancelZonalShift for usage and error information. // // Returned Error Types: // * InternalServerException // There was an internal server error. // // * ConflictException // The request could not be processed because of conflict in the current state // of the resource. // // * ResourceNotFoundException // The input requested a resource that was not found. // // * ThrottlingException // The request was denied due to request throttling. // // * ValidationException // The input fails to satisfy the constraints specified by an AWS service. // // * AccessDeniedException // You do not have sufficient access to perform this action. // // See also, https://docs.aws.amazon.com/goto/WebAPI/arc-zonal-shift-2022-10-30/CancelZonalShift func (c *ARCZonalShift) CancelZonalShift(input *CancelZonalShiftInput) (*CancelZonalShiftOutput, error) { req, out := c.CancelZonalShiftRequest(input) return out, req.Send() } // CancelZonalShiftWithContext is the same as CancelZonalShift with the addition of // the ability to pass a context and additional request options. // // See CancelZonalShift 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 *ARCZonalShift) CancelZonalShiftWithContext(ctx aws.Context, input *CancelZonalShiftInput, opts ...request.Option) (*CancelZonalShiftOutput, error) { req, out := c.CancelZonalShiftRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } const opGetManagedResource = "GetManagedResource" // GetManagedResourceRequest generates a "aws/request.Request" representing the // client's request for the GetManagedResource operation. The "output" return // value will be populated with the request's response once the request completes // successfully. // // Use "Send" method on the returned Request to send the API call to the service. // the "output" return value is not valid until after Send returns without error. // // See GetManagedResource for more information on using the GetManagedResource // 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 GetManagedResourceRequest method. // req, resp := client.GetManagedResourceRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // // See also, https://docs.aws.amazon.com/goto/WebAPI/arc-zonal-shift-2022-10-30/GetManagedResource func (c *ARCZonalShift) GetManagedResourceRequest(input *GetManagedResourceInput) (req *request.Request, output *GetManagedResourceOutput) { op := &request.Operation{ Name: opGetManagedResource, HTTPMethod: "GET", HTTPPath: "/managedresources/{resourceIdentifier}", } if input == nil { input = &GetManagedResourceInput{} } output = &GetManagedResourceOutput{} req = c.newRequest(op, input, output) return } // GetManagedResource API operation for AWS ARC - Zonal Shift. // // Get information about a resource that's been registered for zonal shifts // with Amazon Route 53 Application Recovery Controller in this AWS Region. // Resources that are registered for zonal shifts are managed resources in Route // 53 ARC. // // At this time, you can only start a zonal shift for Network Load Balancers // and Application Load Balancers with cross-zone load balancing turned off. // // 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 AWS ARC - Zonal Shift's // API operation GetManagedResource for usage and error information. // // Returned Error Types: // * InternalServerException // There was an internal server error. // // * ResourceNotFoundException // The input requested a resource that was not found. // // * ThrottlingException // The request was denied due to request throttling. // // * ValidationException // The input fails to satisfy the constraints specified by an AWS service. // // * AccessDeniedException // You do not have sufficient access to perform this action. // // See also, https://docs.aws.amazon.com/goto/WebAPI/arc-zonal-shift-2022-10-30/GetManagedResource func (c *ARCZonalShift) GetManagedResource(input *GetManagedResourceInput) (*GetManagedResourceOutput, error) { req, out := c.GetManagedResourceRequest(input) return out, req.Send() } // GetManagedResourceWithContext is the same as GetManagedResource with the addition of // the ability to pass a context and additional request options. // // See GetManagedResource 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 *ARCZonalShift) GetManagedResourceWithContext(ctx aws.Context, input *GetManagedResourceInput, opts ...request.Option) (*GetManagedResourceOutput, error) { req, out := c.GetManagedResourceRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } const opListManagedResources = "ListManagedResources" // ListManagedResourcesRequest generates a "aws/request.Request" representing the // client's request for the ListManagedResources operation. The "output" return // value will be populated with the request's response once the request completes // successfully. // // Use "Send" method on the returned Request to send the API call to the service. // the "output" return value is not valid until after Send returns without error. // // See ListManagedResources for more information on using the ListManagedResources // 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 ListManagedResourcesRequest method. // req, resp := client.ListManagedResourcesRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // // See also, https://docs.aws.amazon.com/goto/WebAPI/arc-zonal-shift-2022-10-30/ListManagedResources func (c *ARCZonalShift) ListManagedResourcesRequest(input *ListManagedResourcesInput) (req *request.Request, output *ListManagedResourcesOutput) { op := &request.Operation{ Name: opListManagedResources, HTTPMethod: "GET", HTTPPath: "/managedresources", Paginator: &request.Paginator{ InputTokens: []string{"nextToken"}, OutputTokens: []string{"nextToken"}, LimitToken: "maxResults", TruncationToken: "", }, } if input == nil { input = &ListManagedResourcesInput{} } output = &ListManagedResourcesOutput{} req = c.newRequest(op, input, output) return } // ListManagedResources API operation for AWS ARC - Zonal Shift. // // Lists all the resources in your AWS account in this AWS Region that are managed // for zonal shifts in Amazon Route 53 Application Recovery Controller, and // information about them. The information includes their Amazon Resource Names // (ARNs), the Availability Zones the resources are deployed in, and the resource // name. // // 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 AWS ARC - Zonal Shift's // API operation ListManagedResources for usage and error information. // // Returned Error Types: // * InternalServerException // There was an internal server error. // // * ThrottlingException // The request was denied due to request throttling. // // * ValidationException // The input fails to satisfy the constraints specified by an AWS service. // // * AccessDeniedException // You do not have sufficient access to perform this action. // // See also, https://docs.aws.amazon.com/goto/WebAPI/arc-zonal-shift-2022-10-30/ListManagedResources func (c *ARCZonalShift) ListManagedResources(input *ListManagedResourcesInput) (*ListManagedResourcesOutput, error) { req, out := c.ListManagedResourcesRequest(input) return out, req.Send() } // ListManagedResourcesWithContext is the same as ListManagedResources with the addition of // the ability to pass a context and additional request options. // // See ListManagedResources 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 *ARCZonalShift) ListManagedResourcesWithContext(ctx aws.Context, input *ListManagedResourcesInput, opts ...request.Option) (*ListManagedResourcesOutput, error) { req, out := c.ListManagedResourcesRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } // ListManagedResourcesPages iterates over the pages of a ListManagedResources operation, // calling the "fn" function with the response data for each page. To stop // iterating, return false from the fn function. // // See ListManagedResources 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 ListManagedResources operation. // pageNum := 0 // err := client.ListManagedResourcesPages(params, // func(page *arczonalshift.ListManagedResourcesOutput, lastPage bool) bool { // pageNum++ // fmt.Println(page) // return pageNum <= 3 // }) // func (c *ARCZonalShift) ListManagedResourcesPages(input *ListManagedResourcesInput, fn func(*ListManagedResourcesOutput, bool) bool) error { return c.ListManagedResourcesPagesWithContext(aws.BackgroundContext(), input, fn) } // ListManagedResourcesPagesWithContext same as ListManagedResourcesPages 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 *ARCZonalShift) ListManagedResourcesPagesWithContext(ctx aws.Context, input *ListManagedResourcesInput, fn func(*ListManagedResourcesOutput, bool) bool, opts ...request.Option) error { p := request.Pagination{ NewRequest: func() (*request.Request, error) { var inCpy *ListManagedResourcesInput if input != nil { tmp := *input inCpy = &tmp } req, _ := c.ListManagedResourcesRequest(inCpy) req.SetContext(ctx) req.ApplyOptions(opts...) return req, nil }, } for p.Next() { if !fn(p.Page().(*ListManagedResourcesOutput), !p.HasNextPage()) { break } } return p.Err() } const opListZonalShifts = "ListZonalShifts" // ListZonalShiftsRequest generates a "aws/request.Request" representing the // client's request for the ListZonalShifts operation. The "output" return // value will be populated with the request's response once the request completes // successfully. // // Use "Send" method on the returned Request to send the API call to the service. // the "output" return value is not valid until after Send returns without error. // // See ListZonalShifts for more information on using the ListZonalShifts // 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 ListZonalShiftsRequest method. // req, resp := client.ListZonalShiftsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // // See also, https://docs.aws.amazon.com/goto/WebAPI/arc-zonal-shift-2022-10-30/ListZonalShifts func (c *ARCZonalShift) ListZonalShiftsRequest(input *ListZonalShiftsInput) (req *request.Request, output *ListZonalShiftsOutput) { op := &request.Operation{ Name: opListZonalShifts, HTTPMethod: "GET", HTTPPath: "/zonalshifts", Paginator: &request.Paginator{ InputTokens: []string{"nextToken"}, OutputTokens: []string{"nextToken"}, LimitToken: "maxResults", TruncationToken: "", }, } if input == nil { input = &ListZonalShiftsInput{} } output = &ListZonalShiftsOutput{} req = c.newRequest(op, input, output) return } // ListZonalShifts API operation for AWS ARC - Zonal Shift. // // Lists all the active zonal shifts in Amazon Route 53 Application Recovery // Controller in your AWS account in this AWS Region. // // 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 AWS ARC - Zonal Shift's // API operation ListZonalShifts for usage and error information. // // Returned Error Types: // * InternalServerException // There was an internal server error. // // * ThrottlingException // The request was denied due to request throttling. // // * ValidationException // The input fails to satisfy the constraints specified by an AWS service. // // * AccessDeniedException // You do not have sufficient access to perform this action. // // See also, https://docs.aws.amazon.com/goto/WebAPI/arc-zonal-shift-2022-10-30/ListZonalShifts func (c *ARCZonalShift) ListZonalShifts(input *ListZonalShiftsInput) (*ListZonalShiftsOutput, error) { req, out := c.ListZonalShiftsRequest(input) return out, req.Send() } // ListZonalShiftsWithContext is the same as ListZonalShifts with the addition of // the ability to pass a context and additional request options. // // See ListZonalShifts 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 *ARCZonalShift) ListZonalShiftsWithContext(ctx aws.Context, input *ListZonalShiftsInput, opts ...request.Option) (*ListZonalShiftsOutput, error) { req, out := c.ListZonalShiftsRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } // ListZonalShiftsPages iterates over the pages of a ListZonalShifts operation, // calling the "fn" function with the response data for each page. To stop // iterating, return false from the fn function. // // See ListZonalShifts 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 ListZonalShifts operation. // pageNum := 0 // err := client.ListZonalShiftsPages(params, // func(page *arczonalshift.ListZonalShiftsOutput, lastPage bool) bool { // pageNum++ // fmt.Println(page) // return pageNum <= 3 // }) // func (c *ARCZonalShift) ListZonalShiftsPages(input *ListZonalShiftsInput, fn func(*ListZonalShiftsOutput, bool) bool) error { return c.ListZonalShiftsPagesWithContext(aws.BackgroundContext(), input, fn) } // ListZonalShiftsPagesWithContext same as ListZonalShiftsPages 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 *ARCZonalShift) ListZonalShiftsPagesWithContext(ctx aws.Context, input *ListZonalShiftsInput, fn func(*ListZonalShiftsOutput, bool) bool, opts ...request.Option) error { p := request.Pagination{ NewRequest: func() (*request.Request, error) { var inCpy *ListZonalShiftsInput if input != nil { tmp := *input inCpy = &tmp } req, _ := c.ListZonalShiftsRequest(inCpy) req.SetContext(ctx) req.ApplyOptions(opts...) return req, nil }, } for p.Next() { if !fn(p.Page().(*ListZonalShiftsOutput), !p.HasNextPage()) { break } } return p.Err() } const opStartZonalShift = "StartZonalShift" // StartZonalShiftRequest generates a "aws/request.Request" representing the // client's request for the StartZonalShift operation. The "output" return // value will be populated with the request's response once the request completes // successfully. // // Use "Send" method on the returned Request to send the API call to the service. // the "output" return value is not valid until after Send returns without error. // // See StartZonalShift for more information on using the StartZonalShift // 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 StartZonalShiftRequest method. // req, resp := client.StartZonalShiftRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // // See also, https://docs.aws.amazon.com/goto/WebAPI/arc-zonal-shift-2022-10-30/StartZonalShift func (c *ARCZonalShift) StartZonalShiftRequest(input *StartZonalShiftInput) (req *request.Request, output *StartZonalShiftOutput) { op := &request.Operation{ Name: opStartZonalShift, HTTPMethod: "POST", HTTPPath: "/zonalshifts", } if input == nil { input = &StartZonalShiftInput{} } output = &StartZonalShiftOutput{} req = c.newRequest(op, input, output) return } // StartZonalShift API operation for AWS ARC - Zonal Shift. // // You start a zonal shift to temporarily move load balancer traffic away from // an Availability Zone in a AWS Region, to help your application recover immediately, // for example, from a developer's bad code deployment or from an AWS infrastructure // failure in a single Availability Zone. You can start a zonal shift in Route // 53 ARC only for managed resources in your account in an AWS Region. Resources // are automatically registered with Route 53 ARC by AWS services. // // At this time, you can only start a zonal shift for Network Load Balancers // and Application Load Balancers with cross-zone load balancing turned off. // // When you start a zonal shift, traffic for the resource is no longer routed // to the Availability Zone. The zonal shift is created immediately in Route // 53 ARC. However, it can take a short time, typically up to a few minutes, // for existing, in-progress connections in the Availability Zone to complete. // // For more information, see Zonal shift (https://docs.aws.amazon.com/r53recovery/latest/dg/arc-zonal-shift.html) // in the Amazon Route 53 Application Recovery Controller Developer Guide. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS ARC - Zonal Shift's // API operation StartZonalShift for usage and error information. // // Returned Error Types: // * InternalServerException // There was an internal server error. // // * ConflictException // The request could not be processed because of conflict in the current state // of the resource. // // * ResourceNotFoundException // The input requested a resource that was not found. // // * ThrottlingException // The request was denied due to request throttling. // // * ValidationException // The input fails to satisfy the constraints specified by an AWS service. // // * AccessDeniedException // You do not have sufficient access to perform this action. // // See also, https://docs.aws.amazon.com/goto/WebAPI/arc-zonal-shift-2022-10-30/StartZonalShift func (c *ARCZonalShift) StartZonalShift(input *StartZonalShiftInput) (*StartZonalShiftOutput, error) { req, out := c.StartZonalShiftRequest(input) return out, req.Send() } // StartZonalShiftWithContext is the same as StartZonalShift with the addition of // the ability to pass a context and additional request options. // // See StartZonalShift 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 *ARCZonalShift) StartZonalShiftWithContext(ctx aws.Context, input *StartZonalShiftInput, opts ...request.Option) (*StartZonalShiftOutput, error) { req, out := c.StartZonalShiftRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } const opUpdateZonalShift = "UpdateZonalShift" // UpdateZonalShiftRequest generates a "aws/request.Request" representing the // client's request for the UpdateZonalShift operation. The "output" return // value will be populated with the request's response once the request completes // successfully. // // Use "Send" method on the returned Request to send the API call to the service. // the "output" return value is not valid until after Send returns without error. // // See UpdateZonalShift for more information on using the UpdateZonalShift // 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 UpdateZonalShiftRequest method. // req, resp := client.UpdateZonalShiftRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // // See also, https://docs.aws.amazon.com/goto/WebAPI/arc-zonal-shift-2022-10-30/UpdateZonalShift func (c *ARCZonalShift) UpdateZonalShiftRequest(input *UpdateZonalShiftInput) (req *request.Request, output *UpdateZonalShiftOutput) { op := &request.Operation{ Name: opUpdateZonalShift, HTTPMethod: "PATCH", HTTPPath: "/zonalshifts/{zonalShiftId}", } if input == nil { input = &UpdateZonalShiftInput{} } output = &UpdateZonalShiftOutput{} req = c.newRequest(op, input, output) return } // UpdateZonalShift API operation for AWS ARC - Zonal Shift. // // Update an active zonal shift in Amazon Route 53 Application Recovery Controller // in your AWS account. You can update a zonal shift to set a new expiration, // or edit or replace the comment for the zonal shift. // // 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 AWS ARC - Zonal Shift's // API operation UpdateZonalShift for usage and error information. // // Returned Error Types: // * InternalServerException // There was an internal server error. // // * ConflictException // The request could not be processed because of conflict in the current state // of the resource. // // * ResourceNotFoundException // The input requested a resource that was not found. // // * ThrottlingException // The request was denied due to request throttling. // // * ValidationException // The input fails to satisfy the constraints specified by an AWS service. // // * AccessDeniedException // You do not have sufficient access to perform this action. // // See also, https://docs.aws.amazon.com/goto/WebAPI/arc-zonal-shift-2022-10-30/UpdateZonalShift func (c *ARCZonalShift) UpdateZonalShift(input *UpdateZonalShiftInput) (*UpdateZonalShiftOutput, error) { req, out := c.UpdateZonalShiftRequest(input) return out, req.Send() } // UpdateZonalShiftWithContext is the same as UpdateZonalShift with the addition of // the ability to pass a context and additional request options. // // See UpdateZonalShift 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 *ARCZonalShift) UpdateZonalShiftWithContext(ctx aws.Context, input *UpdateZonalShiftInput, opts ...request.Option) (*UpdateZonalShiftOutput, error) { req, out := c.UpdateZonalShiftRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } // You do not have sufficient access to perform this action. type AccessDeniedException struct { _ struct{} `type:"structure"` RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` Message_ *string `locationName:"message" type:"string"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s AccessDeniedException) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s AccessDeniedException) GoString() string { return s.String() } func newErrorAccessDeniedException(v protocol.ResponseMetadata) error { return &AccessDeniedException{ RespMetadata: v, } } // Code returns the exception type name. func (s *AccessDeniedException) Code() string { return "AccessDeniedException" } // Message returns the exception's message. func (s *AccessDeniedException) Message() string { if s.Message_ != nil { return *s.Message_ } return "" } // OrigErr always returns nil, satisfies awserr.Error interface. func (s *AccessDeniedException) OrigErr() error { return nil } func (s *AccessDeniedException) Error() string { return fmt.Sprintf("%s: %s", s.Code(), s.Message()) } // Status code returns the HTTP status code for the request's response error. func (s *AccessDeniedException) StatusCode() int { return s.RespMetadata.StatusCode } // RequestID returns the service's response RequestID for request. func (s *AccessDeniedException) RequestID() string { return s.RespMetadata.RequestID } type CancelZonalShiftInput struct { _ struct{} `type:"structure" nopayload:"true"` // The internally-generated identifier of a zonal shift. // // ZonalShiftId is a required field ZonalShiftId *string `location:"uri" locationName:"zonalShiftId" min:"6" type:"string" required:"true"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s CancelZonalShiftInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s CancelZonalShiftInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *CancelZonalShiftInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "CancelZonalShiftInput"} if s.ZonalShiftId == nil { invalidParams.Add(request.NewErrParamRequired("ZonalShiftId")) } if s.ZonalShiftId != nil && len(*s.ZonalShiftId) < 6 { invalidParams.Add(request.NewErrParamMinLen("ZonalShiftId", 6)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // SetZonalShiftId sets the ZonalShiftId field's value. func (s *CancelZonalShiftInput) SetZonalShiftId(v string) *CancelZonalShiftInput { s.ZonalShiftId = &v return s } type CancelZonalShiftOutput struct { _ struct{} `type:"structure"` // The Availability Zone that traffic is moved away from for a resource when // you start a zonal shift. Until the zonal shift expires or you cancel it, // traffic for the resource is instead moved to other Availability Zones in // the AWS Region. // // AwayFrom is a required field AwayFrom *string `locationName:"awayFrom" type:"string" required:"true"` // A comment that you enter about the zonal shift. Only the latest comment is // retained; no comment history is maintained. A new comment overwrites any // existing comment string. // // Comment is a required field Comment *string `locationName:"comment" type:"string" required:"true"` // The expiry time (expiration time) for the zonal shift. A zonal shift is temporary // and must be set to expire when you start the zonal shift. You can initially // set a zonal shift to expire in a maximum of three days (72 hours). However, // you can update a zonal shift to set a new expiration at any time. // // When you start a zonal shift, you specify how long you want it to be active, // which Route 53 ARC converts to an expiry time (expiration time). You can // cancel a zonal shift, for example, if you're ready to restore traffic to // the Availability Zone. Or you can update the zonal shift to specify another // length of time to expire in. // // ExpiryTime is a required field ExpiryTime *time.Time `locationName:"expiryTime" type:"timestamp" required:"true"` // The identifier for the resource to include in a zonal shift. The identifier // is the Amazon Resource Name (ARN) for the resource. // // At this time, you can only start a zonal shift for Network Load Balancers // and Application Load Balancers with cross-zone load balancing turned off. // // ResourceIdentifier is a required field ResourceIdentifier *string `locationName:"resourceIdentifier" min:"8" type:"string" required:"true"` // The time (UTC) when the zonal shift is started. // // StartTime is a required field StartTime *time.Time `locationName:"startTime" type:"timestamp" required:"true"` // A status for a zonal shift. // // The Status for a zonal shift can have one of the following values: // // * ACTIVE: The zonal shift is started and active. // // * EXPIRED: The zonal shift has expired (the expiry time was exceeded). // // * CANCELED: The zonal shift was canceled. // // Status is a required field Status *string `locationName:"status" type:"string" required:"true" enum:"ZonalShiftStatus"` // The identifier of a zonal shift. // // ZonalShiftId is a required field ZonalShiftId *string `locationName:"zonalShiftId" min:"6" type:"string" required:"true"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s CancelZonalShiftOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s CancelZonalShiftOutput) GoString() string { return s.String() } // SetAwayFrom sets the AwayFrom field's value. func (s *CancelZonalShiftOutput) SetAwayFrom(v string) *CancelZonalShiftOutput { s.AwayFrom = &v return s } // SetComment sets the Comment field's value. func (s *CancelZonalShiftOutput) SetComment(v string) *CancelZonalShiftOutput { s.Comment = &v return s } // SetExpiryTime sets the ExpiryTime field's value. func (s *CancelZonalShiftOutput) SetExpiryTime(v time.Time) *CancelZonalShiftOutput { s.ExpiryTime = &v return s } // SetResourceIdentifier sets the ResourceIdentifier field's value. func (s *CancelZonalShiftOutput) SetResourceIdentifier(v string) *CancelZonalShiftOutput { s.ResourceIdentifier = &v return s } // SetStartTime sets the StartTime field's value. func (s *CancelZonalShiftOutput) SetStartTime(v time.Time) *CancelZonalShiftOutput { s.StartTime = &v return s } // SetStatus sets the Status field's value. func (s *CancelZonalShiftOutput) SetStatus(v string) *CancelZonalShiftOutput { s.Status = &v return s } // SetZonalShiftId sets the ZonalShiftId field's value. func (s *CancelZonalShiftOutput) SetZonalShiftId(v string) *CancelZonalShiftOutput { s.ZonalShiftId = &v return s } // The request could not be processed because of conflict in the current state // of the resource. type ConflictException struct { _ struct{} `type:"structure"` RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` Message_ *string `locationName:"message" type:"string"` // The reason for the conflict exception. // // Reason is a required field Reason *string `locationName:"reason" type:"string" required:"true" enum:"ConflictExceptionReason"` // The zonal shift ID associated with the conflict exception. ZonalShiftId *string `locationName:"zonalShiftId" type:"string"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s ConflictException) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s ConflictException) GoString() string { return s.String() } func newErrorConflictException(v protocol.ResponseMetadata) error { return &ConflictException{ RespMetadata: v, } } // Code returns the exception type name. func (s *ConflictException) Code() string { return "ConflictException" } // Message returns the exception's message. func (s *ConflictException) Message() string { if s.Message_ != nil { return *s.Message_ } return "" } // OrigErr always returns nil, satisfies awserr.Error interface. func (s *ConflictException) OrigErr() error { return nil } func (s *ConflictException) Error() string { return fmt.Sprintf("%s: %s\n%s", s.Code(), s.Message(), s.String()) } // Status code returns the HTTP status code for the request's response error. func (s *ConflictException) StatusCode() int { return s.RespMetadata.StatusCode } // RequestID returns the service's response RequestID for request. func (s *ConflictException) RequestID() string { return s.RespMetadata.RequestID } type GetManagedResourceInput struct { _ struct{} `type:"structure" nopayload:"true"` // The identifier for the resource to include in a zonal shift. The identifier // is the Amazon Resource Name (ARN) for the resource. // // At this time, you can only start a zonal shift for Network Load Balancers // and Application Load Balancers with cross-zone load balancing turned off. // // ResourceIdentifier is a required field ResourceIdentifier *string `location:"uri" locationName:"resourceIdentifier" min:"8" type:"string" required:"true"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s GetManagedResourceInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s GetManagedResourceInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *GetManagedResourceInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "GetManagedResourceInput"} if s.ResourceIdentifier == nil { invalidParams.Add(request.NewErrParamRequired("ResourceIdentifier")) } if s.ResourceIdentifier != nil && len(*s.ResourceIdentifier) < 8 { invalidParams.Add(request.NewErrParamMinLen("ResourceIdentifier", 8)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // SetResourceIdentifier sets the ResourceIdentifier field's value. func (s *GetManagedResourceInput) SetResourceIdentifier(v string) *GetManagedResourceInput { s.ResourceIdentifier = &v return s } type GetManagedResourceOutput struct { _ struct{} `type:"structure"` // A collection of key-value pairs that indicate whether resources are active // in Availability Zones or not. The key name is the Availability Zone where // the resource is deployed. The value is 1 or 0. // // AppliedWeights is a required field AppliedWeights map[string]*float64 `locationName:"appliedWeights" type:"map" required:"true"` // The Amazon Resource Name (ARN) for the resource. Arn *string `locationName:"arn" min:"8" type:"string"` // The name of the resource. Name *string `locationName:"name" min:"1" type:"string"` // The zonal shifts that are currently active for a resource. // // ZonalShifts is a required field ZonalShifts []*ZonalShiftInResource `locationName:"zonalShifts" type:"list" required:"true"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s GetManagedResourceOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s GetManagedResourceOutput) GoString() string { return s.String() } // SetAppliedWeights sets the AppliedWeights field's value. func (s *GetManagedResourceOutput) SetAppliedWeights(v map[string]*float64) *GetManagedResourceOutput { s.AppliedWeights = v return s } // SetArn sets the Arn field's value. func (s *GetManagedResourceOutput) SetArn(v string) *GetManagedResourceOutput { s.Arn = &v return s } // SetName sets the Name field's value. func (s *GetManagedResourceOutput) SetName(v string) *GetManagedResourceOutput { s.Name = &v return s } // SetZonalShifts sets the ZonalShifts field's value. func (s *GetManagedResourceOutput) SetZonalShifts(v []*ZonalShiftInResource) *GetManagedResourceOutput { s.ZonalShifts = v return s } // There was an internal server error. type InternalServerException struct { _ struct{} `type:"structure"` RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` Message_ *string `locationName:"message" type:"string"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s InternalServerException) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s InternalServerException) GoString() string { return s.String() } func newErrorInternalServerException(v protocol.ResponseMetadata) error { return &InternalServerException{ RespMetadata: v, } } // Code returns the exception type name. func (s *InternalServerException) Code() string { return "InternalServerException" } // Message returns the exception's message. func (s *InternalServerException) Message() string { if s.Message_ != nil { return *s.Message_ } return "" } // OrigErr always returns nil, satisfies awserr.Error interface. func (s *InternalServerException) OrigErr() error { return nil } func (s *InternalServerException) Error() string { return fmt.Sprintf("%s: %s", s.Code(), s.Message()) } // Status code returns the HTTP status code for the request's response error. func (s *InternalServerException) StatusCode() int { return s.RespMetadata.StatusCode } // RequestID returns the service's response RequestID for request. func (s *InternalServerException) RequestID() string { return s.RespMetadata.RequestID } type ListManagedResourcesInput struct { _ struct{} `type:"structure" nopayload:"true"` // The number of objects that you want to return with this call. MaxResults *int64 `location:"querystring" locationName:"maxResults" min:"1" type:"integer"` // Specifies that you want to receive the next page of results. Valid only if // you received a NextToken response in the previous request. If you did, it // indicates that more output is available. Set this parameter to the value // provided by the previous call's NextToken response to request the next page // of results. NextToken *string `location:"querystring" locationName:"nextToken" type:"string"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s ListManagedResourcesInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s ListManagedResourcesInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *ListManagedResourcesInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "ListManagedResourcesInput"} if s.MaxResults != nil && *s.MaxResults < 1 { invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // SetMaxResults sets the MaxResults field's value. func (s *ListManagedResourcesInput) SetMaxResults(v int64) *ListManagedResourcesInput { s.MaxResults = &v return s } // SetNextToken sets the NextToken field's value. func (s *ListManagedResourcesInput) SetNextToken(v string) *ListManagedResourcesInput { s.NextToken = &v return s } type ListManagedResourcesOutput struct { _ struct{} `type:"structure"` // The items in the response list. // // Items is a required field Items []*ManagedResourceSummary `locationName:"items" type:"list" required:"true"` // Specifies that you want to receive the next page of results. Valid only if // you received a NextToken response in the previous request. If you did, it // indicates that more output is available. Set this parameter to the value // provided by the previous call's NextToken response to request the next page // of results. NextToken *string `locationName:"nextToken" type:"string"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s ListManagedResourcesOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s ListManagedResourcesOutput) GoString() string { return s.String() } // SetItems sets the Items field's value. func (s *ListManagedResourcesOutput) SetItems(v []*ManagedResourceSummary) *ListManagedResourcesOutput { s.Items = v return s } // SetNextToken sets the NextToken field's value. func (s *ListManagedResourcesOutput) SetNextToken(v string) *ListManagedResourcesOutput { s.NextToken = &v return s } type ListZonalShiftsInput struct { _ struct{} `type:"structure" nopayload:"true"` // The number of objects that you want to return with this call. MaxResults *int64 `location:"querystring" locationName:"maxResults" min:"1" type:"integer"` // Specifies that you want to receive the next page of results. Valid only if // you received a NextToken response in the previous request. If you did, it // indicates that more output is available. Set this parameter to the value // provided by the previous call's NextToken response to request the next page // of results. NextToken *string `location:"querystring" locationName:"nextToken" type:"string"` // A status for a zonal shift. // // The Status for a zonal shift can have one of the following values: // // * ACTIVE: The zonal shift is started and active. // // * EXPIRED: The zonal shift has expired (the expiry time was exceeded). // // * CANCELED: The zonal shift was canceled. Status *string `location:"querystring" locationName:"status" type:"string" enum:"ZonalShiftStatus"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s ListZonalShiftsInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s ListZonalShiftsInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *ListZonalShiftsInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "ListZonalShiftsInput"} if s.MaxResults != nil && *s.MaxResults < 1 { invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // SetMaxResults sets the MaxResults field's value. func (s *ListZonalShiftsInput) SetMaxResults(v int64) *ListZonalShiftsInput { s.MaxResults = &v return s } // SetNextToken sets the NextToken field's value. func (s *ListZonalShiftsInput) SetNextToken(v string) *ListZonalShiftsInput { s.NextToken = &v return s } // SetStatus sets the Status field's value. func (s *ListZonalShiftsInput) SetStatus(v string) *ListZonalShiftsInput { s.Status = &v return s } type ListZonalShiftsOutput struct { _ struct{} `type:"structure"` // The items in the response list. Items []*ZonalShiftSummary `locationName:"items" type:"list"` // Specifies that you want to receive the next page of results. Valid only if // you received a NextToken response in the previous request. If you did, it // indicates that more output is available. Set this parameter to the value // provided by the previous call's NextToken response to request the next page // of results. NextToken *string `locationName:"nextToken" type:"string"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s ListZonalShiftsOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s ListZonalShiftsOutput) GoString() string { return s.String() } // SetItems sets the Items field's value. func (s *ListZonalShiftsOutput) SetItems(v []*ZonalShiftSummary) *ListZonalShiftsOutput { s.Items = v return s } // SetNextToken sets the NextToken field's value. func (s *ListZonalShiftsOutput) SetNextToken(v string) *ListZonalShiftsOutput { s.NextToken = &v return s } // A complex structure for a managed resource in an account. // // A managed resource is a Network Load Balancer or Application Load Balancer // that has been registered with Route 53 ARC by Elastic Load Balancing. You // can start a zonal shift in Route 53 ARC for a managed resource to temporarily // move traffic for the resource away from an Availability Zone in an AWS Region. // // At this time, you can only start a zonal shift for Network Load Balancers // and Application Load Balancers with cross-zone load balancing turned off. type ManagedResourceSummary struct { _ struct{} `type:"structure"` // The Amazon Resource Name (ARN) for the managed resource. Arn *string `locationName:"arn" min:"8" type:"string"` // The Availability Zones that a resource is deployed in. // // AvailabilityZones is a required field AvailabilityZones []*string `locationName:"availabilityZones" type:"list" required:"true"` // The name of the managed resource. Name *string `locationName:"name" min:"1" type:"string"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s ManagedResourceSummary) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s ManagedResourceSummary) GoString() string { return s.String() } // SetArn sets the Arn field's value. func (s *ManagedResourceSummary) SetArn(v string) *ManagedResourceSummary { s.Arn = &v return s } // SetAvailabilityZones sets the AvailabilityZones field's value. func (s *ManagedResourceSummary) SetAvailabilityZones(v []*string) *ManagedResourceSummary { s.AvailabilityZones = v return s } // SetName sets the Name field's value. func (s *ManagedResourceSummary) SetName(v string) *ManagedResourceSummary { s.Name = &v return s } // The input requested a resource that was not found. type ResourceNotFoundException struct { _ struct{} `type:"structure"` RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` Message_ *string `locationName:"message" type:"string"` } // String returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s ResourceNotFoundException) String() string { return awsutil.Prettify(s) } // GoString returns the string representation. // // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". func (s ResourceNotFoundException) GoString() string { return s.String() } func newErrorResourceNotFoundException(v protocol.ResponseMetadata) error { return &ResourceNotFoundException{ RespMetadata: v, } } // Code returns the exception type name. func (s *ResourceNotFoundException) Code() string { return "ResourceNotFoundException" } // Message returns the exception's message. func (s *ResourceNotFoundException) Message() string { if s.Message_ != nil { return *s.Message_ } return "" } // OrigErr always returns nil, satisfies awserr.Error interface. func (s *ResourceNotFoundException) OrigErr() error { return nil } func (s *ResourceNotFoundException) Error() string { return fmt.Sprintf("%s: %s", s.Code(), s.Message()) } // Status code returns the HTTP status code for the request's response error. func (s *ResourceNotFoundException) StatusCode() int { return s.RespMetadata.StatusCode } // RequestID returns the service's response RequestID for request. func (s *ResourceNotFoundException) RequestID() string { return s.RespMetadata.RequestID } type StartZonalShiftInput struct { _ struct{} `type:"structure"` // The Availability Zone that traffic is moved away from for a resource when // you start a zonal shift. Until the zonal shift expires or you cancel it, // traffic for the resource is instead moved to other Availability Zones in // the AWS Region. // // AwayFrom is a required field AwayFrom *string `locationName:"awayFrom" type:"string" required:"true"` // A comment that you enter about the zonal shift. Only the latest comment is // retained; no comment history is maintained. A new comment overwrites any // existing comment string. // // Comment is a required field Comment *string `locationName:"comment" type:"string" required:"true"` // The length of time that you want a zonal shift to be active, which Route // 53 ARC converts to an expiry time (expiration time). Zonal shifts are temporary. // You can set a zonal shift to be active initially for up to three days (72 // hours). // // If you want to still keep traffic away from an Availability Zone, you can // update the zonal shift and set a new expiration. You can also cancel a zonal // shift, before it expires, for example, if you're ready to restore traffic // to the Availability Zone. // // To set a length of time for a zonal shift to be active, specify a whole number, // and then one of the following, with no space: // //
A lowercase letter m: To specify that the value is // in minutes.
A lowercase letter h: To specify // that the value is in hours.
For example: 20h
// means the zonal shift expires in 20 hours. 120m
means the
// zonal shift expires in 120 minutes (2 hours).