rclone/vendor/github.com/aws/aws-sdk-go/service/snowball/api.go

4510 lines
150 KiB
Go
Raw Normal View History

// Code generated by private/model/cli/gen-api/main.go. DO NOT EDIT.
package snowball
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"
)
const opCancelCluster = "CancelCluster"
// CancelClusterRequest generates a "aws/request.Request" representing the
// client's request for the CancelCluster operation. The "output" return
// value will be populated with the request's response once the request completes
// 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 CancelCluster for more information on using the CancelCluster
// 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 CancelClusterRequest method.
// req, resp := client.CancelClusterRequest(params)
//
// err := req.Send()
// if err == nil { // resp is now filled
// fmt.Println(resp)
// }
//
// See also, https://docs.aws.amazon.com/goto/WebAPI/snowball-2016-06-30/CancelCluster
func (c *Snowball) CancelClusterRequest(input *CancelClusterInput) (req *request.Request, output *CancelClusterOutput) {
op := &request.Operation{
Name: opCancelCluster,
HTTPMethod: "POST",
HTTPPath: "/",
}
if input == nil {
input = &CancelClusterInput{}
}
output = &CancelClusterOutput{}
req = c.newRequest(op, input, output)
return
}
// CancelCluster API operation for Amazon Import/Export Snowball.
//
// Cancels a cluster job. You can only cancel a cluster job while it's in the
// AwaitingQuorum status. You'll have at least an hour after creating a cluster
// job to cancel it.
//
// 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 Import/Export Snowball's
// API operation CancelCluster for usage and error information.
//
// Returned Error Codes:
// * ErrCodeKMSRequestFailedException "KMSRequestFailedException"
// The provided AWS Key Management Service key lacks the permissions to perform
// the specified CreateJob or UpdateJob action.
//
// * ErrCodeInvalidJobStateException "InvalidJobStateException"
// The action can't be performed because the job's current state doesn't allow
// that action to be performed.
//
// * ErrCodeInvalidResourceException "InvalidResourceException"
// The specified resource can't be found. Check the information you provided
// in your last request, and try again.
//
// See also, https://docs.aws.amazon.com/goto/WebAPI/snowball-2016-06-30/CancelCluster
func (c *Snowball) CancelCluster(input *CancelClusterInput) (*CancelClusterOutput, error) {
req, out := c.CancelClusterRequest(input)
return out, req.Send()
}
// CancelClusterWithContext is the same as CancelCluster with the addition of
// the ability to pass a context and additional request options.
//
// See CancelCluster 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 *Snowball) CancelClusterWithContext(ctx aws.Context, input *CancelClusterInput, opts ...request.Option) (*CancelClusterOutput, error) {
req, out := c.CancelClusterRequest(input)
req.SetContext(ctx)
req.ApplyOptions(opts...)
return out, req.Send()
}
const opCancelJob = "CancelJob"
// CancelJobRequest generates a "aws/request.Request" representing the
// client's request for the CancelJob operation. The "output" return
// value will be populated with the request's response once the request completes
// 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 CancelJob for more information on using the CancelJob
// 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 CancelJobRequest method.
// req, resp := client.CancelJobRequest(params)
//
// err := req.Send()
// if err == nil { // resp is now filled
// fmt.Println(resp)
// }
//
// See also, https://docs.aws.amazon.com/goto/WebAPI/snowball-2016-06-30/CancelJob
func (c *Snowball) CancelJobRequest(input *CancelJobInput) (req *request.Request, output *CancelJobOutput) {
op := &request.Operation{
Name: opCancelJob,
HTTPMethod: "POST",
HTTPPath: "/",
}
if input == nil {
input = &CancelJobInput{}
}
output = &CancelJobOutput{}
req = c.newRequest(op, input, output)
return
}
// CancelJob API operation for Amazon Import/Export Snowball.
//
// Cancels the specified job. You can only cancel a job before its JobState
// value changes to PreparingAppliance. Requesting the ListJobs or DescribeJob
// action will return a job's JobState as part of the response element data
// returned.
//
// 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 Import/Export Snowball's
// API operation CancelJob for usage and error information.
//
// Returned Error Codes:
// * ErrCodeInvalidResourceException "InvalidResourceException"
// The specified resource can't be found. Check the information you provided
// in your last request, and try again.
//
// * ErrCodeInvalidJobStateException "InvalidJobStateException"
// The action can't be performed because the job's current state doesn't allow
// that action to be performed.
//
// * ErrCodeKMSRequestFailedException "KMSRequestFailedException"
// The provided AWS Key Management Service key lacks the permissions to perform
// the specified CreateJob or UpdateJob action.
//
// See also, https://docs.aws.amazon.com/goto/WebAPI/snowball-2016-06-30/CancelJob
func (c *Snowball) CancelJob(input *CancelJobInput) (*CancelJobOutput, error) {
req, out := c.CancelJobRequest(input)
return out, req.Send()
}
// CancelJobWithContext is the same as CancelJob with the addition of
// the ability to pass a context and additional request options.
//
// See CancelJob 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 *Snowball) CancelJobWithContext(ctx aws.Context, input *CancelJobInput, opts ...request.Option) (*CancelJobOutput, error) {
req, out := c.CancelJobRequest(input)
req.SetContext(ctx)
req.ApplyOptions(opts...)
return out, req.Send()
}
const opCreateAddress = "CreateAddress"
// CreateAddressRequest generates a "aws/request.Request" representing the
// client's request for the CreateAddress operation. The "output" return
// value will be populated with the request's response once the request completes
// 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 CreateAddress for more information on using the CreateAddress
// 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 CreateAddressRequest method.
// req, resp := client.CreateAddressRequest(params)
//
// err := req.Send()
// if err == nil { // resp is now filled
// fmt.Println(resp)
// }
//
// See also, https://docs.aws.amazon.com/goto/WebAPI/snowball-2016-06-30/CreateAddress
func (c *Snowball) CreateAddressRequest(input *CreateAddressInput) (req *request.Request, output *CreateAddressOutput) {
op := &request.Operation{
Name: opCreateAddress,
HTTPMethod: "POST",
HTTPPath: "/",
}
if input == nil {
input = &CreateAddressInput{}
}
output = &CreateAddressOutput{}
req = c.newRequest(op, input, output)
return
}
// CreateAddress API operation for Amazon Import/Export Snowball.
//
// Creates an address for a Snowball to be shipped to. In most regions, addresses
// are validated at the time of creation. The address you provide must be located
// within the serviceable area of your region. If the address is invalid or
// unsupported, then an exception is thrown.
//
// 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 Import/Export Snowball's
// API operation CreateAddress for usage and error information.
//
// Returned Error Codes:
// * ErrCodeInvalidAddressException "InvalidAddressException"
// The address provided was invalid. Check the address with your region's carrier,
// and try again.
//
// * ErrCodeUnsupportedAddressException "UnsupportedAddressException"
// The address is either outside the serviceable area for your region, or an
// error occurred. Check the address with your region's carrier and try again.
// If the issue persists, contact AWS Support.
//
// See also, https://docs.aws.amazon.com/goto/WebAPI/snowball-2016-06-30/CreateAddress
func (c *Snowball) CreateAddress(input *CreateAddressInput) (*CreateAddressOutput, error) {
req, out := c.CreateAddressRequest(input)
return out, req.Send()
}
// CreateAddressWithContext is the same as CreateAddress with the addition of
// the ability to pass a context and additional request options.
//
// See CreateAddress 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 *Snowball) CreateAddressWithContext(ctx aws.Context, input *CreateAddressInput, opts ...request.Option) (*CreateAddressOutput, error) {
req, out := c.CreateAddressRequest(input)
req.SetContext(ctx)
req.ApplyOptions(opts...)
return out, req.Send()
}
const opCreateCluster = "CreateCluster"
// CreateClusterRequest generates a "aws/request.Request" representing the
// client's request for the CreateCluster operation. The "output" return
// value will be populated with the request's response once the request completes
// 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 CreateCluster for more information on using the CreateCluster
// 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 CreateClusterRequest method.
// req, resp := client.CreateClusterRequest(params)
//
// err := req.Send()
// if err == nil { // resp is now filled
// fmt.Println(resp)
// }
//
// See also, https://docs.aws.amazon.com/goto/WebAPI/snowball-2016-06-30/CreateCluster
func (c *Snowball) CreateClusterRequest(input *CreateClusterInput) (req *request.Request, output *CreateClusterOutput) {
op := &request.Operation{
Name: opCreateCluster,
HTTPMethod: "POST",
HTTPPath: "/",
}
if input == nil {
input = &CreateClusterInput{}
}
output = &CreateClusterOutput{}
req = c.newRequest(op, input, output)
return
}
// CreateCluster API operation for Amazon Import/Export Snowball.
//
// Creates an empty cluster. Each cluster supports five nodes. You use the CreateJob
// action separately to create the jobs for each of these nodes. The cluster
// does not ship until these five node jobs have been created.
//
// 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 Import/Export Snowball's
// API operation CreateCluster for usage and error information.
//
// Returned Error Codes:
// * ErrCodeInvalidResourceException "InvalidResourceException"
// The specified resource can't be found. Check the information you provided
// in your last request, and try again.
//
// * ErrCodeKMSRequestFailedException "KMSRequestFailedException"
// The provided AWS Key Management Service key lacks the permissions to perform
// the specified CreateJob or UpdateJob action.
//
// * ErrCodeInvalidInputCombinationException "InvalidInputCombinationException"
// Job or cluster creation failed. One ore more inputs were invalid. Confirm
// that the CreateClusterRequest$SnowballType value supports your CreateJobRequest$JobType,
// and try again.
//
// See also, https://docs.aws.amazon.com/goto/WebAPI/snowball-2016-06-30/CreateCluster
func (c *Snowball) CreateCluster(input *CreateClusterInput) (*CreateClusterOutput, error) {
req, out := c.CreateClusterRequest(input)
return out, req.Send()
}
// CreateClusterWithContext is the same as CreateCluster with the addition of
// the ability to pass a context and additional request options.
//
// See CreateCluster 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 *Snowball) CreateClusterWithContext(ctx aws.Context, input *CreateClusterInput, opts ...request.Option) (*CreateClusterOutput, error) {
req, out := c.CreateClusterRequest(input)
req.SetContext(ctx)
req.ApplyOptions(opts...)
return out, req.Send()
}
const opCreateJob = "CreateJob"
// CreateJobRequest generates a "aws/request.Request" representing the
// client's request for the CreateJob operation. The "output" return
// value will be populated with the request's response once the request completes
// 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 CreateJob for more information on using the CreateJob
// 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 CreateJobRequest method.
// req, resp := client.CreateJobRequest(params)
//
// err := req.Send()
// if err == nil { // resp is now filled
// fmt.Println(resp)
// }
//
// See also, https://docs.aws.amazon.com/goto/WebAPI/snowball-2016-06-30/CreateJob
func (c *Snowball) CreateJobRequest(input *CreateJobInput) (req *request.Request, output *CreateJobOutput) {
op := &request.Operation{
Name: opCreateJob,
HTTPMethod: "POST",
HTTPPath: "/",
}
if input == nil {
input = &CreateJobInput{}
}
output = &CreateJobOutput{}
req = c.newRequest(op, input, output)
return
}
// CreateJob API operation for Amazon Import/Export Snowball.
//
// Creates a job to import or export data between Amazon S3 and your on-premises
// data center. Your AWS account must have the right trust policies and permissions
// in place to create a job for Snowball. If you're creating a job for a node
// in a cluster, you only need to provide the clusterId value; the other job
// attributes are inherited from the cluster.
//
// 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 Import/Export Snowball's
// API operation CreateJob for usage and error information.
//
// Returned Error Codes:
// * ErrCodeInvalidResourceException "InvalidResourceException"
// The specified resource can't be found. Check the information you provided
// in your last request, and try again.
//
// * ErrCodeKMSRequestFailedException "KMSRequestFailedException"
// The provided AWS Key Management Service key lacks the permissions to perform
// the specified CreateJob or UpdateJob action.
//
// * ErrCodeInvalidInputCombinationException "InvalidInputCombinationException"
// Job or cluster creation failed. One ore more inputs were invalid. Confirm
// that the CreateClusterRequest$SnowballType value supports your CreateJobRequest$JobType,
// and try again.
//
// * ErrCodeClusterLimitExceededException "ClusterLimitExceededException"
// Job creation failed. Currently, clusters support five nodes. If you have
// less than five nodes for your cluster and you have more nodes to create for
// this cluster, try again and create jobs until your cluster has exactly five
// notes.
//
// See also, https://docs.aws.amazon.com/goto/WebAPI/snowball-2016-06-30/CreateJob
func (c *Snowball) CreateJob(input *CreateJobInput) (*CreateJobOutput, error) {
req, out := c.CreateJobRequest(input)
return out, req.Send()
}
// CreateJobWithContext is the same as CreateJob with the addition of
// the ability to pass a context and additional request options.
//
// See CreateJob 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 *Snowball) CreateJobWithContext(ctx aws.Context, input *CreateJobInput, opts ...request.Option) (*CreateJobOutput, error) {
req, out := c.CreateJobRequest(input)
req.SetContext(ctx)
req.ApplyOptions(opts...)
return out, req.Send()
}
const opDescribeAddress = "DescribeAddress"
// DescribeAddressRequest generates a "aws/request.Request" representing the
// client's request for the DescribeAddress operation. The "output" return
// value will be populated with the request's response once the request completes
// 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 DescribeAddress for more information on using the DescribeAddress
// 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 DescribeAddressRequest method.
// req, resp := client.DescribeAddressRequest(params)
//
// err := req.Send()
// if err == nil { // resp is now filled
// fmt.Println(resp)
// }
//
// See also, https://docs.aws.amazon.com/goto/WebAPI/snowball-2016-06-30/DescribeAddress
func (c *Snowball) DescribeAddressRequest(input *DescribeAddressInput) (req *request.Request, output *DescribeAddressOutput) {
op := &request.Operation{
Name: opDescribeAddress,
HTTPMethod: "POST",
HTTPPath: "/",
}
if input == nil {
input = &DescribeAddressInput{}
}
output = &DescribeAddressOutput{}
req = c.newRequest(op, input, output)
return
}
// DescribeAddress API operation for Amazon Import/Export Snowball.
//
// Takes an AddressId and returns specific details about that address in the
// form of an Address object.
//
// 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 Import/Export Snowball's
// API operation DescribeAddress for usage and error information.
//
// Returned Error Codes:
// * ErrCodeInvalidResourceException "InvalidResourceException"
// The specified resource can't be found. Check the information you provided
// in your last request, and try again.
//
// See also, https://docs.aws.amazon.com/goto/WebAPI/snowball-2016-06-30/DescribeAddress
func (c *Snowball) DescribeAddress(input *DescribeAddressInput) (*DescribeAddressOutput, error) {
req, out := c.DescribeAddressRequest(input)
return out, req.Send()
}
// DescribeAddressWithContext is the same as DescribeAddress with the addition of
// the ability to pass a context and additional request options.
//
// See DescribeAddress 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 *Snowball) DescribeAddressWithContext(ctx aws.Context, input *DescribeAddressInput, opts ...request.Option) (*DescribeAddressOutput, error) {
req, out := c.DescribeAddressRequest(input)
req.SetContext(ctx)
req.ApplyOptions(opts...)
return out, req.Send()
}
const opDescribeAddresses = "DescribeAddresses"
// DescribeAddressesRequest generates a "aws/request.Request" representing the
// client's request for the DescribeAddresses operation. The "output" return
// value will be populated with the request's response once the request completes
// 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 DescribeAddresses for more information on using the DescribeAddresses
// 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 DescribeAddressesRequest method.
// req, resp := client.DescribeAddressesRequest(params)
//
// err := req.Send()
// if err == nil { // resp is now filled
// fmt.Println(resp)
// }
//
// See also, https://docs.aws.amazon.com/goto/WebAPI/snowball-2016-06-30/DescribeAddresses
func (c *Snowball) DescribeAddressesRequest(input *DescribeAddressesInput) (req *request.Request, output *DescribeAddressesOutput) {
op := &request.Operation{
Name: opDescribeAddresses,
HTTPMethod: "POST",
HTTPPath: "/",
Paginator: &request.Paginator{
InputTokens: []string{"NextToken"},
OutputTokens: []string{"NextToken"},
LimitToken: "MaxResults",
TruncationToken: "",
},
}
if input == nil {
input = &DescribeAddressesInput{}
}
output = &DescribeAddressesOutput{}
req = c.newRequest(op, input, output)
return
}
// DescribeAddresses API operation for Amazon Import/Export Snowball.
//
// Returns a specified number of ADDRESS objects. Calling this API in one of
// the US regions will return addresses from the list of all addresses associated
// with this account in all US regions.
//
// 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 Import/Export Snowball's
// API operation DescribeAddresses for usage and error information.
//
// Returned Error Codes:
// * ErrCodeInvalidResourceException "InvalidResourceException"
// The specified resource can't be found. Check the information you provided
// in your last request, and try again.
//
// * ErrCodeInvalidNextTokenException "InvalidNextTokenException"
// The NextToken string was altered unexpectedly, and the operation has stopped.
// Run the operation without changing the NextToken string, and try again.
//
// See also, https://docs.aws.amazon.com/goto/WebAPI/snowball-2016-06-30/DescribeAddresses
func (c *Snowball) DescribeAddresses(input *DescribeAddressesInput) (*DescribeAddressesOutput, error) {
req, out := c.DescribeAddressesRequest(input)
return out, req.Send()
}
// DescribeAddressesWithContext is the same as DescribeAddresses with the addition of
// the ability to pass a context and additional request options.
//
// See DescribeAddresses 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 *Snowball) DescribeAddressesWithContext(ctx aws.Context, input *DescribeAddressesInput, opts ...request.Option) (*DescribeAddressesOutput, error) {
req, out := c.DescribeAddressesRequest(input)
req.SetContext(ctx)
req.ApplyOptions(opts...)
return out, req.Send()
}
// DescribeAddressesPages iterates over the pages of a DescribeAddresses operation,
// calling the "fn" function with the response data for each page. To stop
// iterating, return false from the fn function.
//
// See DescribeAddresses 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 DescribeAddresses operation.
// pageNum := 0
// err := client.DescribeAddressesPages(params,
// func(page *DescribeAddressesOutput, lastPage bool) bool {
// pageNum++
// fmt.Println(page)
// return pageNum <= 3
// })
//
func (c *Snowball) DescribeAddressesPages(input *DescribeAddressesInput, fn func(*DescribeAddressesOutput, bool) bool) error {
return c.DescribeAddressesPagesWithContext(aws.BackgroundContext(), input, fn)
}
// DescribeAddressesPagesWithContext same as DescribeAddressesPages 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 *Snowball) DescribeAddressesPagesWithContext(ctx aws.Context, input *DescribeAddressesInput, fn func(*DescribeAddressesOutput, bool) bool, opts ...request.Option) error {
p := request.Pagination{
NewRequest: func() (*request.Request, error) {
var inCpy *DescribeAddressesInput
if input != nil {
tmp := *input
inCpy = &tmp
}
req, _ := c.DescribeAddressesRequest(inCpy)
req.SetContext(ctx)
req.ApplyOptions(opts...)
return req, nil
},
}
cont := true
for p.Next() && cont {
cont = fn(p.Page().(*DescribeAddressesOutput), !p.HasNextPage())
}
return p.Err()
}
const opDescribeCluster = "DescribeCluster"
// DescribeClusterRequest generates a "aws/request.Request" representing the
// client's request for the DescribeCluster operation. The "output" return
// value will be populated with the request's response once the request completes
// 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 DescribeCluster for more information on using the DescribeCluster
// 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 DescribeClusterRequest method.
// req, resp := client.DescribeClusterRequest(params)
//
// err := req.Send()
// if err == nil { // resp is now filled
// fmt.Println(resp)
// }
//
// See also, https://docs.aws.amazon.com/goto/WebAPI/snowball-2016-06-30/DescribeCluster
func (c *Snowball) DescribeClusterRequest(input *DescribeClusterInput) (req *request.Request, output *DescribeClusterOutput) {
op := &request.Operation{
Name: opDescribeCluster,
HTTPMethod: "POST",
HTTPPath: "/",
}
if input == nil {
input = &DescribeClusterInput{}
}
output = &DescribeClusterOutput{}
req = c.newRequest(op, input, output)
return
}
// DescribeCluster API operation for Amazon Import/Export Snowball.
//
// Returns information about a specific cluster including shipping information,
// cluster status, and other important metadata.
//
// 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 Import/Export Snowball's
// API operation DescribeCluster for usage and error information.
//
// Returned Error Codes:
// * ErrCodeInvalidResourceException "InvalidResourceException"
// The specified resource can't be found. Check the information you provided
// in your last request, and try again.
//
// See also, https://docs.aws.amazon.com/goto/WebAPI/snowball-2016-06-30/DescribeCluster
func (c *Snowball) DescribeCluster(input *DescribeClusterInput) (*DescribeClusterOutput, error) {
req, out := c.DescribeClusterRequest(input)
return out, req.Send()
}
// DescribeClusterWithContext is the same as DescribeCluster with the addition of
// the ability to pass a context and additional request options.
//
// See DescribeCluster 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 *Snowball) DescribeClusterWithContext(ctx aws.Context, input *DescribeClusterInput, opts ...request.Option) (*DescribeClusterOutput, error) {
req, out := c.DescribeClusterRequest(input)
req.SetContext(ctx)
req.ApplyOptions(opts...)
return out, req.Send()
}
const opDescribeJob = "DescribeJob"
// DescribeJobRequest generates a "aws/request.Request" representing the
// client's request for the DescribeJob operation. The "output" return
// value will be populated with the request's response once the request completes
// 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 DescribeJob for more information on using the DescribeJob
// 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 DescribeJobRequest method.
// req, resp := client.DescribeJobRequest(params)
//
// err := req.Send()
// if err == nil { // resp is now filled
// fmt.Println(resp)
// }
//
// See also, https://docs.aws.amazon.com/goto/WebAPI/snowball-2016-06-30/DescribeJob
func (c *Snowball) DescribeJobRequest(input *DescribeJobInput) (req *request.Request, output *DescribeJobOutput) {
op := &request.Operation{
Name: opDescribeJob,
HTTPMethod: "POST",
HTTPPath: "/",
}
if input == nil {
input = &DescribeJobInput{}
}
output = &DescribeJobOutput{}
req = c.newRequest(op, input, output)
return
}
// DescribeJob API operation for Amazon Import/Export Snowball.
//
// Returns information about a specific job including shipping information,
// job status, and other important metadata.
//
// 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 Import/Export Snowball's
// API operation DescribeJob for usage and error information.
//
// Returned Error Codes:
// * ErrCodeInvalidResourceException "InvalidResourceException"
// The specified resource can't be found. Check the information you provided
// in your last request, and try again.
//
// See also, https://docs.aws.amazon.com/goto/WebAPI/snowball-2016-06-30/DescribeJob
func (c *Snowball) DescribeJob(input *DescribeJobInput) (*DescribeJobOutput, error) {
req, out := c.DescribeJobRequest(input)
return out, req.Send()
}
// DescribeJobWithContext is the same as DescribeJob with the addition of
// the ability to pass a context and additional request options.
//
// See DescribeJob 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 *Snowball) DescribeJobWithContext(ctx aws.Context, input *DescribeJobInput, opts ...request.Option) (*DescribeJobOutput, error) {
req, out := c.DescribeJobRequest(input)
req.SetContext(ctx)
req.ApplyOptions(opts...)
return out, req.Send()
}
const opGetJobManifest = "GetJobManifest"
// GetJobManifestRequest generates a "aws/request.Request" representing the
// client's request for the GetJobManifest operation. The "output" return
// value will be populated with the request's response once the request completes
// 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 GetJobManifest for more information on using the GetJobManifest
// 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 GetJobManifestRequest method.
// req, resp := client.GetJobManifestRequest(params)
//
// err := req.Send()
// if err == nil { // resp is now filled
// fmt.Println(resp)
// }
//
// See also, https://docs.aws.amazon.com/goto/WebAPI/snowball-2016-06-30/GetJobManifest
func (c *Snowball) GetJobManifestRequest(input *GetJobManifestInput) (req *request.Request, output *GetJobManifestOutput) {
op := &request.Operation{
Name: opGetJobManifest,
HTTPMethod: "POST",
HTTPPath: "/",
}
if input == nil {
input = &GetJobManifestInput{}
}
output = &GetJobManifestOutput{}
req = c.newRequest(op, input, output)
return
}
// GetJobManifest API operation for Amazon Import/Export Snowball.
//
// Returns a link to an Amazon S3 presigned URL for the manifest file associated
// with the specified JobId value. You can access the manifest file for up to
// 60 minutes after this request has been made. To access the manifest file
// after 60 minutes have passed, you'll have to make another call to the GetJobManifest
// action.
//
// The manifest is an encrypted file that you can download after your job enters
// the WithCustomer status. The manifest is decrypted by using the UnlockCode
// code value, when you pass both values to the Snowball through the Snowball
// client when the client is started for the first time.
//
// As a best practice, we recommend that you don't save a copy of an UnlockCode
// value in the same location as the manifest file for that job. Saving these
// separately helps prevent unauthorized parties from gaining access to the
// Snowball associated with that job.
//
// The credentials of a given job, including its manifest file and unlock code,
// expire 90 days after the job is created.
//
// 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 Import/Export Snowball's
// API operation GetJobManifest for usage and error information.
//
// Returned Error Codes:
// * ErrCodeInvalidResourceException "InvalidResourceException"
// The specified resource can't be found. Check the information you provided
// in your last request, and try again.
//
// * ErrCodeInvalidJobStateException "InvalidJobStateException"
// The action can't be performed because the job's current state doesn't allow
// that action to be performed.
//
// See also, https://docs.aws.amazon.com/goto/WebAPI/snowball-2016-06-30/GetJobManifest
func (c *Snowball) GetJobManifest(input *GetJobManifestInput) (*GetJobManifestOutput, error) {
req, out := c.GetJobManifestRequest(input)
return out, req.Send()
}
// GetJobManifestWithContext is the same as GetJobManifest with the addition of
// the ability to pass a context and additional request options.
//
// See GetJobManifest 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 *Snowball) GetJobManifestWithContext(ctx aws.Context, input *GetJobManifestInput, opts ...request.Option) (*GetJobManifestOutput, error) {
req, out := c.GetJobManifestRequest(input)
req.SetContext(ctx)
req.ApplyOptions(opts...)
return out, req.Send()
}
const opGetJobUnlockCode = "GetJobUnlockCode"
// GetJobUnlockCodeRequest generates a "aws/request.Request" representing the
// client's request for the GetJobUnlockCode operation. The "output" return
// value will be populated with the request's response once the request completes
// 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 GetJobUnlockCode for more information on using the GetJobUnlockCode
// 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 GetJobUnlockCodeRequest method.
// req, resp := client.GetJobUnlockCodeRequest(params)
//
// err := req.Send()
// if err == nil { // resp is now filled
// fmt.Println(resp)
// }
//
// See also, https://docs.aws.amazon.com/goto/WebAPI/snowball-2016-06-30/GetJobUnlockCode
func (c *Snowball) GetJobUnlockCodeRequest(input *GetJobUnlockCodeInput) (req *request.Request, output *GetJobUnlockCodeOutput) {
op := &request.Operation{
Name: opGetJobUnlockCode,
HTTPMethod: "POST",
HTTPPath: "/",
}
if input == nil {
input = &GetJobUnlockCodeInput{}
}
output = &GetJobUnlockCodeOutput{}
req = c.newRequest(op, input, output)
return
}
// GetJobUnlockCode API operation for Amazon Import/Export Snowball.
//
// Returns the UnlockCode code value for the specified job. A particular UnlockCode
// value can be accessed for up to 90 days after the associated job has been
// created.
//
// The UnlockCode value is a 29-character code with 25 alphanumeric characters
// and 4 hyphens. This code is used to decrypt the manifest file when it is
// passed along with the manifest to the Snowball through the Snowball client
// when the client is started for the first time.
//
// As a best practice, we recommend that you don't save a copy of the UnlockCode
// in the same location as the manifest file for that job. Saving these separately
// helps prevent unauthorized parties from gaining access to the Snowball associated
// with that job.
//
// 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 Import/Export Snowball's
// API operation GetJobUnlockCode for usage and error information.
//
// Returned Error Codes:
// * ErrCodeInvalidResourceException "InvalidResourceException"
// The specified resource can't be found. Check the information you provided
// in your last request, and try again.
//
// * ErrCodeInvalidJobStateException "InvalidJobStateException"
// The action can't be performed because the job's current state doesn't allow
// that action to be performed.
//
// See also, https://docs.aws.amazon.com/goto/WebAPI/snowball-2016-06-30/GetJobUnlockCode
func (c *Snowball) GetJobUnlockCode(input *GetJobUnlockCodeInput) (*GetJobUnlockCodeOutput, error) {
req, out := c.GetJobUnlockCodeRequest(input)
return out, req.Send()
}
// GetJobUnlockCodeWithContext is the same as GetJobUnlockCode with the addition of
// the ability to pass a context and additional request options.
//
// See GetJobUnlockCode 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 *Snowball) GetJobUnlockCodeWithContext(ctx aws.Context, input *GetJobUnlockCodeInput, opts ...request.Option) (*GetJobUnlockCodeOutput, error) {
req, out := c.GetJobUnlockCodeRequest(input)
req.SetContext(ctx)
req.ApplyOptions(opts...)
return out, req.Send()
}
const opGetSnowballUsage = "GetSnowballUsage"
// GetSnowballUsageRequest generates a "aws/request.Request" representing the
// client's request for the GetSnowballUsage operation. The "output" return
// value will be populated with the request's response once the request completes
// 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 GetSnowballUsage for more information on using the GetSnowballUsage
// 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 GetSnowballUsageRequest method.
// req, resp := client.GetSnowballUsageRequest(params)
//
// err := req.Send()
// if err == nil { // resp is now filled
// fmt.Println(resp)
// }
//
// See also, https://docs.aws.amazon.com/goto/WebAPI/snowball-2016-06-30/GetSnowballUsage
func (c *Snowball) GetSnowballUsageRequest(input *GetSnowballUsageInput) (req *request.Request, output *GetSnowballUsageOutput) {
op := &request.Operation{
Name: opGetSnowballUsage,
HTTPMethod: "POST",
HTTPPath: "/",
}
if input == nil {
input = &GetSnowballUsageInput{}
}
output = &GetSnowballUsageOutput{}
req = c.newRequest(op, input, output)
return
}
// GetSnowballUsage API operation for Amazon Import/Export Snowball.
//
// Returns information about the Snowball service limit for your account, and
// also the number of Snowballs your account has in use.
//
// The default service limit for the number of Snowballs that you can have at
// one time is 1. If you want to increase your service limit, contact AWS Support.
//
// 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 Import/Export Snowball's
// API operation GetSnowballUsage for usage and error information.
// See also, https://docs.aws.amazon.com/goto/WebAPI/snowball-2016-06-30/GetSnowballUsage
func (c *Snowball) GetSnowballUsage(input *GetSnowballUsageInput) (*GetSnowballUsageOutput, error) {
req, out := c.GetSnowballUsageRequest(input)
return out, req.Send()
}
// GetSnowballUsageWithContext is the same as GetSnowballUsage with the addition of
// the ability to pass a context and additional request options.
//
// See GetSnowballUsage 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 *Snowball) GetSnowballUsageWithContext(ctx aws.Context, input *GetSnowballUsageInput, opts ...request.Option) (*GetSnowballUsageOutput, error) {
req, out := c.GetSnowballUsageRequest(input)
req.SetContext(ctx)
req.ApplyOptions(opts...)
return out, req.Send()
}
const opListClusterJobs = "ListClusterJobs"
// ListClusterJobsRequest generates a "aws/request.Request" representing the
// client's request for the ListClusterJobs operation. The "output" return
// value will be populated with the request's response once the request completes
// 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 ListClusterJobs for more information on using the ListClusterJobs
// 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 ListClusterJobsRequest method.
// req, resp := client.ListClusterJobsRequest(params)
//
// err := req.Send()
// if err == nil { // resp is now filled
// fmt.Println(resp)
// }
//
// See also, https://docs.aws.amazon.com/goto/WebAPI/snowball-2016-06-30/ListClusterJobs
func (c *Snowball) ListClusterJobsRequest(input *ListClusterJobsInput) (req *request.Request, output *ListClusterJobsOutput) {
op := &request.Operation{
Name: opListClusterJobs,
HTTPMethod: "POST",
HTTPPath: "/",
}
if input == nil {
input = &ListClusterJobsInput{}
}
output = &ListClusterJobsOutput{}
req = c.newRequest(op, input, output)
return
}
// ListClusterJobs API operation for Amazon Import/Export Snowball.
//
// Returns an array of JobListEntry objects of the specified length. Each JobListEntry
// object is for a job in the specified cluster and contains a job's state,
// a job's ID, and other information.
//
// 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 Import/Export Snowball's
// API operation ListClusterJobs for usage and error information.
//
// Returned Error Codes:
// * ErrCodeInvalidResourceException "InvalidResourceException"
// The specified resource can't be found. Check the information you provided
// in your last request, and try again.
//
// * ErrCodeInvalidNextTokenException "InvalidNextTokenException"
// The NextToken string was altered unexpectedly, and the operation has stopped.
// Run the operation without changing the NextToken string, and try again.
//
// See also, https://docs.aws.amazon.com/goto/WebAPI/snowball-2016-06-30/ListClusterJobs
func (c *Snowball) ListClusterJobs(input *ListClusterJobsInput) (*ListClusterJobsOutput, error) {
req, out := c.ListClusterJobsRequest(input)
return out, req.Send()
}
// ListClusterJobsWithContext is the same as ListClusterJobs with the addition of
// the ability to pass a context and additional request options.
//
// See ListClusterJobs 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 *Snowball) ListClusterJobsWithContext(ctx aws.Context, input *ListClusterJobsInput, opts ...request.Option) (*ListClusterJobsOutput, error) {
req, out := c.ListClusterJobsRequest(input)
req.SetContext(ctx)
req.ApplyOptions(opts...)
return out, req.Send()
}
const opListClusters = "ListClusters"
// ListClustersRequest generates a "aws/request.Request" representing the
// client's request for the ListClusters operation. The "output" return
// value will be populated with the request's response once the request completes
// 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 ListClusters for more information on using the ListClusters
// 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 ListClustersRequest method.
// req, resp := client.ListClustersRequest(params)
//
// err := req.Send()
// if err == nil { // resp is now filled
// fmt.Println(resp)
// }
//
// See also, https://docs.aws.amazon.com/goto/WebAPI/snowball-2016-06-30/ListClusters
func (c *Snowball) ListClustersRequest(input *ListClustersInput) (req *request.Request, output *ListClustersOutput) {
op := &request.Operation{
Name: opListClusters,
HTTPMethod: "POST",
HTTPPath: "/",
}
if input == nil {
input = &ListClustersInput{}
}
output = &ListClustersOutput{}
req = c.newRequest(op, input, output)
return
}
// ListClusters API operation for Amazon Import/Export Snowball.
//
// Returns an array of ClusterListEntry objects of the specified length. Each
// ClusterListEntry object contains a cluster's state, a cluster's ID, and other
// important status information.
//
// 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 Import/Export Snowball's
// API operation ListClusters for usage and error information.
//
// Returned Error Codes:
// * ErrCodeInvalidNextTokenException "InvalidNextTokenException"
// The NextToken string was altered unexpectedly, and the operation has stopped.
// Run the operation without changing the NextToken string, and try again.
//
// See also, https://docs.aws.amazon.com/goto/WebAPI/snowball-2016-06-30/ListClusters
func (c *Snowball) ListClusters(input *ListClustersInput) (*ListClustersOutput, error) {
req, out := c.ListClustersRequest(input)
return out, req.Send()
}
// ListClustersWithContext is the same as ListClusters with the addition of
// the ability to pass a context and additional request options.
//
// See ListClusters 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 *Snowball) ListClustersWithContext(ctx aws.Context, input *ListClustersInput, opts ...request.Option) (*ListClustersOutput, error) {
req, out := c.ListClustersRequest(input)
req.SetContext(ctx)
req.ApplyOptions(opts...)
return out, req.Send()
}
const opListJobs = "ListJobs"
// ListJobsRequest generates a "aws/request.Request" representing the
// client's request for the ListJobs operation. The "output" return
// value will be populated with the request's response once the request completes
// 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 ListJobs for more information on using the ListJobs
// 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 ListJobsRequest method.
// req, resp := client.ListJobsRequest(params)
//
// err := req.Send()
// if err == nil { // resp is now filled
// fmt.Println(resp)
// }
//
// See also, https://docs.aws.amazon.com/goto/WebAPI/snowball-2016-06-30/ListJobs
func (c *Snowball) ListJobsRequest(input *ListJobsInput) (req *request.Request, output *ListJobsOutput) {
op := &request.Operation{
Name: opListJobs,
HTTPMethod: "POST",
HTTPPath: "/",
Paginator: &request.Paginator{
InputTokens: []string{"NextToken"},
OutputTokens: []string{"NextToken"},
LimitToken: "MaxResults",
TruncationToken: "",
},
}
if input == nil {
input = &ListJobsInput{}
}
output = &ListJobsOutput{}
req = c.newRequest(op, input, output)
return
}
// ListJobs API operation for Amazon Import/Export Snowball.
//
// Returns an array of JobListEntry objects of the specified length. Each JobListEntry
// object contains a job's state, a job's ID, and a value that indicates whether
// the job is a job part, in the case of export jobs. Calling this API action
// in one of the US regions will return jobs from the list of all jobs associated
// with this account in all US regions.
//
// 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 Import/Export Snowball's
// API operation ListJobs for usage and error information.
//
// Returned Error Codes:
// * ErrCodeInvalidNextTokenException "InvalidNextTokenException"
// The NextToken string was altered unexpectedly, and the operation has stopped.
// Run the operation without changing the NextToken string, and try again.
//
// See also, https://docs.aws.amazon.com/goto/WebAPI/snowball-2016-06-30/ListJobs
func (c *Snowball) ListJobs(input *ListJobsInput) (*ListJobsOutput, error) {
req, out := c.ListJobsRequest(input)
return out, req.Send()
}
// ListJobsWithContext is the same as ListJobs with the addition of
// the ability to pass a context and additional request options.
//
// See ListJobs 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 *Snowball) ListJobsWithContext(ctx aws.Context, input *ListJobsInput, opts ...request.Option) (*ListJobsOutput, error) {
req, out := c.ListJobsRequest(input)
req.SetContext(ctx)
req.ApplyOptions(opts...)
return out, req.Send()
}
// ListJobsPages iterates over the pages of a ListJobs operation,
// calling the "fn" function with the response data for each page. To stop
// iterating, return false from the fn function.
//
// See ListJobs 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 ListJobs operation.
// pageNum := 0
// err := client.ListJobsPages(params,
// func(page *ListJobsOutput, lastPage bool) bool {
// pageNum++
// fmt.Println(page)
// return pageNum <= 3
// })
//
func (c *Snowball) ListJobsPages(input *ListJobsInput, fn func(*ListJobsOutput, bool) bool) error {
return c.ListJobsPagesWithContext(aws.BackgroundContext(), input, fn)
}
// ListJobsPagesWithContext same as ListJobsPages 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 *Snowball) ListJobsPagesWithContext(ctx aws.Context, input *ListJobsInput, fn func(*ListJobsOutput, bool) bool, opts ...request.Option) error {
p := request.Pagination{
NewRequest: func() (*request.Request, error) {
var inCpy *ListJobsInput
if input != nil {
tmp := *input
inCpy = &tmp
}
req, _ := c.ListJobsRequest(inCpy)
req.SetContext(ctx)
req.ApplyOptions(opts...)
return req, nil
},
}
cont := true
for p.Next() && cont {
cont = fn(p.Page().(*ListJobsOutput), !p.HasNextPage())
}
return p.Err()
}
const opUpdateCluster = "UpdateCluster"
// UpdateClusterRequest generates a "aws/request.Request" representing the
// client's request for the UpdateCluster operation. The "output" return
// value will be populated with the request's response once the request completes
// 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 UpdateCluster for more information on using the UpdateCluster
// 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 UpdateClusterRequest method.
// req, resp := client.UpdateClusterRequest(params)
//
// err := req.Send()
// if err == nil { // resp is now filled
// fmt.Println(resp)
// }
//
// See also, https://docs.aws.amazon.com/goto/WebAPI/snowball-2016-06-30/UpdateCluster
func (c *Snowball) UpdateClusterRequest(input *UpdateClusterInput) (req *request.Request, output *UpdateClusterOutput) {
op := &request.Operation{
Name: opUpdateCluster,
HTTPMethod: "POST",
HTTPPath: "/",
}
if input == nil {
input = &UpdateClusterInput{}
}
output = &UpdateClusterOutput{}
req = c.newRequest(op, input, output)
return
}
// UpdateCluster API operation for Amazon Import/Export Snowball.
//
// While a cluster's ClusterState value is in the AwaitingQuorum state, you
// can update some of the information associated with a cluster. Once the cluster
// changes to a different job state, usually 60 minutes after the cluster being
// created, this action is no longer available.
//
// 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 Import/Export Snowball's
// API operation UpdateCluster for usage and error information.
//
// Returned Error Codes:
// * ErrCodeInvalidResourceException "InvalidResourceException"
// The specified resource can't be found. Check the information you provided
// in your last request, and try again.
//
// * ErrCodeInvalidJobStateException "InvalidJobStateException"
// The action can't be performed because the job's current state doesn't allow
// that action to be performed.
//
// * ErrCodeKMSRequestFailedException "KMSRequestFailedException"
// The provided AWS Key Management Service key lacks the permissions to perform
// the specified CreateJob or UpdateJob action.
//
// * ErrCodeInvalidInputCombinationException "InvalidInputCombinationException"
// Job or cluster creation failed. One ore more inputs were invalid. Confirm
// that the CreateClusterRequest$SnowballType value supports your CreateJobRequest$JobType,
// and try again.
//
// See also, https://docs.aws.amazon.com/goto/WebAPI/snowball-2016-06-30/UpdateCluster
func (c *Snowball) UpdateCluster(input *UpdateClusterInput) (*UpdateClusterOutput, error) {
req, out := c.UpdateClusterRequest(input)
return out, req.Send()
}
// UpdateClusterWithContext is the same as UpdateCluster with the addition of
// the ability to pass a context and additional request options.
//
// See UpdateCluster 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 *Snowball) UpdateClusterWithContext(ctx aws.Context, input *UpdateClusterInput, opts ...request.Option) (*UpdateClusterOutput, error) {
req, out := c.UpdateClusterRequest(input)
req.SetContext(ctx)
req.ApplyOptions(opts...)
return out, req.Send()
}
const opUpdateJob = "UpdateJob"
// UpdateJobRequest generates a "aws/request.Request" representing the
// client's request for the UpdateJob operation. The "output" return
// value will be populated with the request's response once the request completes
// 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 UpdateJob for more information on using the UpdateJob
// 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 UpdateJobRequest method.
// req, resp := client.UpdateJobRequest(params)
//
// err := req.Send()
// if err == nil { // resp is now filled
// fmt.Println(resp)
// }
//
// See also, https://docs.aws.amazon.com/goto/WebAPI/snowball-2016-06-30/UpdateJob
func (c *Snowball) UpdateJobRequest(input *UpdateJobInput) (req *request.Request, output *UpdateJobOutput) {
op := &request.Operation{
Name: opUpdateJob,
HTTPMethod: "POST",
HTTPPath: "/",
}
if input == nil {
input = &UpdateJobInput{}
}
output = &UpdateJobOutput{}
req = c.newRequest(op, input, output)
return
}
// UpdateJob API operation for Amazon Import/Export Snowball.
//
// While a job's JobState value is New, you can update some of the information
// associated with a job. Once the job changes to a different job state, usually
// within 60 minutes of the job being created, this action is no longer available.
//
// 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 Import/Export Snowball's
// API operation UpdateJob for usage and error information.
//
// Returned Error Codes:
// * ErrCodeInvalidResourceException "InvalidResourceException"
// The specified resource can't be found. Check the information you provided
// in your last request, and try again.
//
// * ErrCodeInvalidJobStateException "InvalidJobStateException"
// The action can't be performed because the job's current state doesn't allow
// that action to be performed.
//
// * ErrCodeKMSRequestFailedException "KMSRequestFailedException"
// The provided AWS Key Management Service key lacks the permissions to perform
// the specified CreateJob or UpdateJob action.
//
// * ErrCodeInvalidInputCombinationException "InvalidInputCombinationException"
// Job or cluster creation failed. One ore more inputs were invalid. Confirm
// that the CreateClusterRequest$SnowballType value supports your CreateJobRequest$JobType,
// and try again.
//
// * ErrCodeClusterLimitExceededException "ClusterLimitExceededException"
// Job creation failed. Currently, clusters support five nodes. If you have
// less than five nodes for your cluster and you have more nodes to create for
// this cluster, try again and create jobs until your cluster has exactly five
// notes.
//
// See also, https://docs.aws.amazon.com/goto/WebAPI/snowball-2016-06-30/UpdateJob
func (c *Snowball) UpdateJob(input *UpdateJobInput) (*UpdateJobOutput, error) {
req, out := c.UpdateJobRequest(input)
return out, req.Send()
}
// UpdateJobWithContext is the same as UpdateJob with the addition of
// the ability to pass a context and additional request options.
//
// See UpdateJob 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 *Snowball) UpdateJobWithContext(ctx aws.Context, input *UpdateJobInput, opts ...request.Option) (*UpdateJobOutput, error) {
req, out := c.UpdateJobRequest(input)
req.SetContext(ctx)
req.ApplyOptions(opts...)
return out, req.Send()
}
// The address that you want the Snowball or Snowballs associated with a specific
// job to be shipped to. Addresses are validated at the time of creation. The
// address you provide must be located within the serviceable area of your region.
// Although no individual elements of the Address are required, if the address
// is invalid or unsupported, then an exception is thrown.
type Address struct {
_ struct{} `type:"structure"`
// The unique ID for an address.
AddressId *string `min:"40" type:"string"`
// The city in an address that a Snowball is to be delivered to.
City *string `min:"1" type:"string"`
// The name of the company to receive a Snowball at an address.
Company *string `min:"1" type:"string"`
// The country in an address that a Snowball is to be delivered to.
Country *string `min:"1" type:"string"`
// If the address you are creating is a primary address, then set this option
// to true. This field is not supported in most regions.
IsRestricted *bool `type:"boolean"`
// This field is no longer used and the value is ignored.
Landmark *string `min:"1" type:"string"`
// The name of a person to receive a Snowball at an address.
Name *string `min:"1" type:"string"`
// The phone number associated with an address that a Snowball is to be delivered
// to.
PhoneNumber *string `min:"1" type:"string"`
// The postal code in an address that a Snowball is to be delivered to.
PostalCode *string `min:"1" type:"string"`
// This field is no longer used and the value is ignored.
PrefectureOrDistrict *string `min:"1" type:"string"`
// The state or province in an address that a Snowball is to be delivered to.
StateOrProvince *string `min:"1" type:"string"`
// The first line in a street address that a Snowball is to be delivered to.
Street1 *string `min:"1" type:"string"`
// The second line in a street address that a Snowball is to be delivered to.
Street2 *string `min:"1" type:"string"`
// The third line in a street address that a Snowball is to be delivered to.
Street3 *string `min:"1" type:"string"`
}
// String returns the string representation
func (s Address) String() string {
return awsutil.Prettify(s)
}
// GoString returns the string representation
func (s Address) GoString() string {
return s.String()
}
// Validate inspects the fields of the type to determine if they are valid.
func (s *Address) Validate() error {
invalidParams := request.ErrInvalidParams{Context: "Address"}
if s.AddressId != nil && len(*s.AddressId) < 40 {
invalidParams.Add(request.NewErrParamMinLen("AddressId", 40))
}
if s.City != nil && len(*s.City) < 1 {
invalidParams.Add(request.NewErrParamMinLen("City", 1))
}
if s.Company != nil && len(*s.Company) < 1 {
invalidParams.Add(request.NewErrParamMinLen("Company", 1))
}
if s.Country != nil && len(*s.Country) < 1 {
invalidParams.Add(request.NewErrParamMinLen("Country", 1))
}
if s.Landmark != nil && len(*s.Landmark) < 1 {
invalidParams.Add(request.NewErrParamMinLen("Landmark", 1))
}
if s.Name != nil && len(*s.Name) < 1 {
invalidParams.Add(request.NewErrParamMinLen("Name", 1))
}
if s.PhoneNumber != nil && len(*s.PhoneNumber) < 1 {
invalidParams.Add(request.NewErrParamMinLen("PhoneNumber", 1))
}
if s.PostalCode != nil && len(*s.PostalCode) < 1 {
invalidParams.Add(request.NewErrParamMinLen("PostalCode", 1))
}
if s.PrefectureOrDistrict != nil && len(*s.PrefectureOrDistrict) < 1 {
invalidParams.Add(request.NewErrParamMinLen("PrefectureOrDistrict", 1))
}
if s.StateOrProvince != nil && len(*s.StateOrProvince) < 1 {
invalidParams.Add(request.NewErrParamMinLen("StateOrProvince", 1))
}
if s.Street1 != nil && len(*s.Street1) < 1 {
invalidParams.Add(request.NewErrParamMinLen("Street1", 1))
}
if s.Street2 != nil && len(*s.Street2) < 1 {
invalidParams.Add(request.NewErrParamMinLen("Street2", 1))
}
if s.Street3 != nil && len(*s.Street3) < 1 {
invalidParams.Add(request.NewErrParamMinLen("Street3", 1))
}
if invalidParams.Len() > 0 {
return invalidParams
}
return nil
}
// SetAddressId sets the AddressId field's value.
func (s *Address) SetAddressId(v string) *Address {
s.AddressId = &v
return s
}
// SetCity sets the City field's value.
func (s *Address) SetCity(v string) *Address {
s.City = &v
return s
}
// SetCompany sets the Company field's value.
func (s *Address) SetCompany(v string) *Address {
s.Company = &v
return s
}
// SetCountry sets the Country field's value.
func (s *Address) SetCountry(v string) *Address {
s.Country = &v
return s
}
// SetIsRestricted sets the IsRestricted field's value.
func (s *Address) SetIsRestricted(v bool) *Address {
s.IsRestricted = &v
return s
}
// SetLandmark sets the Landmark field's value.
func (s *Address) SetLandmark(v string) *Address {
s.Landmark = &v
return s
}
// SetName sets the Name field's value.
func (s *Address) SetName(v string) *Address {
s.Name = &v
return s
}
// SetPhoneNumber sets the PhoneNumber field's value.
func (s *Address) SetPhoneNumber(v string) *Address {
s.PhoneNumber = &v
return s
}
// SetPostalCode sets the PostalCode field's value.
func (s *Address) SetPostalCode(v string) *Address {
s.PostalCode = &v
return s
}
// SetPrefectureOrDistrict sets the PrefectureOrDistrict field's value.
func (s *Address) SetPrefectureOrDistrict(v string) *Address {
s.PrefectureOrDistrict = &v
return s
}
// SetStateOrProvince sets the StateOrProvince field's value.
func (s *Address) SetStateOrProvince(v string) *Address {
s.StateOrProvince = &v
return s
}
// SetStreet1 sets the Street1 field's value.
func (s *Address) SetStreet1(v string) *Address {
s.Street1 = &v
return s
}
// SetStreet2 sets the Street2 field's value.
func (s *Address) SetStreet2(v string) *Address {
s.Street2 = &v
return s
}
// SetStreet3 sets the Street3 field's value.
func (s *Address) SetStreet3(v string) *Address {
s.Street3 = &v
return s
}
type CancelClusterInput struct {
_ struct{} `type:"structure"`
// The 39-character ID for the cluster that you want to cancel, for example
// CID123e4567-e89b-12d3-a456-426655440000.
//
// ClusterId is a required field
ClusterId *string `min:"39" type:"string" required:"true"`
}
// String returns the string representation
func (s CancelClusterInput) String() string {
return awsutil.Prettify(s)
}
// GoString returns the string representation
func (s CancelClusterInput) GoString() string {
return s.String()
}
// Validate inspects the fields of the type to determine if they are valid.
func (s *CancelClusterInput) Validate() error {
invalidParams := request.ErrInvalidParams{Context: "CancelClusterInput"}
if s.ClusterId == nil {
invalidParams.Add(request.NewErrParamRequired("ClusterId"))
}
if s.ClusterId != nil && len(*s.ClusterId) < 39 {
invalidParams.Add(request.NewErrParamMinLen("ClusterId", 39))
}
if invalidParams.Len() > 0 {
return invalidParams
}
return nil
}
// SetClusterId sets the ClusterId field's value.
func (s *CancelClusterInput) SetClusterId(v string) *CancelClusterInput {
s.ClusterId = &v
return s
}
type CancelClusterOutput struct {
_ struct{} `type:"structure"`
}
// String returns the string representation
func (s CancelClusterOutput) String() string {
return awsutil.Prettify(s)
}
// GoString returns the string representation
func (s CancelClusterOutput) GoString() string {
return s.String()
}
type CancelJobInput struct {
_ struct{} `type:"structure"`
// The 39-character job ID for the job that you want to cancel, for example
// JID123e4567-e89b-12d3-a456-426655440000.
//
// JobId is a required field
JobId *string `min:"39" type:"string" required:"true"`
}
// String returns the string representation
func (s CancelJobInput) String() string {
return awsutil.Prettify(s)
}
// GoString returns the string representation
func (s CancelJobInput) GoString() string {
return s.String()
}
// Validate inspects the fields of the type to determine if they are valid.
func (s *CancelJobInput) Validate() error {
invalidParams := request.ErrInvalidParams{Context: "CancelJobInput"}
if s.JobId == nil {
invalidParams.Add(request.NewErrParamRequired("JobId"))
}
if s.JobId != nil && len(*s.JobId) < 39 {
invalidParams.Add(request.NewErrParamMinLen("JobId", 39))
}
if invalidParams.Len() > 0 {
return invalidParams
}
return nil
}
// SetJobId sets the JobId field's value.
func (s *CancelJobInput) SetJobId(v string) *CancelJobInput {
s.JobId = &v
return s
}
type CancelJobOutput struct {
_ struct{} `type:"structure"`
}
// String returns the string representation
func (s CancelJobOutput) String() string {
return awsutil.Prettify(s)
}
// GoString returns the string representation
func (s CancelJobOutput) GoString() string {
return s.String()
}
// Contains a cluster's state, a cluster's ID, and other important information.
type ClusterListEntry struct {
_ struct{} `type:"structure"`
// The 39-character ID for the cluster that you want to list, for example CID123e4567-e89b-12d3-a456-426655440000.
ClusterId *string `min:"1" type:"string"`
// The current state of this cluster. For information about the state of a specific
// node, see JobListEntry$JobState.
ClusterState *string `type:"string" enum:"ClusterState"`
// The creation date for this cluster.
CreationDate *time.Time `type:"timestamp" timestampFormat:"unix"`
// Defines an optional description of the cluster, for example Environmental
// Data Cluster-01.
Description *string `min:"1" type:"string"`
}
// String returns the string representation
func (s ClusterListEntry) String() string {
return awsutil.Prettify(s)
}
// GoString returns the string representation
func (s ClusterListEntry) GoString() string {
return s.String()
}
// SetClusterId sets the ClusterId field's value.
func (s *ClusterListEntry) SetClusterId(v string) *ClusterListEntry {
s.ClusterId = &v
return s
}
// SetClusterState sets the ClusterState field's value.
func (s *ClusterListEntry) SetClusterState(v string) *ClusterListEntry {
s.ClusterState = &v
return s
}
// SetCreationDate sets the CreationDate field's value.
func (s *ClusterListEntry) SetCreationDate(v time.Time) *ClusterListEntry {
s.CreationDate = &v
return s
}
// SetDescription sets the Description field's value.
func (s *ClusterListEntry) SetDescription(v string) *ClusterListEntry {
s.Description = &v
return s
}
// Contains metadata about a specific cluster.
type ClusterMetadata struct {
_ struct{} `type:"structure"`
// The automatically generated ID for a specific address.
AddressId *string `min:"40" type:"string"`
// The automatically generated ID for a cluster.
ClusterId *string `min:"1" type:"string"`
// The current status of the cluster.
ClusterState *string `type:"string" enum:"ClusterState"`
// The creation date for this cluster.
CreationDate *time.Time `type:"timestamp" timestampFormat:"unix"`
// The optional description of the cluster.
Description *string `min:"1" type:"string"`
// The ID of the address that you want a cluster shipped to, after it will be
// shipped to its primary address. This field is not supported in most regions.
ForwardingAddressId *string `min:"40" type:"string"`
// The type of job for this cluster. Currently, the only job type supported
// for clusters is LOCAL_USE.
JobType *string `type:"string" enum:"JobType"`
// The KmsKeyARN Amazon Resource Name (ARN) associated with this cluster. This
// ARN was created using the CreateKey (http://docs.aws.amazon.com/kms/latest/APIReference/API_CreateKey.html)
// API action in AWS Key Management Service (AWS KMS).
KmsKeyARN *string `type:"string"`
// The Amazon Simple Notification Service (Amazon SNS) notification settings
// for this cluster.
Notification *Notification `type:"structure"`
// The arrays of JobResource objects that can include updated S3Resource objects
// or LambdaResource objects.
Resources *JobResource `type:"structure"`
// The role ARN associated with this cluster. This ARN was created using the
// CreateRole (http://docs.aws.amazon.com/IAM/latest/APIReference/API_CreateRole.html)
// API action in AWS Identity and Access Management (IAM).
RoleARN *string `type:"string"`
// The shipping speed for each node in this cluster. This speed doesn't dictate
// how soon you'll get each Snowball Edge appliance, rather it represents how
// quickly each appliance moves to its destination while in transit. Regional
// shipping speeds are as follows:
//
// * In Australia, you have access to express shipping. Typically, appliances
// shipped express are delivered in about a day.
//
// * In the European Union (EU), you have access to express shipping. Typically,
// Snowball Edges shipped express are delivered in about a day. In addition,
// most countries in the EU have access to standard shipping, which typically
// takes less than a week, one way.
//
// * In India, Snowball Edges are delivered in one to seven days.
//
// * In the US, you have access to one-day shipping and two-day shipping.
ShippingOption *string `type:"string" enum:"ShippingOption"`
// The type of AWS Snowball appliance to use for this cluster. Currently, the
// only supported appliance type for cluster jobs is EDGE.
SnowballType *string `type:"string" enum:"Type"`
}
// String returns the string representation
func (s ClusterMetadata) String() string {
return awsutil.Prettify(s)
}
// GoString returns the string representation
func (s ClusterMetadata) GoString() string {
return s.String()
}
// SetAddressId sets the AddressId field's value.
func (s *ClusterMetadata) SetAddressId(v string) *ClusterMetadata {
s.AddressId = &v
return s
}
// SetClusterId sets the ClusterId field's value.
func (s *ClusterMetadata) SetClusterId(v string) *ClusterMetadata {
s.ClusterId = &v
return s
}
// SetClusterState sets the ClusterState field's value.
func (s *ClusterMetadata) SetClusterState(v string) *ClusterMetadata {
s.ClusterState = &v
return s
}
// SetCreationDate sets the CreationDate field's value.
func (s *ClusterMetadata) SetCreationDate(v time.Time) *ClusterMetadata {
s.CreationDate = &v
return s
}
// SetDescription sets the Description field's value.
func (s *ClusterMetadata) SetDescription(v string) *ClusterMetadata {
s.Description = &v
return s
}
// SetForwardingAddressId sets the ForwardingAddressId field's value.
func (s *ClusterMetadata) SetForwardingAddressId(v string) *ClusterMetadata {
s.ForwardingAddressId = &v
return s
}
// SetJobType sets the JobType field's value.
func (s *ClusterMetadata) SetJobType(v string) *ClusterMetadata {
s.JobType = &v
return s
}
// SetKmsKeyARN sets the KmsKeyARN field's value.
func (s *ClusterMetadata) SetKmsKeyARN(v string) *ClusterMetadata {
s.KmsKeyARN = &v
return s
}
// SetNotification sets the Notification field's value.
func (s *ClusterMetadata) SetNotification(v *Notification) *ClusterMetadata {
s.Notification = v
return s
}
// SetResources sets the Resources field's value.
func (s *ClusterMetadata) SetResources(v *JobResource) *ClusterMetadata {
s.Resources = v
return s
}
// SetRoleARN sets the RoleARN field's value.
func (s *ClusterMetadata) SetRoleARN(v string) *ClusterMetadata {
s.RoleARN = &v
return s
}
// SetShippingOption sets the ShippingOption field's value.
func (s *ClusterMetadata) SetShippingOption(v string) *ClusterMetadata {
s.ShippingOption = &v
return s
}
// SetSnowballType sets the SnowballType field's value.
func (s *ClusterMetadata) SetSnowballType(v string) *ClusterMetadata {
s.SnowballType = &v
return s
}
type CreateAddressInput struct {
_ struct{} `type:"structure"`
// The address that you want the Snowball shipped to.
//
// Address is a required field
Address *Address `type:"structure" required:"true"`
}
// String returns the string representation
func (s CreateAddressInput) String() string {
return awsutil.Prettify(s)
}
// GoString returns the string representation
func (s CreateAddressInput) GoString() string {
return s.String()
}
// Validate inspects the fields of the type to determine if they are valid.
func (s *CreateAddressInput) Validate() error {
invalidParams := request.ErrInvalidParams{Context: "CreateAddressInput"}
if s.Address == nil {
invalidParams.Add(request.NewErrParamRequired("Address"))
}
if s.Address != nil {
if err := s.Address.Validate(); err != nil {
invalidParams.AddNested("Address", err.(request.ErrInvalidParams))
}
}
if invalidParams.Len() > 0 {
return invalidParams
}
return nil
}
// SetAddress sets the Address field's value.
func (s *CreateAddressInput) SetAddress(v *Address) *CreateAddressInput {
s.Address = v
return s
}
type CreateAddressOutput struct {
_ struct{} `type:"structure"`
// The automatically generated ID for a specific address. You'll use this ID
// when you create a job to specify which address you want the Snowball for
// that job shipped to.
AddressId *string `min:"1" type:"string"`
}
// String returns the string representation
func (s CreateAddressOutput) String() string {
return awsutil.Prettify(s)
}
// GoString returns the string representation
func (s CreateAddressOutput) GoString() string {
return s.String()
}
// SetAddressId sets the AddressId field's value.
func (s *CreateAddressOutput) SetAddressId(v string) *CreateAddressOutput {
s.AddressId = &v
return s
}
type CreateClusterInput struct {
_ struct{} `type:"structure"`
// The ID for the address that you want the cluster shipped to.
//
// AddressId is a required field
AddressId *string `min:"40" type:"string" required:"true"`
// An optional description of this specific cluster, for example Environmental
// Data Cluster-01.
Description *string `min:"1" type:"string"`
// The forwarding address ID for a cluster. This field is not supported in most
// regions.
ForwardingAddressId *string `min:"40" type:"string"`
// The type of job for this cluster. Currently, the only job type supported
// for clusters is LOCAL_USE.
//
// JobType is a required field
JobType *string `type:"string" required:"true" enum:"JobType"`
// The KmsKeyARN value that you want to associate with this cluster. KmsKeyARN
// values are created by using the CreateKey (http://docs.aws.amazon.com/kms/latest/APIReference/API_CreateKey.html)
// API action in AWS Key Management Service (AWS KMS).
KmsKeyARN *string `type:"string"`
// The Amazon Simple Notification Service (Amazon SNS) notification settings
// for this cluster.
Notification *Notification `type:"structure"`
// The resources associated with the cluster job. These resources include Amazon
// S3 buckets and optional AWS Lambda functions written in the Python language.
//
// Resources is a required field
Resources *JobResource `type:"structure" required:"true"`
// The RoleARN that you want to associate with this cluster. RoleArn values
// are created by using the CreateRole (http://docs.aws.amazon.com/IAM/latest/APIReference/API_CreateRole.html)
// API action in AWS Identity and Access Management (IAM).
//
// RoleARN is a required field
RoleARN *string `type:"string" required:"true"`
// The shipping speed for each node in this cluster. This speed doesn't dictate
// how soon you'll get each Snowball Edge appliance, rather it represents how
// quickly each appliance moves to its destination while in transit. Regional
// shipping speeds are as follows:
//
// * In Australia, you have access to express shipping. Typically, appliances
// shipped express are delivered in about a day.
//
// * In the European Union (EU), you have access to express shipping. Typically,
// Snowball Edges shipped express are delivered in about a day. In addition,
// most countries in the EU have access to standard shipping, which typically
// takes less than a week, one way.
//
// * In India, Snowball Edges are delivered in one to seven days.
//
// * In the US, you have access to one-day shipping and two-day shipping.
//
// ShippingOption is a required field
ShippingOption *string `type:"string" required:"true" enum:"ShippingOption"`
// The type of AWS Snowball appliance to use for this cluster. Currently, the
// only supported appliance type for cluster jobs is EDGE.
SnowballType *string `type:"string" enum:"Type"`
}
// String returns the string representation
func (s CreateClusterInput) String() string {
return awsutil.Prettify(s)
}
// GoString returns the string representation
func (s CreateClusterInput) GoString() string {
return s.String()
}
// Validate inspects the fields of the type to determine if they are valid.
func (s *CreateClusterInput) Validate() error {
invalidParams := request.ErrInvalidParams{Context: "CreateClusterInput"}
if s.AddressId == nil {
invalidParams.Add(request.NewErrParamRequired("AddressId"))
}
if s.AddressId != nil && len(*s.AddressId) < 40 {
invalidParams.Add(request.NewErrParamMinLen("AddressId", 40))
}
if s.Description != nil && len(*s.Description) < 1 {
invalidParams.Add(request.NewErrParamMinLen("Description", 1))
}
if s.ForwardingAddressId != nil && len(*s.ForwardingAddressId) < 40 {
invalidParams.Add(request.NewErrParamMinLen("ForwardingAddressId", 40))
}
if s.JobType == nil {
invalidParams.Add(request.NewErrParamRequired("JobType"))
}
if s.Resources == nil {
invalidParams.Add(request.NewErrParamRequired("Resources"))
}
if s.RoleARN == nil {
invalidParams.Add(request.NewErrParamRequired("RoleARN"))
}
if s.ShippingOption == nil {
invalidParams.Add(request.NewErrParamRequired("ShippingOption"))
}
if s.Resources != nil {
if err := s.Resources.Validate(); err != nil {
invalidParams.AddNested("Resources", err.(request.ErrInvalidParams))
}
}
if invalidParams.Len() > 0 {
return invalidParams
}
return nil
}
// SetAddressId sets the AddressId field's value.
func (s *CreateClusterInput) SetAddressId(v string) *CreateClusterInput {
s.AddressId = &v
return s
}
// SetDescription sets the Description field's value.
func (s *CreateClusterInput) SetDescription(v string) *CreateClusterInput {
s.Description = &v
return s
}
// SetForwardingAddressId sets the ForwardingAddressId field's value.
func (s *CreateClusterInput) SetForwardingAddressId(v string) *CreateClusterInput {
s.ForwardingAddressId = &v
return s
}
// SetJobType sets the JobType field's value.
func (s *CreateClusterInput) SetJobType(v string) *CreateClusterInput {
s.JobType = &v
return s
}
// SetKmsKeyARN sets the KmsKeyARN field's value.
func (s *CreateClusterInput) SetKmsKeyARN(v string) *CreateClusterInput {
s.KmsKeyARN = &v
return s
}
// SetNotification sets the Notification field's value.
func (s *CreateClusterInput) SetNotification(v *Notification) *CreateClusterInput {
s.Notification = v
return s
}
// SetResources sets the Resources field's value.
func (s *CreateClusterInput) SetResources(v *JobResource) *CreateClusterInput {
s.Resources = v
return s
}
// SetRoleARN sets the RoleARN field's value.
func (s *CreateClusterInput) SetRoleARN(v string) *CreateClusterInput {
s.RoleARN = &v
return s
}
// SetShippingOption sets the ShippingOption field's value.
func (s *CreateClusterInput) SetShippingOption(v string) *CreateClusterInput {
s.ShippingOption = &v
return s
}
// SetSnowballType sets the SnowballType field's value.
func (s *CreateClusterInput) SetSnowballType(v string) *CreateClusterInput {
s.SnowballType = &v
return s
}
type CreateClusterOutput struct {
_ struct{} `type:"structure"`
// The automatically generated ID for a cluster.
ClusterId *string `min:"39" type:"string"`
}
// String returns the string representation
func (s CreateClusterOutput) String() string {
return awsutil.Prettify(s)
}
// GoString returns the string representation
func (s CreateClusterOutput) GoString() string {
return s.String()
}
// SetClusterId sets the ClusterId field's value.
func (s *CreateClusterOutput) SetClusterId(v string) *CreateClusterOutput {
s.ClusterId = &v
return s
}
type CreateJobInput struct {
_ struct{} `type:"structure"`
// The ID for the address that you want the Snowball shipped to.
AddressId *string `min:"40" type:"string"`
// The ID of a cluster. If you're creating a job for a node in a cluster, you
// need to provide only this clusterId value. The other job attributes are inherited
// from the cluster.
ClusterId *string `min:"39" type:"string"`
// Defines an optional description of this specific job, for example Important
// Photos 2016-08-11.
Description *string `min:"1" type:"string"`
// The forwarding address ID for a job. This field is not supported in most
// regions.
ForwardingAddressId *string `min:"40" type:"string"`
// Defines the type of job that you're creating.
JobType *string `type:"string" enum:"JobType"`
// The KmsKeyARN that you want to associate with this job. KmsKeyARNs are created
// using the CreateKey (http://docs.aws.amazon.com/kms/latest/APIReference/API_CreateKey.html)
// AWS Key Management Service (KMS) API action.
KmsKeyARN *string `type:"string"`
// Defines the Amazon Simple Notification Service (Amazon SNS) notification
// settings for this job.
Notification *Notification `type:"structure"`
// Defines the Amazon S3 buckets associated with this job.
//
// With IMPORT jobs, you specify the bucket or buckets that your transferred
// data will be imported into.
//
// With EXPORT jobs, you specify the bucket or buckets that your transferred
// data will be exported from. Optionally, you can also specify a KeyRange value.
// If you choose to export a range, you define the length of the range by providing
// either an inclusive BeginMarker value, an inclusive EndMarker value, or both.
// Ranges are UTF-8 binary sorted.
Resources *JobResource `type:"structure"`
// The RoleARN that you want to associate with this job. RoleArns are created
// using the CreateRole (http://docs.aws.amazon.com/IAM/latest/APIReference/API_CreateRole.html)
// AWS Identity and Access Management (IAM) API action.
RoleARN *string `type:"string"`
// The shipping speed for this job. This speed doesn't dictate how soon you'll
// get the Snowball, rather it represents how quickly the Snowball moves to
// its destination while in transit. Regional shipping speeds are as follows:
//
// * In Australia, you have access to express shipping. Typically, Snowballs
// shipped express are delivered in about a day.
//
// * In the European Union (EU), you have access to express shipping. Typically,
// Snowballs shipped express are delivered in about a day. In addition, most
// countries in the EU have access to standard shipping, which typically
// takes less than a week, one way.
//
// * In India, Snowballs are delivered in one to seven days.
//
// * In the US, you have access to one-day shipping and two-day shipping.
ShippingOption *string `type:"string" enum:"ShippingOption"`
// If your job is being created in one of the US regions, you have the option
// of specifying what size Snowball you'd like for this job. In all other regions,
// Snowballs come with 80 TB in storage capacity.
SnowballCapacityPreference *string `type:"string" enum:"Capacity"`
// The type of AWS Snowball appliance to use for this job. Currently, the only
// supported appliance type for cluster jobs is EDGE.
SnowballType *string `type:"string" enum:"Type"`
}
// String returns the string representation
func (s CreateJobInput) String() string {
return awsutil.Prettify(s)
}
// GoString returns the string representation
func (s CreateJobInput) GoString() string {
return s.String()
}
// Validate inspects the fields of the type to determine if they are valid.
func (s *CreateJobInput) Validate() error {
invalidParams := request.ErrInvalidParams{Context: "CreateJobInput"}
if s.AddressId != nil && len(*s.AddressId) < 40 {
invalidParams.Add(request.NewErrParamMinLen("AddressId", 40))
}
if s.ClusterId != nil && len(*s.ClusterId) < 39 {
invalidParams.Add(request.NewErrParamMinLen("ClusterId", 39))
}
if s.Description != nil && len(*s.Description) < 1 {
invalidParams.Add(request.NewErrParamMinLen("Description", 1))
}
if s.ForwardingAddressId != nil && len(*s.ForwardingAddressId) < 40 {
invalidParams.Add(request.NewErrParamMinLen("ForwardingAddressId", 40))
}
if s.Resources != nil {
if err := s.Resources.Validate(); err != nil {
invalidParams.AddNested("Resources", err.(request.ErrInvalidParams))
}
}
if invalidParams.Len() > 0 {
return invalidParams
}
return nil
}
// SetAddressId sets the AddressId field's value.
func (s *CreateJobInput) SetAddressId(v string) *CreateJobInput {
s.AddressId = &v
return s
}
// SetClusterId sets the ClusterId field's value.
func (s *CreateJobInput) SetClusterId(v string) *CreateJobInput {
s.ClusterId = &v
return s
}
// SetDescription sets the Description field's value.
func (s *CreateJobInput) SetDescription(v string) *CreateJobInput {
s.Description = &v
return s
}
// SetForwardingAddressId sets the ForwardingAddressId field's value.
func (s *CreateJobInput) SetForwardingAddressId(v string) *CreateJobInput {
s.ForwardingAddressId = &v
return s
}
// SetJobType sets the JobType field's value.
func (s *CreateJobInput) SetJobType(v string) *CreateJobInput {
s.JobType = &v
return s
}
// SetKmsKeyARN sets the KmsKeyARN field's value.
func (s *CreateJobInput) SetKmsKeyARN(v string) *CreateJobInput {
s.KmsKeyARN = &v
return s
}
// SetNotification sets the Notification field's value.
func (s *CreateJobInput) SetNotification(v *Notification) *CreateJobInput {
s.Notification = v
return s
}
// SetResources sets the Resources field's value.
func (s *CreateJobInput) SetResources(v *JobResource) *CreateJobInput {
s.Resources = v
return s
}
// SetRoleARN sets the RoleARN field's value.
func (s *CreateJobInput) SetRoleARN(v string) *CreateJobInput {
s.RoleARN = &v
return s
}
// SetShippingOption sets the ShippingOption field's value.
func (s *CreateJobInput) SetShippingOption(v string) *CreateJobInput {
s.ShippingOption = &v
return s
}
// SetSnowballCapacityPreference sets the SnowballCapacityPreference field's value.
func (s *CreateJobInput) SetSnowballCapacityPreference(v string) *CreateJobInput {
s.SnowballCapacityPreference = &v
return s
}
// SetSnowballType sets the SnowballType field's value.
func (s *CreateJobInput) SetSnowballType(v string) *CreateJobInput {
s.SnowballType = &v
return s
}
type CreateJobOutput struct {
_ struct{} `type:"structure"`
// The automatically generated ID for a job, for example JID123e4567-e89b-12d3-a456-426655440000.
JobId *string `min:"39" type:"string"`
}
// String returns the string representation
func (s CreateJobOutput) String() string {
return awsutil.Prettify(s)
}
// GoString returns the string representation
func (s CreateJobOutput) GoString() string {
return s.String()
}
// SetJobId sets the JobId field's value.
func (s *CreateJobOutput) SetJobId(v string) *CreateJobOutput {
s.JobId = &v
return s
}
// Defines the real-time status of a Snowball's data transfer while the appliance
// is at AWS. This data is only available while a job has a JobState value of
// InProgress, for both import and export jobs.
type DataTransfer struct {
_ struct{} `type:"structure"`
// The number of bytes transferred between a Snowball and Amazon S3.
BytesTransferred *int64 `type:"long"`
// The number of objects transferred between a Snowball and Amazon S3.
ObjectsTransferred *int64 `type:"long"`
// The total bytes of data for a transfer between a Snowball and Amazon S3.
// This value is set to 0 (zero) until all the keys that will be transferred
// have been listed.
TotalBytes *int64 `type:"long"`
// The total number of objects for a transfer between a Snowball and Amazon
// S3. This value is set to 0 (zero) until all the keys that will be transferred
// have been listed.
TotalObjects *int64 `type:"long"`
}
// String returns the string representation
func (s DataTransfer) String() string {
return awsutil.Prettify(s)
}
// GoString returns the string representation
func (s DataTransfer) GoString() string {
return s.String()
}
// SetBytesTransferred sets the BytesTransferred field's value.
func (s *DataTransfer) SetBytesTransferred(v int64) *DataTransfer {
s.BytesTransferred = &v
return s
}
// SetObjectsTransferred sets the ObjectsTransferred field's value.
func (s *DataTransfer) SetObjectsTransferred(v int64) *DataTransfer {
s.ObjectsTransferred = &v
return s
}
// SetTotalBytes sets the TotalBytes field's value.
func (s *DataTransfer) SetTotalBytes(v int64) *DataTransfer {
s.TotalBytes = &v
return s
}
// SetTotalObjects sets the TotalObjects field's value.
func (s *DataTransfer) SetTotalObjects(v int64) *DataTransfer {
s.TotalObjects = &v
return s
}
type DescribeAddressInput struct {
_ struct{} `type:"structure"`
// The automatically generated ID for a specific address.
//
// AddressId is a required field
AddressId *string `min:"40" type:"string" required:"true"`
}
// String returns the string representation
func (s DescribeAddressInput) String() string {
return awsutil.Prettify(s)
}
// GoString returns the string representation
func (s DescribeAddressInput) GoString() string {
return s.String()
}
// Validate inspects the fields of the type to determine if they are valid.
func (s *DescribeAddressInput) Validate() error {
invalidParams := request.ErrInvalidParams{Context: "DescribeAddressInput"}
if s.AddressId == nil {
invalidParams.Add(request.NewErrParamRequired("AddressId"))
}
if s.AddressId != nil && len(*s.AddressId) < 40 {
invalidParams.Add(request.NewErrParamMinLen("AddressId", 40))
}
if invalidParams.Len() > 0 {
return invalidParams
}
return nil
}
// SetAddressId sets the AddressId field's value.
func (s *DescribeAddressInput) SetAddressId(v string) *DescribeAddressInput {
s.AddressId = &v
return s
}
type DescribeAddressOutput struct {
_ struct{} `type:"structure"`
// The address that you want the Snowball or Snowballs associated with a specific
// job to be shipped to.
Address *Address `type:"structure"`
}
// String returns the string representation
func (s DescribeAddressOutput) String() string {
return awsutil.Prettify(s)
}
// GoString returns the string representation
func (s DescribeAddressOutput) GoString() string {
return s.String()
}
// SetAddress sets the Address field's value.
func (s *DescribeAddressOutput) SetAddress(v *Address) *DescribeAddressOutput {
s.Address = v
return s
}
type DescribeAddressesInput struct {
_ struct{} `type:"structure"`
// The number of ADDRESS objects to return.
MaxResults *int64 `type:"integer"`
// HTTP requests are stateless. To identify what object comes "next" in the
// list of ADDRESS objects, you have the option of specifying a value for NextToken
// as the starting point for your list of returned addresses.
NextToken *string `min:"1" type:"string"`
}
// String returns the string representation
func (s DescribeAddressesInput) String() string {
return awsutil.Prettify(s)
}
// GoString returns the string representation
func (s DescribeAddressesInput) GoString() string {
return s.String()
}
// Validate inspects the fields of the type to determine if they are valid.
func (s *DescribeAddressesInput) Validate() error {
invalidParams := request.ErrInvalidParams{Context: "DescribeAddressesInput"}
if s.NextToken != nil && len(*s.NextToken) < 1 {
invalidParams.Add(request.NewErrParamMinLen("NextToken", 1))
}
if invalidParams.Len() > 0 {
return invalidParams
}
return nil
}
// SetMaxResults sets the MaxResults field's value.
func (s *DescribeAddressesInput) SetMaxResults(v int64) *DescribeAddressesInput {
s.MaxResults = &v
return s
}
// SetNextToken sets the NextToken field's value.
func (s *DescribeAddressesInput) SetNextToken(v string) *DescribeAddressesInput {
s.NextToken = &v
return s
}
type DescribeAddressesOutput struct {
_ struct{} `type:"structure"`
// The Snowball shipping addresses that were created for this account.
Addresses []*Address `type:"list"`
// HTTP requests are stateless. If you use the automatically generated NextToken
// value in your next DescribeAddresses call, your list of returned addresses
// will start from this point in the array.
NextToken *string `min:"1" type:"string"`
}
// String returns the string representation
func (s DescribeAddressesOutput) String() string {
return awsutil.Prettify(s)
}
// GoString returns the string representation
func (s DescribeAddressesOutput) GoString() string {
return s.String()
}
// SetAddresses sets the Addresses field's value.
func (s *DescribeAddressesOutput) SetAddresses(v []*Address) *DescribeAddressesOutput {
s.Addresses = v
return s
}
// SetNextToken sets the NextToken field's value.
func (s *DescribeAddressesOutput) SetNextToken(v string) *DescribeAddressesOutput {
s.NextToken = &v
return s
}
type DescribeClusterInput struct {
_ struct{} `type:"structure"`
// The automatically generated ID for a cluster.
//
// ClusterId is a required field
ClusterId *string `min:"39" type:"string" required:"true"`
}
// String returns the string representation
func (s DescribeClusterInput) String() string {
return awsutil.Prettify(s)
}
// GoString returns the string representation
func (s DescribeClusterInput) GoString() string {
return s.String()
}
// Validate inspects the fields of the type to determine if they are valid.
func (s *DescribeClusterInput) Validate() error {
invalidParams := request.ErrInvalidParams{Context: "DescribeClusterInput"}
if s.ClusterId == nil {
invalidParams.Add(request.NewErrParamRequired("ClusterId"))
}
if s.ClusterId != nil && len(*s.ClusterId) < 39 {
invalidParams.Add(request.NewErrParamMinLen("ClusterId", 39))
}
if invalidParams.Len() > 0 {
return invalidParams
}
return nil
}
// SetClusterId sets the ClusterId field's value.
func (s *DescribeClusterInput) SetClusterId(v string) *DescribeClusterInput {
s.ClusterId = &v
return s
}
type DescribeClusterOutput struct {
_ struct{} `type:"structure"`
// Information about a specific cluster, including shipping information, cluster
// status, and other important metadata.
ClusterMetadata *ClusterMetadata `type:"structure"`
}
// String returns the string representation
func (s DescribeClusterOutput) String() string {
return awsutil.Prettify(s)
}
// GoString returns the string representation
func (s DescribeClusterOutput) GoString() string {
return s.String()
}
// SetClusterMetadata sets the ClusterMetadata field's value.
func (s *DescribeClusterOutput) SetClusterMetadata(v *ClusterMetadata) *DescribeClusterOutput {
s.ClusterMetadata = v
return s
}
type DescribeJobInput struct {
_ struct{} `type:"structure"`
// The automatically generated ID for a job, for example JID123e4567-e89b-12d3-a456-426655440000.
//
// JobId is a required field
JobId *string `min:"39" type:"string" required:"true"`
}
// String returns the string representation
func (s DescribeJobInput) String() string {
return awsutil.Prettify(s)
}
// GoString returns the string representation
func (s DescribeJobInput) GoString() string {
return s.String()
}
// Validate inspects the fields of the type to determine if they are valid.
func (s *DescribeJobInput) Validate() error {
invalidParams := request.ErrInvalidParams{Context: "DescribeJobInput"}
if s.JobId == nil {
invalidParams.Add(request.NewErrParamRequired("JobId"))
}
if s.JobId != nil && len(*s.JobId) < 39 {
invalidParams.Add(request.NewErrParamMinLen("JobId", 39))
}
if invalidParams.Len() > 0 {
return invalidParams
}
return nil
}
// SetJobId sets the JobId field's value.
func (s *DescribeJobInput) SetJobId(v string) *DescribeJobInput {
s.JobId = &v
return s
}
type DescribeJobOutput struct {
_ struct{} `type:"structure"`
// Information about a specific job, including shipping information, job status,
// and other important metadata.
JobMetadata *JobMetadata `type:"structure"`
// Information about a specific job part (in the case of an export job), including
// shipping information, job status, and other important metadata.
SubJobMetadata []*JobMetadata `type:"list"`
}
// String returns the string representation
func (s DescribeJobOutput) String() string {
return awsutil.Prettify(s)
}
// GoString returns the string representation
func (s DescribeJobOutput) GoString() string {
return s.String()
}
// SetJobMetadata sets the JobMetadata field's value.
func (s *DescribeJobOutput) SetJobMetadata(v *JobMetadata) *DescribeJobOutput {
s.JobMetadata = v
return s
}
// SetSubJobMetadata sets the SubJobMetadata field's value.
func (s *DescribeJobOutput) SetSubJobMetadata(v []*JobMetadata) *DescribeJobOutput {
s.SubJobMetadata = v
return s
}
// The container for the EventTriggerDefinition$EventResourceARN.
type EventTriggerDefinition struct {
_ struct{} `type:"structure"`
// The Amazon Resource Name (ARN) for any local Amazon S3 resource that is an
// AWS Lambda function's event trigger associated with this job.
EventResourceARN *string `type:"string"`
}
// String returns the string representation
func (s EventTriggerDefinition) String() string {
return awsutil.Prettify(s)
}
// GoString returns the string representation
func (s EventTriggerDefinition) GoString() string {
return s.String()
}
// SetEventResourceARN sets the EventResourceARN field's value.
func (s *EventTriggerDefinition) SetEventResourceARN(v string) *EventTriggerDefinition {
s.EventResourceARN = &v
return s
}
type GetJobManifestInput struct {
_ struct{} `type:"structure"`
// The ID for a job that you want to get the manifest file for, for example
// JID123e4567-e89b-12d3-a456-426655440000.
//
// JobId is a required field
JobId *string `min:"39" type:"string" required:"true"`
}
// String returns the string representation
func (s GetJobManifestInput) String() string {
return awsutil.Prettify(s)
}
// GoString returns the string representation
func (s GetJobManifestInput) GoString() string {
return s.String()
}
// Validate inspects the fields of the type to determine if they are valid.
func (s *GetJobManifestInput) Validate() error {
invalidParams := request.ErrInvalidParams{Context: "GetJobManifestInput"}
if s.JobId == nil {
invalidParams.Add(request.NewErrParamRequired("JobId"))
}
if s.JobId != nil && len(*s.JobId) < 39 {
invalidParams.Add(request.NewErrParamMinLen("JobId", 39))
}
if invalidParams.Len() > 0 {
return invalidParams
}
return nil
}
// SetJobId sets the JobId field's value.
func (s *GetJobManifestInput) SetJobId(v string) *GetJobManifestInput {
s.JobId = &v
return s
}
type GetJobManifestOutput struct {
_ struct{} `type:"structure"`
// The Amazon S3 presigned URL for the manifest file associated with the specified
// JobId value.
ManifestURI *string `min:"1" type:"string"`
}
// String returns the string representation
func (s GetJobManifestOutput) String() string {
return awsutil.Prettify(s)
}
// GoString returns the string representation
func (s GetJobManifestOutput) GoString() string {
return s.String()
}
// SetManifestURI sets the ManifestURI field's value.
func (s *GetJobManifestOutput) SetManifestURI(v string) *GetJobManifestOutput {
s.ManifestURI = &v
return s
}
type GetJobUnlockCodeInput struct {
_ struct{} `type:"structure"`
// The ID for the job that you want to get the UnlockCode value for, for example
// JID123e4567-e89b-12d3-a456-426655440000.
//
// JobId is a required field
JobId *string `min:"39" type:"string" required:"true"`
}
// String returns the string representation
func (s GetJobUnlockCodeInput) String() string {
return awsutil.Prettify(s)
}
// GoString returns the string representation
func (s GetJobUnlockCodeInput) GoString() string {
return s.String()
}
// Validate inspects the fields of the type to determine if they are valid.
func (s *GetJobUnlockCodeInput) Validate() error {
invalidParams := request.ErrInvalidParams{Context: "GetJobUnlockCodeInput"}
if s.JobId == nil {
invalidParams.Add(request.NewErrParamRequired("JobId"))
}
if s.JobId != nil && len(*s.JobId) < 39 {
invalidParams.Add(request.NewErrParamMinLen("JobId", 39))
}
if invalidParams.Len() > 0 {
return invalidParams
}
return nil
}
// SetJobId sets the JobId field's value.
func (s *GetJobUnlockCodeInput) SetJobId(v string) *GetJobUnlockCodeInput {
s.JobId = &v
return s
}
type GetJobUnlockCodeOutput struct {
_ struct{} `type:"structure"`
// The UnlockCode value for the specified job. The UnlockCode value can be accessed
// for up to 90 days after the job has been created.
UnlockCode *string `min:"1" type:"string"`
}
// String returns the string representation
func (s GetJobUnlockCodeOutput) String() string {
return awsutil.Prettify(s)
}
// GoString returns the string representation
func (s GetJobUnlockCodeOutput) GoString() string {
return s.String()
}
// SetUnlockCode sets the UnlockCode field's value.
func (s *GetJobUnlockCodeOutput) SetUnlockCode(v string) *GetJobUnlockCodeOutput {
s.UnlockCode = &v
return s
}
type GetSnowballUsageInput struct {
_ struct{} `type:"structure"`
}
// String returns the string representation
func (s GetSnowballUsageInput) String() string {
return awsutil.Prettify(s)
}
// GoString returns the string representation
func (s GetSnowballUsageInput) GoString() string {
return s.String()
}
type GetSnowballUsageOutput struct {
_ struct{} `type:"structure"`
// The service limit for number of Snowballs this account can have at once.
// The default service limit is 1 (one).
SnowballLimit *int64 `type:"integer"`
// The number of Snowballs that this account is currently using.
SnowballsInUse *int64 `type:"integer"`
}
// String returns the string representation
func (s GetSnowballUsageOutput) String() string {
return awsutil.Prettify(s)
}
// GoString returns the string representation
func (s GetSnowballUsageOutput) GoString() string {
return s.String()
}
// SetSnowballLimit sets the SnowballLimit field's value.
func (s *GetSnowballUsageOutput) SetSnowballLimit(v int64) *GetSnowballUsageOutput {
s.SnowballLimit = &v
return s
}
// SetSnowballsInUse sets the SnowballsInUse field's value.
func (s *GetSnowballUsageOutput) SetSnowballsInUse(v int64) *GetSnowballUsageOutput {
s.SnowballsInUse = &v
return s
}
// Each JobListEntry object contains a job's state, a job's ID, and a value
// that indicates whether the job is a job part, in the case of an export job.
type JobListEntry struct {
_ struct{} `type:"structure"`
// The creation date for this job.
CreationDate *time.Time `type:"timestamp" timestampFormat:"unix"`
// The optional description of this specific job, for example Important Photos
// 2016-08-11.
Description *string `min:"1" type:"string"`
// A value that indicates that this job is a master job. A master job represents
// a successful request to create an export job. Master jobs aren't associated
// with any Snowballs. Instead, each master job will have at least one job part,
// and each job part is associated with a Snowball. It might take some time
// before the job parts associated with a particular master job are listed,
// because they are created after the master job is created.
IsMaster *bool `type:"boolean"`
// The automatically generated ID for a job, for example JID123e4567-e89b-12d3-a456-426655440000.
JobId *string `min:"1" type:"string"`
// The current state of this job.
JobState *string `type:"string" enum:"JobState"`
// The type of job.
JobType *string `type:"string" enum:"JobType"`
// The type of appliance used with this job.
SnowballType *string `type:"string" enum:"Type"`
}
// String returns the string representation
func (s JobListEntry) String() string {
return awsutil.Prettify(s)
}
// GoString returns the string representation
func (s JobListEntry) GoString() string {
return s.String()
}
// SetCreationDate sets the CreationDate field's value.
func (s *JobListEntry) SetCreationDate(v time.Time) *JobListEntry {
s.CreationDate = &v
return s
}
// SetDescription sets the Description field's value.
func (s *JobListEntry) SetDescription(v string) *JobListEntry {
s.Description = &v
return s
}
// SetIsMaster sets the IsMaster field's value.
func (s *JobListEntry) SetIsMaster(v bool) *JobListEntry {
s.IsMaster = &v
return s
}
// SetJobId sets the JobId field's value.
func (s *JobListEntry) SetJobId(v string) *JobListEntry {
s.JobId = &v
return s
}
// SetJobState sets the JobState field's value.
func (s *JobListEntry) SetJobState(v string) *JobListEntry {
s.JobState = &v
return s
}
// SetJobType sets the JobType field's value.
func (s *JobListEntry) SetJobType(v string) *JobListEntry {
s.JobType = &v
return s
}
// SetSnowballType sets the SnowballType field's value.
func (s *JobListEntry) SetSnowballType(v string) *JobListEntry {
s.SnowballType = &v
return s
}
// Contains job logs. Whenever Snowball is used to import data into or export
// data out of Amazon S3, you'll have the option of downloading a PDF job report.
// Job logs are returned as a part of the response syntax of the DescribeJob
// action in the JobMetadata data type. The job logs can be accessed for up
// to 60 minutes after this request has been made. To access any of the job
// logs after 60 minutes have passed, you'll have to make another call to the
// DescribeJob action.
//
// For import jobs, the PDF job report becomes available at the end of the import
// process. For export jobs, your job report typically becomes available while
// the Snowball for your job part is being delivered to you.
//
// The job report provides you insight into the state of your Amazon S3 data
// transfer. The report includes details about your job or job part for your
// records.
//
// For deeper visibility into the status of your transferred objects, you can
// look at the two associated logs: a success log and a failure log. The logs
// are saved in comma-separated value (CSV) format, and the name of each log
// includes the ID of the job or job part that the log describes.
type JobLogs struct {
_ struct{} `type:"structure"`
// A link to an Amazon S3 presigned URL where the job completion report is located.
JobCompletionReportURI *string `min:"1" type:"string"`
// A link to an Amazon S3 presigned URL where the job failure log is located.
JobFailureLogURI *string `min:"1" type:"string"`
// A link to an Amazon S3 presigned URL where the job success log is located.
JobSuccessLogURI *string `min:"1" type:"string"`
}
// String returns the string representation
func (s JobLogs) String() string {
return awsutil.Prettify(s)
}
// GoString returns the string representation
func (s JobLogs) GoString() string {
return s.String()
}
// SetJobCompletionReportURI sets the JobCompletionReportURI field's value.
func (s *JobLogs) SetJobCompletionReportURI(v string) *JobLogs {
s.JobCompletionReportURI = &v
return s
}
// SetJobFailureLogURI sets the JobFailureLogURI field's value.
func (s *JobLogs) SetJobFailureLogURI(v string) *JobLogs {
s.JobFailureLogURI = &v
return s
}
// SetJobSuccessLogURI sets the JobSuccessLogURI field's value.
func (s *JobLogs) SetJobSuccessLogURI(v string) *JobLogs {
s.JobSuccessLogURI = &v
return s
}
// Contains information about a specific job including shipping information,
// job status, and other important metadata. This information is returned as
// a part of the response syntax of the DescribeJob action.
type JobMetadata struct {
_ struct{} `type:"structure"`
// The ID for the address that you want the Snowball shipped to.
AddressId *string `min:"40" type:"string"`
// The 39-character ID for the cluster, for example CID123e4567-e89b-12d3-a456-426655440000.
ClusterId *string `min:"1" type:"string"`
// The creation date for this job.
CreationDate *time.Time `type:"timestamp" timestampFormat:"unix"`
// A value that defines the real-time status of a Snowball's data transfer while
// the appliance is at AWS. This data is only available while a job has a JobState
// value of InProgress, for both import and export jobs.
DataTransferProgress *DataTransfer `type:"structure"`
// The description of the job, provided at job creation.
Description *string `min:"1" type:"string"`
// The ID of the address that you want a job shipped to, after it will be shipped
// to its primary address. This field is not supported in most regions.
ForwardingAddressId *string `min:"40" type:"string"`
// The automatically generated ID for a job, for example JID123e4567-e89b-12d3-a456-426655440000.
JobId *string `min:"1" type:"string"`
// Links to Amazon S3 presigned URLs for the job report and logs. For import
// jobs, the PDF job report becomes available at the end of the import process.
// For export jobs, your job report typically becomes available while the Snowball
// for your job part is being delivered to you.
JobLogInfo *JobLogs `type:"structure"`
// The current status of the jobs.
JobState *string `type:"string" enum:"JobState"`
// The type of job.
JobType *string `type:"string" enum:"JobType"`
// The Amazon Resource Name (ARN) for the AWS Key Management Service (AWS KMS)
// key associated with this job. This ARN was created using the CreateKey (http://docs.aws.amazon.com/kms/latest/APIReference/API_CreateKey.html)
// API action in AWS KMS.
KmsKeyARN *string `type:"string"`
// The Amazon Simple Notification Service (Amazon SNS) notification settings
// associated with a specific job. The Notification object is returned as a
// part of the response syntax of the DescribeJob action in the JobMetadata
// data type.
Notification *Notification `type:"structure"`
// An array of S3Resource objects. Each S3Resource object represents an Amazon
// S3 bucket that your transferred data will be exported from or imported into.
Resources *JobResource `type:"structure"`
// The role ARN associated with this job. This ARN was created using the CreateRole
// (http://docs.aws.amazon.com/IAM/latest/APIReference/API_CreateRole.html)
// API action in AWS Identity and Access Management (IAM).
RoleARN *string `type:"string"`
// A job's shipping information, including inbound and outbound tracking numbers
// and shipping speed options.
ShippingDetails *ShippingDetails `type:"structure"`
// The Snowball capacity preference for this job, specified at job creation.
// In US regions, you can choose between 50 TB and 80 TB Snowballs. All other
// regions use 80 TB capacity Snowballs.
SnowballCapacityPreference *string `type:"string" enum:"Capacity"`
// The type of appliance used with this job.
SnowballType *string `type:"string" enum:"Type"`
}
// String returns the string representation
func (s JobMetadata) String() string {
return awsutil.Prettify(s)
}
// GoString returns the string representation
func (s JobMetadata) GoString() string {
return s.String()
}
// SetAddressId sets the AddressId field's value.
func (s *JobMetadata) SetAddressId(v string) *JobMetadata {
s.AddressId = &v
return s
}
// SetClusterId sets the ClusterId field's value.
func (s *JobMetadata) SetClusterId(v string) *JobMetadata {
s.ClusterId = &v
return s
}
// SetCreationDate sets the CreationDate field's value.
func (s *JobMetadata) SetCreationDate(v time.Time) *JobMetadata {
s.CreationDate = &v
return s
}
// SetDataTransferProgress sets the DataTransferProgress field's value.
func (s *JobMetadata) SetDataTransferProgress(v *DataTransfer) *JobMetadata {
s.DataTransferProgress = v
return s
}
// SetDescription sets the Description field's value.
func (s *JobMetadata) SetDescription(v string) *JobMetadata {
s.Description = &v
return s
}
// SetForwardingAddressId sets the ForwardingAddressId field's value.
func (s *JobMetadata) SetForwardingAddressId(v string) *JobMetadata {
s.ForwardingAddressId = &v
return s
}
// SetJobId sets the JobId field's value.
func (s *JobMetadata) SetJobId(v string) *JobMetadata {
s.JobId = &v
return s
}
// SetJobLogInfo sets the JobLogInfo field's value.
func (s *JobMetadata) SetJobLogInfo(v *JobLogs) *JobMetadata {
s.JobLogInfo = v
return s
}
// SetJobState sets the JobState field's value.
func (s *JobMetadata) SetJobState(v string) *JobMetadata {
s.JobState = &v
return s
}
// SetJobType sets the JobType field's value.
func (s *JobMetadata) SetJobType(v string) *JobMetadata {
s.JobType = &v
return s
}
// SetKmsKeyARN sets the KmsKeyARN field's value.
func (s *JobMetadata) SetKmsKeyARN(v string) *JobMetadata {
s.KmsKeyARN = &v
return s
}
// SetNotification sets the Notification field's value.
func (s *JobMetadata) SetNotification(v *Notification) *JobMetadata {
s.Notification = v
return s
}
// SetResources sets the Resources field's value.
func (s *JobMetadata) SetResources(v *JobResource) *JobMetadata {
s.Resources = v
return s
}
// SetRoleARN sets the RoleARN field's value.
func (s *JobMetadata) SetRoleARN(v string) *JobMetadata {
s.RoleARN = &v
return s
}
// SetShippingDetails sets the ShippingDetails field's value.
func (s *JobMetadata) SetShippingDetails(v *ShippingDetails) *JobMetadata {
s.ShippingDetails = v
return s
}
// SetSnowballCapacityPreference sets the SnowballCapacityPreference field's value.
func (s *JobMetadata) SetSnowballCapacityPreference(v string) *JobMetadata {
s.SnowballCapacityPreference = &v
return s
}
// SetSnowballType sets the SnowballType field's value.
func (s *JobMetadata) SetSnowballType(v string) *JobMetadata {
s.SnowballType = &v
return s
}
// Contains an array of S3Resource objects. Each S3Resource object represents
// an Amazon S3 bucket that your transferred data will be exported from or imported
// into.
type JobResource struct {
_ struct{} `type:"structure"`
// The Python-language Lambda functions for this job.
LambdaResources []*LambdaResource `type:"list"`
// An array of S3Resource objects.
S3Resources []*S3Resource `type:"list"`
}
// String returns the string representation
func (s JobResource) String() string {
return awsutil.Prettify(s)
}
// GoString returns the string representation
func (s JobResource) GoString() string {
return s.String()
}
// Validate inspects the fields of the type to determine if they are valid.
func (s *JobResource) Validate() error {
invalidParams := request.ErrInvalidParams{Context: "JobResource"}
if s.S3Resources != nil {
for i, v := range s.S3Resources {
if v == nil {
continue
}
if err := v.Validate(); err != nil {
invalidParams.AddNested(fmt.Sprintf("%s[%v]", "S3Resources", i), err.(request.ErrInvalidParams))
}
}
}
if invalidParams.Len() > 0 {
return invalidParams
}
return nil
}
// SetLambdaResources sets the LambdaResources field's value.
func (s *JobResource) SetLambdaResources(v []*LambdaResource) *JobResource {
s.LambdaResources = v
return s
}
// SetS3Resources sets the S3Resources field's value.
func (s *JobResource) SetS3Resources(v []*S3Resource) *JobResource {
s.S3Resources = v
return s
}
// Contains a key range. For export jobs, a S3Resource object can have an optional
// KeyRange value. The length of the range is defined at job creation, and has
// either an inclusive BeginMarker, an inclusive EndMarker, or both. Ranges
// are UTF-8 binary sorted.
type KeyRange struct {
_ struct{} `type:"structure"`
// The key that starts an optional key range for an export job. Ranges are inclusive
// and UTF-8 binary sorted.
BeginMarker *string `min:"1" type:"string"`
// The key that ends an optional key range for an export job. Ranges are inclusive
// and UTF-8 binary sorted.
EndMarker *string `min:"1" type:"string"`
}
// String returns the string representation
func (s KeyRange) String() string {
return awsutil.Prettify(s)
}
// GoString returns the string representation
func (s KeyRange) GoString() string {
return s.String()
}
// Validate inspects the fields of the type to determine if they are valid.
func (s *KeyRange) Validate() error {
invalidParams := request.ErrInvalidParams{Context: "KeyRange"}
if s.BeginMarker != nil && len(*s.BeginMarker) < 1 {
invalidParams.Add(request.NewErrParamMinLen("BeginMarker", 1))
}
if s.EndMarker != nil && len(*s.EndMarker) < 1 {
invalidParams.Add(request.NewErrParamMinLen("EndMarker", 1))
}
if invalidParams.Len() > 0 {
return invalidParams
}
return nil
}
// SetBeginMarker sets the BeginMarker field's value.
func (s *KeyRange) SetBeginMarker(v string) *KeyRange {
s.BeginMarker = &v
return s
}
// SetEndMarker sets the EndMarker field's value.
func (s *KeyRange) SetEndMarker(v string) *KeyRange {
s.EndMarker = &v
return s
}
// Identifies
type LambdaResource struct {
_ struct{} `type:"structure"`
// The array of ARNs for S3Resource objects to trigger the LambdaResource objects
// associated with this job.
EventTriggers []*EventTriggerDefinition `type:"list"`
// An Amazon Resource Name (ARN) that represents an AWS Lambda function to be
// triggered by PUT object actions on the associated local Amazon S3 resource.
LambdaArn *string `type:"string"`
}
// String returns the string representation
func (s LambdaResource) String() string {
return awsutil.Prettify(s)
}
// GoString returns the string representation
func (s LambdaResource) GoString() string {
return s.String()
}
// SetEventTriggers sets the EventTriggers field's value.
func (s *LambdaResource) SetEventTriggers(v []*EventTriggerDefinition) *LambdaResource {
s.EventTriggers = v
return s
}
// SetLambdaArn sets the LambdaArn field's value.
func (s *LambdaResource) SetLambdaArn(v string) *LambdaResource {
s.LambdaArn = &v
return s
}
type ListClusterJobsInput struct {
_ struct{} `type:"structure"`
// The 39-character ID for the cluster that you want to list, for example CID123e4567-e89b-12d3-a456-426655440000.
//
// ClusterId is a required field
ClusterId *string `min:"39" type:"string" required:"true"`
// The number of JobListEntry objects to return.
MaxResults *int64 `type:"integer"`
// HTTP requests are stateless. To identify what object comes "next" in the
// list of JobListEntry objects, you have the option of specifying NextToken
// as the starting point for your returned list.
NextToken *string `min:"1" type:"string"`
}
// String returns the string representation
func (s ListClusterJobsInput) String() string {
return awsutil.Prettify(s)
}
// GoString returns the string representation
func (s ListClusterJobsInput) GoString() string {
return s.String()
}
// Validate inspects the fields of the type to determine if they are valid.
func (s *ListClusterJobsInput) Validate() error {
invalidParams := request.ErrInvalidParams{Context: "ListClusterJobsInput"}
if s.ClusterId == nil {
invalidParams.Add(request.NewErrParamRequired("ClusterId"))
}
if s.ClusterId != nil && len(*s.ClusterId) < 39 {
invalidParams.Add(request.NewErrParamMinLen("ClusterId", 39))
}
if s.NextToken != nil && len(*s.NextToken) < 1 {
invalidParams.Add(request.NewErrParamMinLen("NextToken", 1))
}
if invalidParams.Len() > 0 {
return invalidParams
}
return nil
}
// SetClusterId sets the ClusterId field's value.
func (s *ListClusterJobsInput) SetClusterId(v string) *ListClusterJobsInput {
s.ClusterId = &v
return s
}
// SetMaxResults sets the MaxResults field's value.
func (s *ListClusterJobsInput) SetMaxResults(v int64) *ListClusterJobsInput {
s.MaxResults = &v
return s
}
// SetNextToken sets the NextToken field's value.
func (s *ListClusterJobsInput) SetNextToken(v string) *ListClusterJobsInput {
s.NextToken = &v
return s
}
type ListClusterJobsOutput struct {
_ struct{} `type:"structure"`
// Each JobListEntry object contains a job's state, a job's ID, and a value
// that indicates whether the job is a job part, in the case of export jobs.
JobListEntries []*JobListEntry `type:"list"`
// HTTP requests are stateless. If you use the automatically generated NextToken
// value in your next ListClusterJobsResult call, your list of returned jobs
// will start from this point in the array.
NextToken *string `min:"1" type:"string"`
}
// String returns the string representation
func (s ListClusterJobsOutput) String() string {
return awsutil.Prettify(s)
}
// GoString returns the string representation
func (s ListClusterJobsOutput) GoString() string {
return s.String()
}
// SetJobListEntries sets the JobListEntries field's value.
func (s *ListClusterJobsOutput) SetJobListEntries(v []*JobListEntry) *ListClusterJobsOutput {
s.JobListEntries = v
return s
}
// SetNextToken sets the NextToken field's value.
func (s *ListClusterJobsOutput) SetNextToken(v string) *ListClusterJobsOutput {
s.NextToken = &v
return s
}
type ListClustersInput struct {
_ struct{} `type:"structure"`
// The number of ClusterListEntry objects to return.
MaxResults *int64 `type:"integer"`
// HTTP requests are stateless. To identify what object comes "next" in the
// list of ClusterListEntry objects, you have the option of specifying NextToken
// as the starting point for your returned list.
NextToken *string `min:"1" type:"string"`
}
// String returns the string representation
func (s ListClustersInput) String() string {
return awsutil.Prettify(s)
}
// GoString returns the string representation
func (s ListClustersInput) GoString() string {
return s.String()
}
// Validate inspects the fields of the type to determine if they are valid.
func (s *ListClustersInput) Validate() error {
invalidParams := request.ErrInvalidParams{Context: "ListClustersInput"}
if s.NextToken != nil && len(*s.NextToken) < 1 {
invalidParams.Add(request.NewErrParamMinLen("NextToken", 1))
}
if invalidParams.Len() > 0 {
return invalidParams
}
return nil
}
// SetMaxResults sets the MaxResults field's value.
func (s *ListClustersInput) SetMaxResults(v int64) *ListClustersInput {
s.MaxResults = &v
return s
}
// SetNextToken sets the NextToken field's value.
func (s *ListClustersInput) SetNextToken(v string) *ListClustersInput {
s.NextToken = &v
return s
}
type ListClustersOutput struct {
_ struct{} `type:"structure"`
// Each ClusterListEntry object contains a cluster's state, a cluster's ID,
// and other important status information.
ClusterListEntries []*ClusterListEntry `type:"list"`
// HTTP requests are stateless. If you use the automatically generated NextToken
// value in your next ClusterListEntry call, your list of returned clusters
// will start from this point in the array.
NextToken *string `min:"1" type:"string"`
}
// String returns the string representation
func (s ListClustersOutput) String() string {
return awsutil.Prettify(s)
}
// GoString returns the string representation
func (s ListClustersOutput) GoString() string {
return s.String()
}
// SetClusterListEntries sets the ClusterListEntries field's value.
func (s *ListClustersOutput) SetClusterListEntries(v []*ClusterListEntry) *ListClustersOutput {
s.ClusterListEntries = v
return s
}
// SetNextToken sets the NextToken field's value.
func (s *ListClustersOutput) SetNextToken(v string) *ListClustersOutput {
s.NextToken = &v
return s
}
type ListJobsInput struct {
_ struct{} `type:"structure"`
// The number of JobListEntry objects to return.
MaxResults *int64 `type:"integer"`
// HTTP requests are stateless. To identify what object comes "next" in the
// list of JobListEntry objects, you have the option of specifying NextToken
// as the starting point for your returned list.
NextToken *string `min:"1" type:"string"`
}
// String returns the string representation
func (s ListJobsInput) String() string {
return awsutil.Prettify(s)
}
// GoString returns the string representation
func (s ListJobsInput) GoString() string {
return s.String()
}
// Validate inspects the fields of the type to determine if they are valid.
func (s *ListJobsInput) Validate() error {
invalidParams := request.ErrInvalidParams{Context: "ListJobsInput"}
if s.NextToken != nil && len(*s.NextToken) < 1 {
invalidParams.Add(request.NewErrParamMinLen("NextToken", 1))
}
if invalidParams.Len() > 0 {
return invalidParams
}
return nil
}
// SetMaxResults sets the MaxResults field's value.
func (s *ListJobsInput) SetMaxResults(v int64) *ListJobsInput {
s.MaxResults = &v
return s
}
// SetNextToken sets the NextToken field's value.
func (s *ListJobsInput) SetNextToken(v string) *ListJobsInput {
s.NextToken = &v
return s
}
type ListJobsOutput struct {
_ struct{} `type:"structure"`
// Each JobListEntry object contains a job's state, a job's ID, and a value
// that indicates whether the job is a job part, in the case of export jobs.
JobListEntries []*JobListEntry `type:"list"`
// HTTP requests are stateless. If you use this automatically generated NextToken
// value in your next ListJobs call, your returned JobListEntry objects will
// start from this point in the array.
NextToken *string `min:"1" type:"string"`
}
// String returns the string representation
func (s ListJobsOutput) String() string {
return awsutil.Prettify(s)
}
// GoString returns the string representation
func (s ListJobsOutput) GoString() string {
return s.String()
}
// SetJobListEntries sets the JobListEntries field's value.
func (s *ListJobsOutput) SetJobListEntries(v []*JobListEntry) *ListJobsOutput {
s.JobListEntries = v
return s
}
// SetNextToken sets the NextToken field's value.
func (s *ListJobsOutput) SetNextToken(v string) *ListJobsOutput {
s.NextToken = &v
return s
}
// The Amazon Simple Notification Service (Amazon SNS) notification settings
// associated with a specific job. The Notification object is returned as a
// part of the response syntax of the DescribeJob action in the JobMetadata
// data type.
//
// When the notification settings are defined during job creation, you can choose
// to notify based on a specific set of job states using the JobStatesToNotify
// array of strings, or you can specify that you want to have Amazon SNS notifications
// sent out for all job states with NotifyAll set to true.
type Notification struct {
_ struct{} `type:"structure"`
// The list of job states that will trigger a notification for this job.
JobStatesToNotify []*string `type:"list"`
// Any change in job state will trigger a notification for this job.
NotifyAll *bool `type:"boolean"`
// The new SNS TopicArn that you want to associate with this job. You can create
// Amazon Resource Names (ARNs) for topics by using the CreateTopic (http://docs.aws.amazon.com/sns/latest/api/API_CreateTopic.html)
// Amazon SNS API action.
//
// You can subscribe email addresses to an Amazon SNS topic through the AWS
// Management Console, or by using the Subscribe (http://docs.aws.amazon.com/sns/latest/api/API_Subscribe.html)
// AWS Simple Notification Service (SNS) API action.
SnsTopicARN *string `type:"string"`
}
// String returns the string representation
func (s Notification) String() string {
return awsutil.Prettify(s)
}
// GoString returns the string representation
func (s Notification) GoString() string {
return s.String()
}
// SetJobStatesToNotify sets the JobStatesToNotify field's value.
func (s *Notification) SetJobStatesToNotify(v []*string) *Notification {
s.JobStatesToNotify = v
return s
}
// SetNotifyAll sets the NotifyAll field's value.
func (s *Notification) SetNotifyAll(v bool) *Notification {
s.NotifyAll = &v
return s
}
// SetSnsTopicARN sets the SnsTopicARN field's value.
func (s *Notification) SetSnsTopicARN(v string) *Notification {
s.SnsTopicARN = &v
return s
}
// Each S3Resource object represents an Amazon S3 bucket that your transferred
// data will be exported from or imported into. For export jobs, this object
// can have an optional KeyRange value. The length of the range is defined at
// job creation, and has either an inclusive BeginMarker, an inclusive EndMarker,
// or both. Ranges are UTF-8 binary sorted.
type S3Resource struct {
_ struct{} `type:"structure"`
// The Amazon Resource Name (ARN) of an Amazon S3 bucket.
BucketArn *string `type:"string"`
// For export jobs, you can provide an optional KeyRange within a specific Amazon
// S3 bucket. The length of the range is defined at job creation, and has either
// an inclusive BeginMarker, an inclusive EndMarker, or both. Ranges are UTF-8
// binary sorted.
KeyRange *KeyRange `type:"structure"`
}
// String returns the string representation
func (s S3Resource) String() string {
return awsutil.Prettify(s)
}
// GoString returns the string representation
func (s S3Resource) GoString() string {
return s.String()
}
// Validate inspects the fields of the type to determine if they are valid.
func (s *S3Resource) Validate() error {
invalidParams := request.ErrInvalidParams{Context: "S3Resource"}
if s.KeyRange != nil {
if err := s.KeyRange.Validate(); err != nil {
invalidParams.AddNested("KeyRange", err.(request.ErrInvalidParams))
}
}
if invalidParams.Len() > 0 {
return invalidParams
}
return nil
}
// SetBucketArn sets the BucketArn field's value.
func (s *S3Resource) SetBucketArn(v string) *S3Resource {
s.BucketArn = &v
return s
}
// SetKeyRange sets the KeyRange field's value.
func (s *S3Resource) SetKeyRange(v *KeyRange) *S3Resource {
s.KeyRange = v
return s
}
// The Status and TrackingNumber information for an inbound or outbound shipment.
type Shipment struct {
_ struct{} `type:"structure"`
// Status information for a shipment.
Status *string `min:"1" type:"string"`
// The tracking number for this job. Using this tracking number with your region's
// carrier's website, you can track a Snowball as the carrier transports it.
//
// For India, the carrier is Amazon Logistics. For all other regions, UPS is
// the carrier.
TrackingNumber *string `min:"1" type:"string"`
}
// String returns the string representation
func (s Shipment) String() string {
return awsutil.Prettify(s)
}
// GoString returns the string representation
func (s Shipment) GoString() string {
return s.String()
}
// SetStatus sets the Status field's value.
func (s *Shipment) SetStatus(v string) *Shipment {
s.Status = &v
return s
}
// SetTrackingNumber sets the TrackingNumber field's value.
func (s *Shipment) SetTrackingNumber(v string) *Shipment {
s.TrackingNumber = &v
return s
}
// A job's shipping information, including inbound and outbound tracking numbers
// and shipping speed options.
type ShippingDetails struct {
_ struct{} `type:"structure"`
// The Status and TrackingNumber values for a Snowball being returned to AWS
// for a particular job.
InboundShipment *Shipment `type:"structure"`
// The Status and TrackingNumber values for a Snowball being delivered to the
// address that you specified for a particular job.
OutboundShipment *Shipment `type:"structure"`
// The shipping speed for a particular job. This speed doesn't dictate how soon
// you'll get the Snowball from the job's creation date. This speed represents
// how quickly it moves to its destination while in transit. Regional shipping
// speeds are as follows:
//
// * In Australia, you have access to express shipping. Typically, Snowballs
// shipped express are delivered in about a day.
//
// * In the European Union (EU), you have access to express shipping. Typically,
// Snowballs shipped express are delivered in about a day. In addition, most
// countries in the EU have access to standard shipping, which typically
// takes less than a week, one way.
//
// * In India, Snowballs are delivered in one to seven days.
//
// * In the United States of America (US), you have access to one-day shipping
// and two-day shipping.
ShippingOption *string `type:"string" enum:"ShippingOption"`
}
// String returns the string representation
func (s ShippingDetails) String() string {
return awsutil.Prettify(s)
}
// GoString returns the string representation
func (s ShippingDetails) GoString() string {
return s.String()
}
// SetInboundShipment sets the InboundShipment field's value.
func (s *ShippingDetails) SetInboundShipment(v *Shipment) *ShippingDetails {
s.InboundShipment = v
return s
}
// SetOutboundShipment sets the OutboundShipment field's value.
func (s *ShippingDetails) SetOutboundShipment(v *Shipment) *ShippingDetails {
s.OutboundShipment = v
return s
}
// SetShippingOption sets the ShippingOption field's value.
func (s *ShippingDetails) SetShippingOption(v string) *ShippingDetails {
s.ShippingOption = &v
return s
}
type UpdateClusterInput struct {
_ struct{} `type:"structure"`
// The ID of the updated Address object.
AddressId *string `min:"40" type:"string"`
// The cluster ID of the cluster that you want to update, for example CID123e4567-e89b-12d3-a456-426655440000.
//
// ClusterId is a required field
ClusterId *string `min:"39" type:"string" required:"true"`
// The updated description of this cluster.
Description *string `min:"1" type:"string"`
// The updated ID for the forwarding address for a cluster. This field is not
// supported in most regions.
ForwardingAddressId *string `min:"40" type:"string"`
// The new or updated Notification object.
Notification *Notification `type:"structure"`
// The updated arrays of JobResource objects that can include updated S3Resource
// objects or LambdaResource objects.
Resources *JobResource `type:"structure"`
// The new role Amazon Resource Name (ARN) that you want to associate with this
// cluster. To create a role ARN, use the CreateRole (http://docs.aws.amazon.com/IAM/latest/APIReference/API_CreateRole.html)
// API action in AWS Identity and Access Management (IAM).
RoleARN *string `type:"string"`
// The updated shipping option value of this cluster's ShippingDetails object.
ShippingOption *string `type:"string" enum:"ShippingOption"`
}
// String returns the string representation
func (s UpdateClusterInput) String() string {
return awsutil.Prettify(s)
}
// GoString returns the string representation
func (s UpdateClusterInput) GoString() string {
return s.String()
}
// Validate inspects the fields of the type to determine if they are valid.
func (s *UpdateClusterInput) Validate() error {
invalidParams := request.ErrInvalidParams{Context: "UpdateClusterInput"}
if s.AddressId != nil && len(*s.AddressId) < 40 {
invalidParams.Add(request.NewErrParamMinLen("AddressId", 40))
}
if s.ClusterId == nil {
invalidParams.Add(request.NewErrParamRequired("ClusterId"))
}
if s.ClusterId != nil && len(*s.ClusterId) < 39 {
invalidParams.Add(request.NewErrParamMinLen("ClusterId", 39))
}
if s.Description != nil && len(*s.Description) < 1 {
invalidParams.Add(request.NewErrParamMinLen("Description", 1))
}
if s.ForwardingAddressId != nil && len(*s.ForwardingAddressId) < 40 {
invalidParams.Add(request.NewErrParamMinLen("ForwardingAddressId", 40))
}
if s.Resources != nil {
if err := s.Resources.Validate(); err != nil {
invalidParams.AddNested("Resources", err.(request.ErrInvalidParams))
}
}
if invalidParams.Len() > 0 {
return invalidParams
}
return nil
}
// SetAddressId sets the AddressId field's value.
func (s *UpdateClusterInput) SetAddressId(v string) *UpdateClusterInput {
s.AddressId = &v
return s
}
// SetClusterId sets the ClusterId field's value.
func (s *UpdateClusterInput) SetClusterId(v string) *UpdateClusterInput {
s.ClusterId = &v
return s
}
// SetDescription sets the Description field's value.
func (s *UpdateClusterInput) SetDescription(v string) *UpdateClusterInput {
s.Description = &v
return s
}
// SetForwardingAddressId sets the ForwardingAddressId field's value.
func (s *UpdateClusterInput) SetForwardingAddressId(v string) *UpdateClusterInput {
s.ForwardingAddressId = &v
return s
}
// SetNotification sets the Notification field's value.
func (s *UpdateClusterInput) SetNotification(v *Notification) *UpdateClusterInput {
s.Notification = v
return s
}
// SetResources sets the Resources field's value.
func (s *UpdateClusterInput) SetResources(v *JobResource) *UpdateClusterInput {
s.Resources = v
return s
}
// SetRoleARN sets the RoleARN field's value.
func (s *UpdateClusterInput) SetRoleARN(v string) *UpdateClusterInput {
s.RoleARN = &v
return s
}
// SetShippingOption sets the ShippingOption field's value.
func (s *UpdateClusterInput) SetShippingOption(v string) *UpdateClusterInput {
s.ShippingOption = &v
return s
}
type UpdateClusterOutput struct {
_ struct{} `type:"structure"`
}
// String returns the string representation
func (s UpdateClusterOutput) String() string {
return awsutil.Prettify(s)
}
// GoString returns the string representation
func (s UpdateClusterOutput) GoString() string {
return s.String()
}
type UpdateJobInput struct {
_ struct{} `type:"structure"`
// The ID of the updated Address object.
AddressId *string `min:"40" type:"string"`
// The updated description of this job's JobMetadata object.
Description *string `min:"1" type:"string"`
// The updated ID for the forwarding address for a job. This field is not supported
// in most regions.
ForwardingAddressId *string `min:"40" type:"string"`
// The job ID of the job that you want to update, for example JID123e4567-e89b-12d3-a456-426655440000.
//
// JobId is a required field
JobId *string `min:"39" type:"string" required:"true"`
// The new or updated Notification object.
Notification *Notification `type:"structure"`
// The updated S3Resource object (for a single Amazon S3 bucket or key range),
// or the updated JobResource object (for multiple buckets or key ranges).
Resources *JobResource `type:"structure"`
// The new role Amazon Resource Name (ARN) that you want to associate with this
// job. To create a role ARN, use the CreateRole (http://docs.aws.amazon.com/IAM/latest/APIReference/API_CreateRole.html)AWS
// Identity and Access Management (IAM) API action.
RoleARN *string `type:"string"`
// The updated shipping option value of this job's ShippingDetails object.
ShippingOption *string `type:"string" enum:"ShippingOption"`
// The updated SnowballCapacityPreference of this job's JobMetadata object.
// The 50 TB Snowballs are only available in the US regions.
SnowballCapacityPreference *string `type:"string" enum:"Capacity"`
}
// String returns the string representation
func (s UpdateJobInput) String() string {
return awsutil.Prettify(s)
}
// GoString returns the string representation
func (s UpdateJobInput) GoString() string {
return s.String()
}
// Validate inspects the fields of the type to determine if they are valid.
func (s *UpdateJobInput) Validate() error {
invalidParams := request.ErrInvalidParams{Context: "UpdateJobInput"}
if s.AddressId != nil && len(*s.AddressId) < 40 {
invalidParams.Add(request.NewErrParamMinLen("AddressId", 40))
}
if s.Description != nil && len(*s.Description) < 1 {
invalidParams.Add(request.NewErrParamMinLen("Description", 1))
}
if s.ForwardingAddressId != nil && len(*s.ForwardingAddressId) < 40 {
invalidParams.Add(request.NewErrParamMinLen("ForwardingAddressId", 40))
}
if s.JobId == nil {
invalidParams.Add(request.NewErrParamRequired("JobId"))
}
if s.JobId != nil && len(*s.JobId) < 39 {
invalidParams.Add(request.NewErrParamMinLen("JobId", 39))
}
if s.Resources != nil {
if err := s.Resources.Validate(); err != nil {
invalidParams.AddNested("Resources", err.(request.ErrInvalidParams))
}
}
if invalidParams.Len() > 0 {
return invalidParams
}
return nil
}
// SetAddressId sets the AddressId field's value.
func (s *UpdateJobInput) SetAddressId(v string) *UpdateJobInput {
s.AddressId = &v
return s
}
// SetDescription sets the Description field's value.
func (s *UpdateJobInput) SetDescription(v string) *UpdateJobInput {
s.Description = &v
return s
}
// SetForwardingAddressId sets the ForwardingAddressId field's value.
func (s *UpdateJobInput) SetForwardingAddressId(v string) *UpdateJobInput {
s.ForwardingAddressId = &v
return s
}
// SetJobId sets the JobId field's value.
func (s *UpdateJobInput) SetJobId(v string) *UpdateJobInput {
s.JobId = &v
return s
}
// SetNotification sets the Notification field's value.
func (s *UpdateJobInput) SetNotification(v *Notification) *UpdateJobInput {
s.Notification = v
return s
}
// SetResources sets the Resources field's value.
func (s *UpdateJobInput) SetResources(v *JobResource) *UpdateJobInput {
s.Resources = v
return s
}
// SetRoleARN sets the RoleARN field's value.
func (s *UpdateJobInput) SetRoleARN(v string) *UpdateJobInput {
s.RoleARN = &v
return s
}
// SetShippingOption sets the ShippingOption field's value.
func (s *UpdateJobInput) SetShippingOption(v string) *UpdateJobInput {
s.ShippingOption = &v
return s
}
// SetSnowballCapacityPreference sets the SnowballCapacityPreference field's value.
func (s *UpdateJobInput) SetSnowballCapacityPreference(v string) *UpdateJobInput {
s.SnowballCapacityPreference = &v
return s
}
type UpdateJobOutput struct {
_ struct{} `type:"structure"`
}
// String returns the string representation
func (s UpdateJobOutput) String() string {
return awsutil.Prettify(s)
}
// GoString returns the string representation
func (s UpdateJobOutput) GoString() string {
return s.String()
}
const (
// CapacityT50 is a Capacity enum value
CapacityT50 = "T50"
// CapacityT80 is a Capacity enum value
CapacityT80 = "T80"
// CapacityT100 is a Capacity enum value
CapacityT100 = "T100"
// CapacityNoPreference is a Capacity enum value
CapacityNoPreference = "NoPreference"
)
const (
// ClusterStateAwaitingQuorum is a ClusterState enum value
ClusterStateAwaitingQuorum = "AwaitingQuorum"
// ClusterStatePending is a ClusterState enum value
ClusterStatePending = "Pending"
// ClusterStateInUse is a ClusterState enum value
ClusterStateInUse = "InUse"
// ClusterStateComplete is a ClusterState enum value
ClusterStateComplete = "Complete"
// ClusterStateCancelled is a ClusterState enum value
ClusterStateCancelled = "Cancelled"
)
const (
// JobStateNew is a JobState enum value
JobStateNew = "New"
// JobStatePreparingAppliance is a JobState enum value
JobStatePreparingAppliance = "PreparingAppliance"
// JobStatePreparingShipment is a JobState enum value
JobStatePreparingShipment = "PreparingShipment"
// JobStateInTransitToCustomer is a JobState enum value
JobStateInTransitToCustomer = "InTransitToCustomer"
// JobStateWithCustomer is a JobState enum value
JobStateWithCustomer = "WithCustomer"
// JobStateInTransitToAws is a JobState enum value
JobStateInTransitToAws = "InTransitToAWS"
// JobStateWithAws is a JobState enum value
JobStateWithAws = "WithAWS"
// JobStateInProgress is a JobState enum value
JobStateInProgress = "InProgress"
// JobStateComplete is a JobState enum value
JobStateComplete = "Complete"
// JobStateCancelled is a JobState enum value
JobStateCancelled = "Cancelled"
// JobStateListing is a JobState enum value
JobStateListing = "Listing"
// JobStatePending is a JobState enum value
JobStatePending = "Pending"
)
const (
// JobTypeImport is a JobType enum value
JobTypeImport = "IMPORT"
// JobTypeExport is a JobType enum value
JobTypeExport = "EXPORT"
// JobTypeLocalUse is a JobType enum value
JobTypeLocalUse = "LOCAL_USE"
)
const (
// ShippingOptionSecondDay is a ShippingOption enum value
ShippingOptionSecondDay = "SECOND_DAY"
// ShippingOptionNextDay is a ShippingOption enum value
ShippingOptionNextDay = "NEXT_DAY"
// ShippingOptionExpress is a ShippingOption enum value
ShippingOptionExpress = "EXPRESS"
// ShippingOptionStandard is a ShippingOption enum value
ShippingOptionStandard = "STANDARD"
)
const (
// TypeStandard is a Type enum value
TypeStandard = "STANDARD"
// TypeEdge is a Type enum value
TypeEdge = "EDGE"
)