Skip to content
Permalink
Branch: master
Find file Copy path
Find file Copy path
Fetching contributors…
Cannot retrieve contributors at this time
5832 lines (5058 sloc) 192 KB
// Code generated by private/model/cli/gen-api/main.go. DO NOT EDIT.
package datasync
import (
"fmt"
"time"
"github.com/aws/aws-sdk-go/aws"
"github.com/aws/aws-sdk-go/aws/awsutil"
"github.com/aws/aws-sdk-go/aws/request"
"github.com/aws/aws-sdk-go/private/protocol"
"github.com/aws/aws-sdk-go/private/protocol/jsonrpc"
)
const opCancelTaskExecution = "CancelTaskExecution"
// CancelTaskExecutionRequest generates a "aws/request.Request" representing the
// client's request for the CancelTaskExecution operation. The "output" return
// value will be populated with the request's response once the request completes
// successfully.
//
// Use "Send" method on the returned Request to send the API call to the service.
// the "output" return value is not valid until after Send returns without error.
//
// See CancelTaskExecution for more information on using the CancelTaskExecution
// 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 CancelTaskExecutionRequest method.
// req, resp := client.CancelTaskExecutionRequest(params)
//
// err := req.Send()
// if err == nil { // resp is now filled
// fmt.Println(resp)
// }
//
// See also, https://docs.aws.amazon.com/goto/WebAPI/datasync-2018-11-09/CancelTaskExecution
func (c *DataSync) CancelTaskExecutionRequest(input *CancelTaskExecutionInput) (req *request.Request, output *CancelTaskExecutionOutput) {
op := &request.Operation{
Name: opCancelTaskExecution,
HTTPMethod: "POST",
HTTPPath: "/",
}
if input == nil {
input = &CancelTaskExecutionInput{}
}
output = &CancelTaskExecutionOutput{}
req = c.newRequest(op, input, output)
req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
return
}
// CancelTaskExecution API operation for AWS DataSync.
//
// Cancels execution of a task.
//
// When you cancel a task execution, the transfer of some files are abruptly
// interrupted. The contents of files that are transferred to the destination
// might be incomplete or inconsistent with the source files. However, if you
// start a new task execution on the same task and you allow the task execution
// to complete, file content on the destination is complete and consistent.
// This applies to other unexpected failures that interrupt a task execution.
// In all of these cases, AWS DataSync successfully complete the transfer when
// you start the next task execution.
//
// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
// with awserr.Error's Code and Message methods to get detailed information about
// the error.
//
// See the AWS API reference guide for AWS DataSync's
// API operation CancelTaskExecution for usage and error information.
//
// Returned Error Codes:
// * ErrCodeInvalidRequestException "InvalidRequestException"
// This exception is thrown when the client submits a malformed request.
//
// * ErrCodeInternalException "InternalException"
// This exception is thrown when an error occurs in the AWS DataSync service.
//
// See also, https://docs.aws.amazon.com/goto/WebAPI/datasync-2018-11-09/CancelTaskExecution
func (c *DataSync) CancelTaskExecution(input *CancelTaskExecutionInput) (*CancelTaskExecutionOutput, error) {
req, out := c.CancelTaskExecutionRequest(input)
return out, req.Send()
}
// CancelTaskExecutionWithContext is the same as CancelTaskExecution with the addition of
// the ability to pass a context and additional request options.
//
// See CancelTaskExecution 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 *DataSync) CancelTaskExecutionWithContext(ctx aws.Context, input *CancelTaskExecutionInput, opts ...request.Option) (*CancelTaskExecutionOutput, error) {
req, out := c.CancelTaskExecutionRequest(input)
req.SetContext(ctx)
req.ApplyOptions(opts...)
return out, req.Send()
}
const opCreateAgent = "CreateAgent"
// CreateAgentRequest generates a "aws/request.Request" representing the
// client's request for the CreateAgent operation. The "output" return
// value will be populated with the request's response once the request completes
// successfully.
//
// Use "Send" method on the returned Request to send the API call to the service.
// the "output" return value is not valid until after Send returns without error.
//
// See CreateAgent for more information on using the CreateAgent
// 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 CreateAgentRequest method.
// req, resp := client.CreateAgentRequest(params)
//
// err := req.Send()
// if err == nil { // resp is now filled
// fmt.Println(resp)
// }
//
// See also, https://docs.aws.amazon.com/goto/WebAPI/datasync-2018-11-09/CreateAgent
func (c *DataSync) CreateAgentRequest(input *CreateAgentInput) (req *request.Request, output *CreateAgentOutput) {
op := &request.Operation{
Name: opCreateAgent,
HTTPMethod: "POST",
HTTPPath: "/",
}
if input == nil {
input = &CreateAgentInput{}
}
output = &CreateAgentOutput{}
req = c.newRequest(op, input, output)
return
}
// CreateAgent API operation for AWS DataSync.
//
// Activates an AWS DataSync agent that you have deployed on your host. The
// activation process associates your agent with your account. In the activation
// process, you specify information such as the AWS Region that you want to
// activate the agent in. You activate the agent in the AWS Region where your
// target locations (in Amazon S3 or Amazon EFS) reside. Your tasks are created
// in this AWS Region.
//
// You can use an agent for more than one location. If a task uses multiple
// agents, all of them need to have status AVAILABLE for the task to run. If
// you use multiple agents for a source location, the status of all the agents
// must be AVAILABLE for the task to run.
//
// For more information, see "https://docs.aws.amazon.com/datasync/latest/userguide/working-with-agents.html#activating-agent"
// (Activating an Agent) in the AWS DataSync User Guide.
//
// Agents are automatically updated by AWS on a regular basis, using a mechanism
// that ensures minimal interruption to your tasks.
//
// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
// with awserr.Error's Code and Message methods to get detailed information about
// the error.
//
// See the AWS API reference guide for AWS DataSync's
// API operation CreateAgent for usage and error information.
//
// Returned Error Codes:
// * ErrCodeInvalidRequestException "InvalidRequestException"
// This exception is thrown when the client submits a malformed request.
//
// * ErrCodeInternalException "InternalException"
// This exception is thrown when an error occurs in the AWS DataSync service.
//
// See also, https://docs.aws.amazon.com/goto/WebAPI/datasync-2018-11-09/CreateAgent
func (c *DataSync) CreateAgent(input *CreateAgentInput) (*CreateAgentOutput, error) {
req, out := c.CreateAgentRequest(input)
return out, req.Send()
}
// CreateAgentWithContext is the same as CreateAgent with the addition of
// the ability to pass a context and additional request options.
//
// See CreateAgent 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 *DataSync) CreateAgentWithContext(ctx aws.Context, input *CreateAgentInput, opts ...request.Option) (*CreateAgentOutput, error) {
req, out := c.CreateAgentRequest(input)
req.SetContext(ctx)
req.ApplyOptions(opts...)
return out, req.Send()
}
const opCreateLocationEfs = "CreateLocationEfs"
// CreateLocationEfsRequest generates a "aws/request.Request" representing the
// client's request for the CreateLocationEfs operation. The "output" return
// value will be populated with the request's response once the request completes
// successfully.
//
// Use "Send" method on the returned Request to send the API call to the service.
// the "output" return value is not valid until after Send returns without error.
//
// See CreateLocationEfs for more information on using the CreateLocationEfs
// 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 CreateLocationEfsRequest method.
// req, resp := client.CreateLocationEfsRequest(params)
//
// err := req.Send()
// if err == nil { // resp is now filled
// fmt.Println(resp)
// }
//
// See also, https://docs.aws.amazon.com/goto/WebAPI/datasync-2018-11-09/CreateLocationEfs
func (c *DataSync) CreateLocationEfsRequest(input *CreateLocationEfsInput) (req *request.Request, output *CreateLocationEfsOutput) {
op := &request.Operation{
Name: opCreateLocationEfs,
HTTPMethod: "POST",
HTTPPath: "/",
}
if input == nil {
input = &CreateLocationEfsInput{}
}
output = &CreateLocationEfsOutput{}
req = c.newRequest(op, input, output)
return
}
// CreateLocationEfs API operation for AWS DataSync.
//
// Creates an endpoint for an Amazon EFS file system.
//
// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
// with awserr.Error's Code and Message methods to get detailed information about
// the error.
//
// See the AWS API reference guide for AWS DataSync's
// API operation CreateLocationEfs for usage and error information.
//
// Returned Error Codes:
// * ErrCodeInvalidRequestException "InvalidRequestException"
// This exception is thrown when the client submits a malformed request.
//
// * ErrCodeInternalException "InternalException"
// This exception is thrown when an error occurs in the AWS DataSync service.
//
// See also, https://docs.aws.amazon.com/goto/WebAPI/datasync-2018-11-09/CreateLocationEfs
func (c *DataSync) CreateLocationEfs(input *CreateLocationEfsInput) (*CreateLocationEfsOutput, error) {
req, out := c.CreateLocationEfsRequest(input)
return out, req.Send()
}
// CreateLocationEfsWithContext is the same as CreateLocationEfs with the addition of
// the ability to pass a context and additional request options.
//
// See CreateLocationEfs 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 *DataSync) CreateLocationEfsWithContext(ctx aws.Context, input *CreateLocationEfsInput, opts ...request.Option) (*CreateLocationEfsOutput, error) {
req, out := c.CreateLocationEfsRequest(input)
req.SetContext(ctx)
req.ApplyOptions(opts...)
return out, req.Send()
}
const opCreateLocationNfs = "CreateLocationNfs"
// CreateLocationNfsRequest generates a "aws/request.Request" representing the
// client's request for the CreateLocationNfs operation. The "output" return
// value will be populated with the request's response once the request completes
// successfully.
//
// Use "Send" method on the returned Request to send the API call to the service.
// the "output" return value is not valid until after Send returns without error.
//
// See CreateLocationNfs for more information on using the CreateLocationNfs
// 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 CreateLocationNfsRequest method.
// req, resp := client.CreateLocationNfsRequest(params)
//
// err := req.Send()
// if err == nil { // resp is now filled
// fmt.Println(resp)
// }
//
// See also, https://docs.aws.amazon.com/goto/WebAPI/datasync-2018-11-09/CreateLocationNfs
func (c *DataSync) CreateLocationNfsRequest(input *CreateLocationNfsInput) (req *request.Request, output *CreateLocationNfsOutput) {
op := &request.Operation{
Name: opCreateLocationNfs,
HTTPMethod: "POST",
HTTPPath: "/",
}
if input == nil {
input = &CreateLocationNfsInput{}
}
output = &CreateLocationNfsOutput{}
req = c.newRequest(op, input, output)
return
}
// CreateLocationNfs API operation for AWS DataSync.
//
// Creates an endpoint for a Network File System (NFS) file system.
//
// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
// with awserr.Error's Code and Message methods to get detailed information about
// the error.
//
// See the AWS API reference guide for AWS DataSync's
// API operation CreateLocationNfs for usage and error information.
//
// Returned Error Codes:
// * ErrCodeInvalidRequestException "InvalidRequestException"
// This exception is thrown when the client submits a malformed request.
//
// * ErrCodeInternalException "InternalException"
// This exception is thrown when an error occurs in the AWS DataSync service.
//
// See also, https://docs.aws.amazon.com/goto/WebAPI/datasync-2018-11-09/CreateLocationNfs
func (c *DataSync) CreateLocationNfs(input *CreateLocationNfsInput) (*CreateLocationNfsOutput, error) {
req, out := c.CreateLocationNfsRequest(input)
return out, req.Send()
}
// CreateLocationNfsWithContext is the same as CreateLocationNfs with the addition of
// the ability to pass a context and additional request options.
//
// See CreateLocationNfs 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 *DataSync) CreateLocationNfsWithContext(ctx aws.Context, input *CreateLocationNfsInput, opts ...request.Option) (*CreateLocationNfsOutput, error) {
req, out := c.CreateLocationNfsRequest(input)
req.SetContext(ctx)
req.ApplyOptions(opts...)
return out, req.Send()
}
const opCreateLocationS3 = "CreateLocationS3"
// CreateLocationS3Request generates a "aws/request.Request" representing the
// client's request for the CreateLocationS3 operation. The "output" return
// value will be populated with the request's response once the request completes
// successfully.
//
// Use "Send" method on the returned Request to send the API call to the service.
// the "output" return value is not valid until after Send returns without error.
//
// See CreateLocationS3 for more information on using the CreateLocationS3
// 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 CreateLocationS3Request method.
// req, resp := client.CreateLocationS3Request(params)
//
// err := req.Send()
// if err == nil { // resp is now filled
// fmt.Println(resp)
// }
//
// See also, https://docs.aws.amazon.com/goto/WebAPI/datasync-2018-11-09/CreateLocationS3
func (c *DataSync) CreateLocationS3Request(input *CreateLocationS3Input) (req *request.Request, output *CreateLocationS3Output) {
op := &request.Operation{
Name: opCreateLocationS3,
HTTPMethod: "POST",
HTTPPath: "/",
}
if input == nil {
input = &CreateLocationS3Input{}
}
output = &CreateLocationS3Output{}
req = c.newRequest(op, input, output)
return
}
// CreateLocationS3 API operation for AWS DataSync.
//
// Creates an endpoint for an Amazon S3 bucket.
//
// For AWS DataSync to access a destination S3 bucket, it needs an AWS Identity
// and Access Management (IAM) role that has the required permissions. You can
// set up the required permissions by creating an IAM policy that grants the
// required permissions and attaching the policy to the role. An example of
// such a policy is shown in the examples section.
//
// For more information, see "https://docs.aws.amazon.com/datasync/latest/userguide/working-with-locations.html#create-s3-location"
// (Configuring Amazon S3 Location Settings) in the AWS DataSync User Guide.
//
// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
// with awserr.Error's Code and Message methods to get detailed information about
// the error.
//
// See the AWS API reference guide for AWS DataSync's
// API operation CreateLocationS3 for usage and error information.
//
// Returned Error Codes:
// * ErrCodeInvalidRequestException "InvalidRequestException"
// This exception is thrown when the client submits a malformed request.
//
// * ErrCodeInternalException "InternalException"
// This exception is thrown when an error occurs in the AWS DataSync service.
//
// See also, https://docs.aws.amazon.com/goto/WebAPI/datasync-2018-11-09/CreateLocationS3
func (c *DataSync) CreateLocationS3(input *CreateLocationS3Input) (*CreateLocationS3Output, error) {
req, out := c.CreateLocationS3Request(input)
return out, req.Send()
}
// CreateLocationS3WithContext is the same as CreateLocationS3 with the addition of
// the ability to pass a context and additional request options.
//
// See CreateLocationS3 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 *DataSync) CreateLocationS3WithContext(ctx aws.Context, input *CreateLocationS3Input, opts ...request.Option) (*CreateLocationS3Output, error) {
req, out := c.CreateLocationS3Request(input)
req.SetContext(ctx)
req.ApplyOptions(opts...)
return out, req.Send()
}
const opCreateTask = "CreateTask"
// CreateTaskRequest generates a "aws/request.Request" representing the
// client's request for the CreateTask operation. The "output" return
// value will be populated with the request's response once the request completes
// successfully.
//
// Use "Send" method on the returned Request to send the API call to the service.
// the "output" return value is not valid until after Send returns without error.
//
// See CreateTask for more information on using the CreateTask
// 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 CreateTaskRequest method.
// req, resp := client.CreateTaskRequest(params)
//
// err := req.Send()
// if err == nil { // resp is now filled
// fmt.Println(resp)
// }
//
// See also, https://docs.aws.amazon.com/goto/WebAPI/datasync-2018-11-09/CreateTask
func (c *DataSync) CreateTaskRequest(input *CreateTaskInput) (req *request.Request, output *CreateTaskOutput) {
op := &request.Operation{
Name: opCreateTask,
HTTPMethod: "POST",
HTTPPath: "/",
}
if input == nil {
input = &CreateTaskInput{}
}
output = &CreateTaskOutput{}
req = c.newRequest(op, input, output)
return
}
// CreateTask API operation for AWS DataSync.
//
// Creates a task. A task is a set of two locations (source and destination)
// and a set of Options that you use to control the behavior of a task. If you
// don't specify Options when you create a task, AWS DataSync populates them
// with service defaults.
//
// When you create a task, it first enters the CREATING state. During CREATING
// AWS DataSync attempts to mount the on-premises Network File System (NFS)
// location. The task transitions to the AVAILABLE state without waiting for
// the AWS location to become mounted. If required, AWS DataSync mounts the
// AWS location before each task execution.
//
// If an agent that is associated with a source (NFS) location goes offline,
// the task transitions to the UNAVAILABLE status. If the status of the task
// remains in the CREATING status for more than a few minutes, it means that
// your agent might be having trouble mounting the source NFS file system. Check
// the task's ErrorCode and ErrorDetail. Mount issues are often caused by either
// a misconfigured firewall or a mistyped NFS server host name.
//
// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
// with awserr.Error's Code and Message methods to get detailed information about
// the error.
//
// See the AWS API reference guide for AWS DataSync's
// API operation CreateTask for usage and error information.
//
// Returned Error Codes:
// * ErrCodeInvalidRequestException "InvalidRequestException"
// This exception is thrown when the client submits a malformed request.
//
// * ErrCodeInternalException "InternalException"
// This exception is thrown when an error occurs in the AWS DataSync service.
//
// See also, https://docs.aws.amazon.com/goto/WebAPI/datasync-2018-11-09/CreateTask
func (c *DataSync) CreateTask(input *CreateTaskInput) (*CreateTaskOutput, error) {
req, out := c.CreateTaskRequest(input)
return out, req.Send()
}
// CreateTaskWithContext is the same as CreateTask with the addition of
// the ability to pass a context and additional request options.
//
// See CreateTask 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 *DataSync) CreateTaskWithContext(ctx aws.Context, input *CreateTaskInput, opts ...request.Option) (*CreateTaskOutput, error) {
req, out := c.CreateTaskRequest(input)
req.SetContext(ctx)
req.ApplyOptions(opts...)
return out, req.Send()
}
const opDeleteAgent = "DeleteAgent"
// DeleteAgentRequest generates a "aws/request.Request" representing the
// client's request for the DeleteAgent operation. The "output" return
// value will be populated with the request's response once the request completes
// successfully.
//
// Use "Send" method on the returned Request to send the API call to the service.
// the "output" return value is not valid until after Send returns without error.
//
// See DeleteAgent for more information on using the DeleteAgent
// 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 DeleteAgentRequest method.
// req, resp := client.DeleteAgentRequest(params)
//
// err := req.Send()
// if err == nil { // resp is now filled
// fmt.Println(resp)
// }
//
// See also, https://docs.aws.amazon.com/goto/WebAPI/datasync-2018-11-09/DeleteAgent
func (c *DataSync) DeleteAgentRequest(input *DeleteAgentInput) (req *request.Request, output *DeleteAgentOutput) {
op := &request.Operation{
Name: opDeleteAgent,
HTTPMethod: "POST",
HTTPPath: "/",
}
if input == nil {
input = &DeleteAgentInput{}
}
output = &DeleteAgentOutput{}
req = c.newRequest(op, input, output)
req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
return
}
// DeleteAgent API operation for AWS DataSync.
//
// Deletes an agent. To specify which agent to delete, use the Amazon Resource
// Name (ARN) of the agent in your request. The operation disassociates the
// agent from your AWS account. However, it doesn't delete the agent virtual
// machine (VM) from your on-premises environment.
//
// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
// with awserr.Error's Code and Message methods to get detailed information about
// the error.
//
// See the AWS API reference guide for AWS DataSync's
// API operation DeleteAgent for usage and error information.
//
// Returned Error Codes:
// * ErrCodeInvalidRequestException "InvalidRequestException"
// This exception is thrown when the client submits a malformed request.
//
// * ErrCodeInternalException "InternalException"
// This exception is thrown when an error occurs in the AWS DataSync service.
//
// See also, https://docs.aws.amazon.com/goto/WebAPI/datasync-2018-11-09/DeleteAgent
func (c *DataSync) DeleteAgent(input *DeleteAgentInput) (*DeleteAgentOutput, error) {
req, out := c.DeleteAgentRequest(input)
return out, req.Send()
}
// DeleteAgentWithContext is the same as DeleteAgent with the addition of
// the ability to pass a context and additional request options.
//
// See DeleteAgent 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 *DataSync) DeleteAgentWithContext(ctx aws.Context, input *DeleteAgentInput, opts ...request.Option) (*DeleteAgentOutput, error) {
req, out := c.DeleteAgentRequest(input)
req.SetContext(ctx)
req.ApplyOptions(opts...)
return out, req.Send()
}
const opDeleteLocation = "DeleteLocation"
// DeleteLocationRequest generates a "aws/request.Request" representing the
// client's request for the DeleteLocation operation. The "output" return
// value will be populated with the request's response once the request completes
// successfully.
//
// Use "Send" method on the returned Request to send the API call to the service.
// the "output" return value is not valid until after Send returns without error.
//
// See DeleteLocation for more information on using the DeleteLocation
// 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 DeleteLocationRequest method.
// req, resp := client.DeleteLocationRequest(params)
//
// err := req.Send()
// if err == nil { // resp is now filled
// fmt.Println(resp)
// }
//
// See also, https://docs.aws.amazon.com/goto/WebAPI/datasync-2018-11-09/DeleteLocation
func (c *DataSync) DeleteLocationRequest(input *DeleteLocationInput) (req *request.Request, output *DeleteLocationOutput) {
op := &request.Operation{
Name: opDeleteLocation,
HTTPMethod: "POST",
HTTPPath: "/",
}
if input == nil {
input = &DeleteLocationInput{}
}
output = &DeleteLocationOutput{}
req = c.newRequest(op, input, output)
req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
return
}
// DeleteLocation API operation for AWS DataSync.
//
// Deletes the configuration of a location used by AWS DataSync.
//
// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
// with awserr.Error's Code and Message methods to get detailed information about
// the error.
//
// See the AWS API reference guide for AWS DataSync's
// API operation DeleteLocation for usage and error information.
//
// Returned Error Codes:
// * ErrCodeInvalidRequestException "InvalidRequestException"
// This exception is thrown when the client submits a malformed request.
//
// * ErrCodeInternalException "InternalException"
// This exception is thrown when an error occurs in the AWS DataSync service.
//
// See also, https://docs.aws.amazon.com/goto/WebAPI/datasync-2018-11-09/DeleteLocation
func (c *DataSync) DeleteLocation(input *DeleteLocationInput) (*DeleteLocationOutput, error) {
req, out := c.DeleteLocationRequest(input)
return out, req.Send()
}
// DeleteLocationWithContext is the same as DeleteLocation with the addition of
// the ability to pass a context and additional request options.
//
// See DeleteLocation 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 *DataSync) DeleteLocationWithContext(ctx aws.Context, input *DeleteLocationInput, opts ...request.Option) (*DeleteLocationOutput, error) {
req, out := c.DeleteLocationRequest(input)
req.SetContext(ctx)
req.ApplyOptions(opts...)
return out, req.Send()
}
const opDeleteTask = "DeleteTask"
// DeleteTaskRequest generates a "aws/request.Request" representing the
// client's request for the DeleteTask operation. The "output" return
// value will be populated with the request's response once the request completes
// successfully.
//
// Use "Send" method on the returned Request to send the API call to the service.
// the "output" return value is not valid until after Send returns without error.
//
// See DeleteTask for more information on using the DeleteTask
// 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 DeleteTaskRequest method.
// req, resp := client.DeleteTaskRequest(params)
//
// err := req.Send()
// if err == nil { // resp is now filled
// fmt.Println(resp)
// }
//
// See also, https://docs.aws.amazon.com/goto/WebAPI/datasync-2018-11-09/DeleteTask
func (c *DataSync) DeleteTaskRequest(input *DeleteTaskInput) (req *request.Request, output *DeleteTaskOutput) {
op := &request.Operation{
Name: opDeleteTask,
HTTPMethod: "POST",
HTTPPath: "/",
}
if input == nil {
input = &DeleteTaskInput{}
}
output = &DeleteTaskOutput{}
req = c.newRequest(op, input, output)
req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
return
}
// DeleteTask API operation for AWS DataSync.
//
// Deletes a task.
//
// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
// with awserr.Error's Code and Message methods to get detailed information about
// the error.
//
// See the AWS API reference guide for AWS DataSync's
// API operation DeleteTask for usage and error information.
//
// Returned Error Codes:
// * ErrCodeInvalidRequestException "InvalidRequestException"
// This exception is thrown when the client submits a malformed request.
//
// * ErrCodeInternalException "InternalException"
// This exception is thrown when an error occurs in the AWS DataSync service.
//
// See also, https://docs.aws.amazon.com/goto/WebAPI/datasync-2018-11-09/DeleteTask
func (c *DataSync) DeleteTask(input *DeleteTaskInput) (*DeleteTaskOutput, error) {
req, out := c.DeleteTaskRequest(input)
return out, req.Send()
}
// DeleteTaskWithContext is the same as DeleteTask with the addition of
// the ability to pass a context and additional request options.
//
// See DeleteTask 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 *DataSync) DeleteTaskWithContext(ctx aws.Context, input *DeleteTaskInput, opts ...request.Option) (*DeleteTaskOutput, error) {
req, out := c.DeleteTaskRequest(input)
req.SetContext(ctx)
req.ApplyOptions(opts...)
return out, req.Send()
}
const opDescribeAgent = "DescribeAgent"
// DescribeAgentRequest generates a "aws/request.Request" representing the
// client's request for the DescribeAgent operation. The "output" return
// value will be populated with the request's response once the request completes
// successfully.
//
// Use "Send" method on the returned Request to send the API call to the service.
// the "output" return value is not valid until after Send returns without error.
//
// See DescribeAgent for more information on using the DescribeAgent
// 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 DescribeAgentRequest method.
// req, resp := client.DescribeAgentRequest(params)
//
// err := req.Send()
// if err == nil { // resp is now filled
// fmt.Println(resp)
// }
//
// See also, https://docs.aws.amazon.com/goto/WebAPI/datasync-2018-11-09/DescribeAgent
func (c *DataSync) DescribeAgentRequest(input *DescribeAgentInput) (req *request.Request, output *DescribeAgentOutput) {
op := &request.Operation{
Name: opDescribeAgent,
HTTPMethod: "POST",
HTTPPath: "/",
}
if input == nil {
input = &DescribeAgentInput{}
}
output = &DescribeAgentOutput{}
req = c.newRequest(op, input, output)
return
}
// DescribeAgent API operation for AWS DataSync.
//
// Returns metadata such as the name, the network interfaces, and the status
// (that is, whether the agent is running or not) for an agent. To specify which
// agent to describe, use the Amazon Resource Name (ARN) of the agent in your
// request.
//
// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
// with awserr.Error's Code and Message methods to get detailed information about
// the error.
//
// See the AWS API reference guide for AWS DataSync's
// API operation DescribeAgent for usage and error information.
//
// Returned Error Codes:
// * ErrCodeInvalidRequestException "InvalidRequestException"
// This exception is thrown when the client submits a malformed request.
//
// * ErrCodeInternalException "InternalException"
// This exception is thrown when an error occurs in the AWS DataSync service.
//
// See also, https://docs.aws.amazon.com/goto/WebAPI/datasync-2018-11-09/DescribeAgent
func (c *DataSync) DescribeAgent(input *DescribeAgentInput) (*DescribeAgentOutput, error) {
req, out := c.DescribeAgentRequest(input)
return out, req.Send()
}
// DescribeAgentWithContext is the same as DescribeAgent with the addition of
// the ability to pass a context and additional request options.
//
// See DescribeAgent 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 *DataSync) DescribeAgentWithContext(ctx aws.Context, input *DescribeAgentInput, opts ...request.Option) (*DescribeAgentOutput, error) {
req, out := c.DescribeAgentRequest(input)
req.SetContext(ctx)
req.ApplyOptions(opts...)
return out, req.Send()
}
const opDescribeLocationEfs = "DescribeLocationEfs"
// DescribeLocationEfsRequest generates a "aws/request.Request" representing the
// client's request for the DescribeLocationEfs operation. The "output" return
// value will be populated with the request's response once the request completes
// successfully.
//
// Use "Send" method on the returned Request to send the API call to the service.
// the "output" return value is not valid until after Send returns without error.
//
// See DescribeLocationEfs for more information on using the DescribeLocationEfs
// 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 DescribeLocationEfsRequest method.
// req, resp := client.DescribeLocationEfsRequest(params)
//
// err := req.Send()
// if err == nil { // resp is now filled
// fmt.Println(resp)
// }
//
// See also, https://docs.aws.amazon.com/goto/WebAPI/datasync-2018-11-09/DescribeLocationEfs
func (c *DataSync) DescribeLocationEfsRequest(input *DescribeLocationEfsInput) (req *request.Request, output *DescribeLocationEfsOutput) {
op := &request.Operation{
Name: opDescribeLocationEfs,
HTTPMethod: "POST",
HTTPPath: "/",
}
if input == nil {
input = &DescribeLocationEfsInput{}
}
output = &DescribeLocationEfsOutput{}
req = c.newRequest(op, input, output)
return
}
// DescribeLocationEfs API operation for AWS DataSync.
//
// Returns metadata, such as the path information about an Amazon EFS location.
//
// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
// with awserr.Error's Code and Message methods to get detailed information about
// the error.
//
// See the AWS API reference guide for AWS DataSync's
// API operation DescribeLocationEfs for usage and error information.
//
// Returned Error Codes:
// * ErrCodeInvalidRequestException "InvalidRequestException"
// This exception is thrown when the client submits a malformed request.
//
// * ErrCodeInternalException "InternalException"
// This exception is thrown when an error occurs in the AWS DataSync service.
//
// See also, https://docs.aws.amazon.com/goto/WebAPI/datasync-2018-11-09/DescribeLocationEfs
func (c *DataSync) DescribeLocationEfs(input *DescribeLocationEfsInput) (*DescribeLocationEfsOutput, error) {
req, out := c.DescribeLocationEfsRequest(input)
return out, req.Send()
}
// DescribeLocationEfsWithContext is the same as DescribeLocationEfs with the addition of
// the ability to pass a context and additional request options.
//
// See DescribeLocationEfs 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 *DataSync) DescribeLocationEfsWithContext(ctx aws.Context, input *DescribeLocationEfsInput, opts ...request.Option) (*DescribeLocationEfsOutput, error) {
req, out := c.DescribeLocationEfsRequest(input)
req.SetContext(ctx)
req.ApplyOptions(opts...)
return out, req.Send()
}
const opDescribeLocationNfs = "DescribeLocationNfs"
// DescribeLocationNfsRequest generates a "aws/request.Request" representing the
// client's request for the DescribeLocationNfs operation. The "output" return
// value will be populated with the request's response once the request completes
// successfully.
//
// Use "Send" method on the returned Request to send the API call to the service.
// the "output" return value is not valid until after Send returns without error.
//
// See DescribeLocationNfs for more information on using the DescribeLocationNfs
// 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 DescribeLocationNfsRequest method.
// req, resp := client.DescribeLocationNfsRequest(params)
//
// err := req.Send()
// if err == nil { // resp is now filled
// fmt.Println(resp)
// }
//
// See also, https://docs.aws.amazon.com/goto/WebAPI/datasync-2018-11-09/DescribeLocationNfs
func (c *DataSync) DescribeLocationNfsRequest(input *DescribeLocationNfsInput) (req *request.Request, output *DescribeLocationNfsOutput) {
op := &request.Operation{
Name: opDescribeLocationNfs,
HTTPMethod: "POST",
HTTPPath: "/",
}
if input == nil {
input = &DescribeLocationNfsInput{}
}
output = &DescribeLocationNfsOutput{}
req = c.newRequest(op, input, output)
return
}
// DescribeLocationNfs API operation for AWS DataSync.
//
// Returns metadata, such as the path information, about a NFS location.
//
// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
// with awserr.Error's Code and Message methods to get detailed information about
// the error.
//
// See the AWS API reference guide for AWS DataSync's
// API operation DescribeLocationNfs for usage and error information.
//
// Returned Error Codes:
// * ErrCodeInvalidRequestException "InvalidRequestException"
// This exception is thrown when the client submits a malformed request.
//
// * ErrCodeInternalException "InternalException"
// This exception is thrown when an error occurs in the AWS DataSync service.
//
// See also, https://docs.aws.amazon.com/goto/WebAPI/datasync-2018-11-09/DescribeLocationNfs
func (c *DataSync) DescribeLocationNfs(input *DescribeLocationNfsInput) (*DescribeLocationNfsOutput, error) {
req, out := c.DescribeLocationNfsRequest(input)
return out, req.Send()
}
// DescribeLocationNfsWithContext is the same as DescribeLocationNfs with the addition of
// the ability to pass a context and additional request options.
//
// See DescribeLocationNfs 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 *DataSync) DescribeLocationNfsWithContext(ctx aws.Context, input *DescribeLocationNfsInput, opts ...request.Option) (*DescribeLocationNfsOutput, error) {
req, out := c.DescribeLocationNfsRequest(input)
req.SetContext(ctx)
req.ApplyOptions(opts...)
return out, req.Send()
}
const opDescribeLocationS3 = "DescribeLocationS3"
// DescribeLocationS3Request generates a "aws/request.Request" representing the
// client's request for the DescribeLocationS3 operation. The "output" return
// value will be populated with the request's response once the request completes
// successfully.
//
// Use "Send" method on the returned Request to send the API call to the service.
// the "output" return value is not valid until after Send returns without error.
//
// See DescribeLocationS3 for more information on using the DescribeLocationS3
// 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 DescribeLocationS3Request method.
// req, resp := client.DescribeLocationS3Request(params)
//
// err := req.Send()
// if err == nil { // resp is now filled
// fmt.Println(resp)
// }
//
// See also, https://docs.aws.amazon.com/goto/WebAPI/datasync-2018-11-09/DescribeLocationS3
func (c *DataSync) DescribeLocationS3Request(input *DescribeLocationS3Input) (req *request.Request, output *DescribeLocationS3Output) {
op := &request.Operation{
Name: opDescribeLocationS3,
HTTPMethod: "POST",
HTTPPath: "/",
}
if input == nil {
input = &DescribeLocationS3Input{}
}
output = &DescribeLocationS3Output{}
req = c.newRequest(op, input, output)
return
}
// DescribeLocationS3 API operation for AWS DataSync.
//
// Returns metadata, such as bucket name, about an Amazon S3 bucket location.
//
// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
// with awserr.Error's Code and Message methods to get detailed information about
// the error.
//
// See the AWS API reference guide for AWS DataSync's
// API operation DescribeLocationS3 for usage and error information.
//
// Returned Error Codes:
// * ErrCodeInvalidRequestException "InvalidRequestException"
// This exception is thrown when the client submits a malformed request.
//
// * ErrCodeInternalException "InternalException"
// This exception is thrown when an error occurs in the AWS DataSync service.
//
// See also, https://docs.aws.amazon.com/goto/WebAPI/datasync-2018-11-09/DescribeLocationS3
func (c *DataSync) DescribeLocationS3(input *DescribeLocationS3Input) (*DescribeLocationS3Output, error) {
req, out := c.DescribeLocationS3Request(input)
return out, req.Send()
}
// DescribeLocationS3WithContext is the same as DescribeLocationS3 with the addition of
// the ability to pass a context and additional request options.
//
// See DescribeLocationS3 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 *DataSync) DescribeLocationS3WithContext(ctx aws.Context, input *DescribeLocationS3Input, opts ...request.Option) (*DescribeLocationS3Output, error) {
req, out := c.DescribeLocationS3Request(input)
req.SetContext(ctx)
req.ApplyOptions(opts...)
return out, req.Send()
}
const opDescribeTask = "DescribeTask"
// DescribeTaskRequest generates a "aws/request.Request" representing the
// client's request for the DescribeTask operation. The "output" return
// value will be populated with the request's response once the request completes
// successfully.
//
// Use "Send" method on the returned Request to send the API call to the service.
// the "output" return value is not valid until after Send returns without error.
//
// See DescribeTask for more information on using the DescribeTask
// 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 DescribeTaskRequest method.
// req, resp := client.DescribeTaskRequest(params)
//
// err := req.Send()
// if err == nil { // resp is now filled
// fmt.Println(resp)
// }
//
// See also, https://docs.aws.amazon.com/goto/WebAPI/datasync-2018-11-09/DescribeTask
func (c *DataSync) DescribeTaskRequest(input *DescribeTaskInput) (req *request.Request, output *DescribeTaskOutput) {
op := &request.Operation{
Name: opDescribeTask,
HTTPMethod: "POST",
HTTPPath: "/",
}
if input == nil {
input = &DescribeTaskInput{}
}
output = &DescribeTaskOutput{}
req = c.newRequest(op, input, output)
return
}
// DescribeTask API operation for AWS DataSync.
//
// Returns metadata about a task.
//
// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
// with awserr.Error's Code and Message methods to get detailed information about
// the error.
//
// See the AWS API reference guide for AWS DataSync's
// API operation DescribeTask for usage and error information.
//
// Returned Error Codes:
// * ErrCodeInvalidRequestException "InvalidRequestException"
// This exception is thrown when the client submits a malformed request.
//
// * ErrCodeInternalException "InternalException"
// This exception is thrown when an error occurs in the AWS DataSync service.
//
// See also, https://docs.aws.amazon.com/goto/WebAPI/datasync-2018-11-09/DescribeTask
func (c *DataSync) DescribeTask(input *DescribeTaskInput) (*DescribeTaskOutput, error) {
req, out := c.DescribeTaskRequest(input)
return out, req.Send()
}
// DescribeTaskWithContext is the same as DescribeTask with the addition of
// the ability to pass a context and additional request options.
//
// See DescribeTask 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 *DataSync) DescribeTaskWithContext(ctx aws.Context, input *DescribeTaskInput, opts ...request.Option) (*DescribeTaskOutput, error) {
req, out := c.DescribeTaskRequest(input)
req.SetContext(ctx)
req.ApplyOptions(opts...)
return out, req.Send()
}
const opDescribeTaskExecution = "DescribeTaskExecution"
// DescribeTaskExecutionRequest generates a "aws/request.Request" representing the
// client's request for the DescribeTaskExecution operation. The "output" return
// value will be populated with the request's response once the request completes
// successfully.
//
// Use "Send" method on the returned Request to send the API call to the service.
// the "output" return value is not valid until after Send returns without error.
//
// See DescribeTaskExecution for more information on using the DescribeTaskExecution
// 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 DescribeTaskExecutionRequest method.
// req, resp := client.DescribeTaskExecutionRequest(params)
//
// err := req.Send()
// if err == nil { // resp is now filled
// fmt.Println(resp)
// }
//
// See also, https://docs.aws.amazon.com/goto/WebAPI/datasync-2018-11-09/DescribeTaskExecution
func (c *DataSync) DescribeTaskExecutionRequest(input *DescribeTaskExecutionInput) (req *request.Request, output *DescribeTaskExecutionOutput) {
op := &request.Operation{
Name: opDescribeTaskExecution,
HTTPMethod: "POST",
HTTPPath: "/",
}
if input == nil {
input = &DescribeTaskExecutionInput{}
}
output = &DescribeTaskExecutionOutput{}
req = c.newRequest(op, input, output)
return
}
// DescribeTaskExecution API operation for AWS DataSync.
//
// Returns detailed metadata about a task that is being executed.
//
// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
// with awserr.Error's Code and Message methods to get detailed information about
// the error.
//
// See the AWS API reference guide for AWS DataSync's
// API operation DescribeTaskExecution for usage and error information.
//
// Returned Error Codes:
// * ErrCodeInvalidRequestException "InvalidRequestException"
// This exception is thrown when the client submits a malformed request.
//
// * ErrCodeInternalException "InternalException"
// This exception is thrown when an error occurs in the AWS DataSync service.
//
// See also, https://docs.aws.amazon.com/goto/WebAPI/datasync-2018-11-09/DescribeTaskExecution
func (c *DataSync) DescribeTaskExecution(input *DescribeTaskExecutionInput) (*DescribeTaskExecutionOutput, error) {
req, out := c.DescribeTaskExecutionRequest(input)
return out, req.Send()
}
// DescribeTaskExecutionWithContext is the same as DescribeTaskExecution with the addition of
// the ability to pass a context and additional request options.
//
// See DescribeTaskExecution 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 *DataSync) DescribeTaskExecutionWithContext(ctx aws.Context, input *DescribeTaskExecutionInput, opts ...request.Option) (*DescribeTaskExecutionOutput, error) {
req, out := c.DescribeTaskExecutionRequest(input)
req.SetContext(ctx)
req.ApplyOptions(opts...)
return out, req.Send()
}
const opListAgents = "ListAgents"
// ListAgentsRequest generates a "aws/request.Request" representing the
// client's request for the ListAgents operation. The "output" return
// value will be populated with the request's response once the request completes
// successfully.
//
// Use "Send" method on the returned Request to send the API call to the service.
// the "output" return value is not valid until after Send returns without error.
//
// See ListAgents for more information on using the ListAgents
// 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 ListAgentsRequest method.
// req, resp := client.ListAgentsRequest(params)
//
// err := req.Send()
// if err == nil { // resp is now filled
// fmt.Println(resp)
// }
//
// See also, https://docs.aws.amazon.com/goto/WebAPI/datasync-2018-11-09/ListAgents
func (c *DataSync) ListAgentsRequest(input *ListAgentsInput) (req *request.Request, output *ListAgentsOutput) {
op := &request.Operation{
Name: opListAgents,
HTTPMethod: "POST",
HTTPPath: "/",
Paginator: &request.Paginator{
InputTokens: []string{"NextToken"},
OutputTokens: []string{"NextToken"},
LimitToken: "MaxResults",
TruncationToken: "",
},
}
if input == nil {
input = &ListAgentsInput{}
}
output = &ListAgentsOutput{}
req = c.newRequest(op, input, output)
return
}
// ListAgents API operation for AWS DataSync.
//
// Returns a list of agents owned by an AWS account in the AWS Region specified
// in the request. The returned list is ordered by agent Amazon Resource Name
// (ARN).
//
// By default, this operation returns a maximum of 100 agents. This operation
// supports pagination that enables you to optionally reduce the number of agents
// returned in a response.
//
// If you have more agents than are returned in a response (that is, the response
// returns only a truncated list of your agents), the response contains a marker
// that you can specify in your next request to fetch the next page of agents.
//
// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
// with awserr.Error's Code and Message methods to get detailed information about
// the error.
//
// See the AWS API reference guide for AWS DataSync's
// API operation ListAgents for usage and error information.
//
// Returned Error Codes:
// * ErrCodeInvalidRequestException "InvalidRequestException"
// This exception is thrown when the client submits a malformed request.
//
// * ErrCodeInternalException "InternalException"
// This exception is thrown when an error occurs in the AWS DataSync service.
//
// See also, https://docs.aws.amazon.com/goto/WebAPI/datasync-2018-11-09/ListAgents
func (c *DataSync) ListAgents(input *ListAgentsInput) (*ListAgentsOutput, error) {
req, out := c.ListAgentsRequest(input)
return out, req.Send()
}
// ListAgentsWithContext is the same as ListAgents with the addition of
// the ability to pass a context and additional request options.
//
// See ListAgents 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 *DataSync) ListAgentsWithContext(ctx aws.Context, input *ListAgentsInput, opts ...request.Option) (*ListAgentsOutput, error) {
req, out := c.ListAgentsRequest(input)
req.SetContext(ctx)
req.ApplyOptions(opts...)
return out, req.Send()
}
// ListAgentsPages iterates over the pages of a ListAgents operation,
// calling the "fn" function with the response data for each page. To stop
// iterating, return false from the fn function.
//
// See ListAgents 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 ListAgents operation.
// pageNum := 0
// err := client.ListAgentsPages(params,
// func(page *datasync.ListAgentsOutput, lastPage bool) bool {
// pageNum++
// fmt.Println(page)
// return pageNum <= 3
// })
//
func (c *DataSync) ListAgentsPages(input *ListAgentsInput, fn func(*ListAgentsOutput, bool) bool) error {
return c.ListAgentsPagesWithContext(aws.BackgroundContext(), input, fn)
}
// ListAgentsPagesWithContext same as ListAgentsPages 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 *DataSync) ListAgentsPagesWithContext(ctx aws.Context, input *ListAgentsInput, fn func(*ListAgentsOutput, bool) bool, opts ...request.Option) error {
p := request.Pagination{
NewRequest: func() (*request.Request, error) {
var inCpy *ListAgentsInput
if input != nil {
tmp := *input
inCpy = &tmp
}
req, _ := c.ListAgentsRequest(inCpy)
req.SetContext(ctx)
req.ApplyOptions(opts...)
return req, nil
},
}
cont := true
for p.Next() && cont {
cont = fn(p.Page().(*ListAgentsOutput), !p.HasNextPage())
}
return p.Err()
}
const opListLocations = "ListLocations"
// ListLocationsRequest generates a "aws/request.Request" representing the
// client's request for the ListLocations operation. The "output" return
// value will be populated with the request's response once the request completes
// successfully.
//
// Use "Send" method on the returned Request to send the API call to the service.
// the "output" return value is not valid until after Send returns without error.
//
// See ListLocations for more information on using the ListLocations
// 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 ListLocationsRequest method.
// req, resp := client.ListLocationsRequest(params)
//
// err := req.Send()
// if err == nil { // resp is now filled
// fmt.Println(resp)
// }
//
// See also, https://docs.aws.amazon.com/goto/WebAPI/datasync-2018-11-09/ListLocations
func (c *DataSync) ListLocationsRequest(input *ListLocationsInput) (req *request.Request, output *ListLocationsOutput) {
op := &request.Operation{
Name: opListLocations,
HTTPMethod: "POST",
HTTPPath: "/",
Paginator: &request.Paginator{
InputTokens: []string{"NextToken"},
OutputTokens: []string{"NextToken"},
LimitToken: "MaxResults",
TruncationToken: "",
},
}
if input == nil {
input = &ListLocationsInput{}
}
output = &ListLocationsOutput{}
req = c.newRequest(op, input, output)
return
}
// ListLocations API operation for AWS DataSync.
//
// Returns a lists of source and destination locations.
//
// If you have more locations than are returned in a response (that is, the
// response returns only a truncated list of your agents), the response contains
// a token that you can specify in your next request to fetch the next page
// of locations.
//
// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
// with awserr.Error's Code and Message methods to get detailed information about
// the error.
//
// See the AWS API reference guide for AWS DataSync's
// API operation ListLocations for usage and error information.
//
// Returned Error Codes:
// * ErrCodeInvalidRequestException "InvalidRequestException"
// This exception is thrown when the client submits a malformed request.
//
// * ErrCodeInternalException "InternalException"
// This exception is thrown when an error occurs in the AWS DataSync service.
//
// See also, https://docs.aws.amazon.com/goto/WebAPI/datasync-2018-11-09/ListLocations
func (c *DataSync) ListLocations(input *ListLocationsInput) (*ListLocationsOutput, error) {
req, out := c.ListLocationsRequest(input)
return out, req.Send()
}
// ListLocationsWithContext is the same as ListLocations with the addition of
// the ability to pass a context and additional request options.
//
// See ListLocations 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 *DataSync) ListLocationsWithContext(ctx aws.Context, input *ListLocationsInput, opts ...request.Option) (*ListLocationsOutput, error) {
req, out := c.ListLocationsRequest(input)
req.SetContext(ctx)
req.ApplyOptions(opts...)
return out, req.Send()
}
// ListLocationsPages iterates over the pages of a ListLocations operation,
// calling the "fn" function with the response data for each page. To stop
// iterating, return false from the fn function.
//
// See ListLocations 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 ListLocations operation.
// pageNum := 0
// err := client.ListLocationsPages(params,
// func(page *datasync.ListLocationsOutput, lastPage bool) bool {
// pageNum++
// fmt.Println(page)
// return pageNum <= 3
// })
//
func (c *DataSync) ListLocationsPages(input *ListLocationsInput, fn func(*ListLocationsOutput, bool) bool) error {
return c.ListLocationsPagesWithContext(aws.BackgroundContext(), input, fn)
}
// ListLocationsPagesWithContext same as ListLocationsPages 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 *DataSync) ListLocationsPagesWithContext(ctx aws.Context, input *ListLocationsInput, fn func(*ListLocationsOutput, bool) bool, opts ...request.Option) error {
p := request.Pagination{
NewRequest: func() (*request.Request, error) {
var inCpy *ListLocationsInput
if input != nil {
tmp := *input
inCpy = &tmp
}
req, _ := c.ListLocationsRequest(inCpy)
req.SetContext(ctx)
req.ApplyOptions(opts...)
return req, nil
},
}
cont := true
for p.Next() && cont {
cont = fn(p.Page().(*ListLocationsOutput), !p.HasNextPage())
}
return p.Err()
}
const opListTagsForResource = "ListTagsForResource"
// ListTagsForResourceRequest generates a "aws/request.Request" representing the
// client's request for the ListTagsForResource operation. The "output" return
// value will be populated with the request's response once the request completes
// successfully.
//
// Use "Send" method on the returned Request to send the API call to the service.
// the "output" return value is not valid until after Send returns without error.
//
// See ListTagsForResource for more information on using the ListTagsForResource
// 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 ListTagsForResourceRequest method.
// req, resp := client.ListTagsForResourceRequest(params)
//
// err := req.Send()
// if err == nil { // resp is now filled
// fmt.Println(resp)
// }
//
// See also, https://docs.aws.amazon.com/goto/WebAPI/datasync-2018-11-09/ListTagsForResource
func (c *DataSync) ListTagsForResourceRequest(input *ListTagsForResourceInput) (req *request.Request, output *ListTagsForResourceOutput) {
op := &request.Operation{
Name: opListTagsForResource,
HTTPMethod: "POST",
HTTPPath: "/",
Paginator: &request.Paginator{
InputTokens: []string{"NextToken"},
OutputTokens: []string{"NextToken"},
LimitToken: "MaxResults",
TruncationToken: "",
},
}
if input == nil {
input = &ListTagsForResourceInput{}
}
output = &ListTagsForResourceOutput{}
req = c.newRequest(op, input, output)
return
}
// ListTagsForResource API operation for AWS DataSync.
//
// Returns all the tags associated with a specified resources.
//
// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
// with awserr.Error's Code and Message methods to get detailed information about
// the error.
//
// See the AWS API reference guide for AWS DataSync's
// API operation ListTagsForResource for usage and error information.
//
// Returned Error Codes:
// * ErrCodeInvalidRequestException "InvalidRequestException"
// This exception is thrown when the client submits a malformed request.
//
// * ErrCodeInternalException "InternalException"
// This exception is thrown when an error occurs in the AWS DataSync service.
//
// See also, https://docs.aws.amazon.com/goto/WebAPI/datasync-2018-11-09/ListTagsForResource
func (c *DataSync) ListTagsForResource(input *ListTagsForResourceInput) (*ListTagsForResourceOutput, error) {
req, out := c.ListTagsForResourceRequest(input)
return out, req.Send()
}
// ListTagsForResourceWithContext is the same as ListTagsForResource with the addition of
// the ability to pass a context and additional request options.
//
// See ListTagsForResource 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 *DataSync) ListTagsForResourceWithContext(ctx aws.Context, input *ListTagsForResourceInput, opts ...request.Option) (*ListTagsForResourceOutput, error) {
req, out := c.ListTagsForResourceRequest(input)
req.SetContext(ctx)
req.ApplyOptions(opts...)
return out, req.Send()
}
// ListTagsForResourcePages iterates over the pages of a ListTagsForResource operation,
// calling the "fn" function with the response data for each page. To stop
// iterating, return false from the fn function.
//
// See ListTagsForResource 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 ListTagsForResource operation.
// pageNum := 0
// err := client.ListTagsForResourcePages(params,
// func(page *datasync.ListTagsForResourceOutput, lastPage bool) bool {
// pageNum++
// fmt.Println(page)
// return pageNum <= 3
// })
//
func (c *DataSync) ListTagsForResourcePages(input *ListTagsForResourceInput, fn func(*ListTagsForResourceOutput, bool) bool) error {
return c.ListTagsForResourcePagesWithContext(aws.BackgroundContext(), input, fn)
}
// ListTagsForResourcePagesWithContext same as ListTagsForResourcePages 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 *DataSync) ListTagsForResourcePagesWithContext(ctx aws.Context, input *ListTagsForResourceInput, fn func(*ListTagsForResourceOutput, bool) bool, opts ...request.Option) error {
p := request.Pagination{
NewRequest: func() (*request.Request, error) {
var inCpy *ListTagsForResourceInput
if input != nil {
tmp := *input
inCpy = &tmp
}
req, _ := c.ListTagsForResourceRequest(inCpy)
req.SetContext(ctx)
req.ApplyOptions(opts...)
return req, nil
},
}
cont := true
for p.Next() && cont {
cont = fn(p.Page().(*ListTagsForResourceOutput), !p.HasNextPage())
}
return p.Err()
}
const opListTaskExecutions = "ListTaskExecutions"
// ListTaskExecutionsRequest generates a "aws/request.Request" representing the
// client's request for the ListTaskExecutions operation. The "output" return
// value will be populated with the request's response once the request completes
// successfully.
//
// Use "Send" method on the returned Request to send the API call to the service.
// the "output" return value is not valid until after Send returns without error.
//
// See ListTaskExecutions for more information on using the ListTaskExecutions
// 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 ListTaskExecutionsRequest method.
// req, resp := client.ListTaskExecutionsRequest(params)
//
// err := req.Send()
// if err == nil { // resp is now filled
// fmt.Println(resp)
// }
//
// See also, https://docs.aws.amazon.com/goto/WebAPI/datasync-2018-11-09/ListTaskExecutions
func (c *DataSync) ListTaskExecutionsRequest(input *ListTaskExecutionsInput) (req *request.Request, output *ListTaskExecutionsOutput) {
op := &request.Operation{
Name: opListTaskExecutions,
HTTPMethod: "POST",
HTTPPath: "/",
Paginator: &request.Paginator{
InputTokens: []string{"NextToken"},
OutputTokens: []string{"NextToken"},
LimitToken: "MaxResults",
TruncationToken: "",
},
}
if input == nil {
input = &ListTaskExecutionsInput{}
}
output = &ListTaskExecutionsOutput{}
req = c.newRequest(op, input, output)
return
}
// ListTaskExecutions API operation for AWS DataSync.
//
// Returns a list of executed tasks.
//
// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
// with awserr.Error's Code and Message methods to get detailed information about
// the error.
//
// See the AWS API reference guide for AWS DataSync's
// API operation ListTaskExecutions for usage and error information.
//
// Returned Error Codes:
// * ErrCodeInvalidRequestException "InvalidRequestException"
// This exception is thrown when the client submits a malformed request.
//
// * ErrCodeInternalException "InternalException"
// This exception is thrown when an error occurs in the AWS DataSync service.
//
// See also, https://docs.aws.amazon.com/goto/WebAPI/datasync-2018-11-09/ListTaskExecutions
func (c *DataSync) ListTaskExecutions(input *ListTaskExecutionsInput) (*ListTaskExecutionsOutput, error) {
req, out := c.ListTaskExecutionsRequest(input)
return out, req.Send()
}
// ListTaskExecutionsWithContext is the same as ListTaskExecutions with the addition of
// the ability to pass a context and additional request options.
//
// See ListTaskExecutions 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 *DataSync) ListTaskExecutionsWithContext(ctx aws.Context, input *ListTaskExecutionsInput, opts ...request.Option) (*ListTaskExecutionsOutput, error) {
req, out := c.ListTaskExecutionsRequest(input)
req.SetContext(ctx)
req.ApplyOptions(opts...)
return out, req.Send()
}
// ListTaskExecutionsPages iterates over the pages of a ListTaskExecutions operation,
// calling the "fn" function with the response data for each page. To stop
// iterating, return false from the fn function.
//
// See ListTaskExecutions 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 ListTaskExecutions operation.
// pageNum := 0
// err := client.ListTaskExecutionsPages(params,
// func(page *datasync.ListTaskExecutionsOutput, lastPage bool) bool {
// pageNum++
// fmt.Println(page)
// return pageNum <= 3
// })
//
func (c *DataSync) ListTaskExecutionsPages(input *ListTaskExecutionsInput, fn func(*ListTaskExecutionsOutput, bool) bool) error {
return c.ListTaskExecutionsPagesWithContext(aws.BackgroundContext(), input, fn)
}
// ListTaskExecutionsPagesWithContext same as ListTaskExecutionsPages 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 *DataSync) ListTaskExecutionsPagesWithContext(ctx aws.Context, input *ListTaskExecutionsInput, fn func(*ListTaskExecutionsOutput, bool) bool, opts ...request.Option) error {
p := request.Pagination{
NewRequest: func() (*request.Request, error) {
var inCpy *ListTaskExecutionsInput
if input != nil {
tmp := *input
inCpy = &tmp
}
req, _ := c.ListTaskExecutionsRequest(inCpy)
req.SetContext(ctx)
req.ApplyOptions(opts...)
return req, nil
},
}
cont := true
for p.Next() && cont {
cont = fn(p.Page().(*ListTaskExecutionsOutput), !p.HasNextPage())
}
return p.Err()
}
const opListTasks = "ListTasks"
// ListTasksRequest generates a "aws/request.Request" representing the
// client's request for the ListTasks operation. The "output" return
// value will be populated with the request's response once the request completes
// successfully.
//
// Use "Send" method on the returned Request to send the API call to the service.
// the "output" return value is not valid until after Send returns without error.
//
// See ListTasks for more information on using the ListTasks
// 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 ListTasksRequest method.
// req, resp := client.ListTasksRequest(params)
//
// err := req.Send()
// if err == nil { // resp is now filled
// fmt.Println(resp)
// }
//
// See also, https://docs.aws.amazon.com/goto/WebAPI/datasync-2018-11-09/ListTasks
func (c *DataSync) ListTasksRequest(input *ListTasksInput) (req *request.Request, output *ListTasksOutput) {
op := &request.Operation{
Name: opListTasks,
HTTPMethod: "POST",
HTTPPath: "/",
Paginator: &request.Paginator{
InputTokens: []string{"NextToken"},
OutputTokens: []string{"NextToken"},
LimitToken: "MaxResults",
TruncationToken: "",
},
}
if input == nil {
input = &ListTasksInput{}
}
output = &ListTasksOutput{}
req = c.newRequest(op, input, output)
return
}
// ListTasks API operation for AWS DataSync.
//
// Returns a list of all the tasks.
//
// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
// with awserr.Error's Code and Message methods to get detailed information about
// the error.
//
// See the AWS API reference guide for AWS DataSync's
// API operation ListTasks for usage and error information.
//
// Returned Error Codes:
// * ErrCodeInvalidRequestException "InvalidRequestException"
// This exception is thrown when the client submits a malformed request.
//
// * ErrCodeInternalException "InternalException"
// This exception is thrown when an error occurs in the AWS DataSync service.
//
// See also, https://docs.aws.amazon.com/goto/WebAPI/datasync-2018-11-09/ListTasks
func (c *DataSync) ListTasks(input *ListTasksInput) (*ListTasksOutput, error) {
req, out := c.ListTasksRequest(input)
return out, req.Send()
}
// ListTasksWithContext is the same as ListTasks with the addition of
// the ability to pass a context and additional request options.
//
// See ListTasks 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 *DataSync) ListTasksWithContext(ctx aws.Context, input *ListTasksInput, opts ...request.Option) (*ListTasksOutput, error) {
req, out := c.ListTasksRequest(input)
req.SetContext(ctx)
req.ApplyOptions(opts...)
return out, req.Send()
}
// ListTasksPages iterates over the pages of a ListTasks operation,
// calling the "fn" function with the response data for each page. To stop
// iterating, return false from the fn function.
//
// See ListTasks 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 ListTasks operation.
// pageNum := 0
// err := client.ListTasksPages(params,
// func(page *datasync.ListTasksOutput, lastPage bool) bool {
// pageNum++
// fmt.Println(page)
// return pageNum <= 3
// })
//
func (c *DataSync) ListTasksPages(input *ListTasksInput, fn func(*ListTasksOutput, bool) bool) error {
return c.ListTasksPagesWithContext(aws.BackgroundContext(), input, fn)
}
// ListTasksPagesWithContext same as ListTasksPages 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 *DataSync) ListTasksPagesWithContext(ctx aws.Context, input *ListTasksInput, fn func(*ListTasksOutput, bool) bool, opts ...request.Option) error {
p := request.Pagination{
NewRequest: func() (*request.Request, error) {
var inCpy *ListTasksInput
if input != nil {
tmp := *input
inCpy = &tmp
}
req, _ := c.ListTasksRequest(inCpy)
req.SetContext(ctx)
req.ApplyOptions(opts...)
return req, nil
},
}
cont := true
for p.Next() && cont {
cont = fn(p.Page().(*ListTasksOutput), !p.HasNextPage())
}
return p.Err()
}
const opStartTaskExecution = "StartTaskExecution"
// StartTaskExecutionRequest generates a "aws/request.Request" representing the
// client's request for the StartTaskExecution operation. The "output" return
// value will be populated with the request's response once the request completes
// successfully.
//
// Use "Send" method on the returned Request to send the API call to the service.
// the "output" return value is not valid until after Send returns without error.
//
// See StartTaskExecution for more information on using the StartTaskExecution
// 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 StartTaskExecutionRequest method.
// req, resp := client.StartTaskExecutionRequest(params)
//
// err := req.Send()
// if err == nil { // resp is now filled
// fmt.Println(resp)
// }
//
// See also, https://docs.aws.amazon.com/goto/WebAPI/datasync-2018-11-09/StartTaskExecution
func (c *DataSync) StartTaskExecutionRequest(input *StartTaskExecutionInput) (req *request.Request, output *StartTaskExecutionOutput) {
op := &request.Operation{
Name: opStartTaskExecution,
HTTPMethod: "POST",
HTTPPath: "/",
}
if input == nil {
input = &StartTaskExecutionInput{}
}
output = &StartTaskExecutionOutput{}
req = c.newRequest(op, input, output)
return
}
// StartTaskExecution API operation for AWS DataSync.
//
// Starts a specific invocation of a task. A TaskExecution value represents
// an individual run of a task. Each task can have at most one TaskExecution
// at a time.
//
// TaskExecution has the following transition phases: INITIALIZING | PREPARING
// | TRANSFERRING | VERIFYING | SUCCESS/FAILURE.
//
// For detailed information, see Task Execution in "https://docs.aws.amazon.com/datasync/latest/userguide/how-datasync-works.html#terminology"
// (Components and Terminology) in the AWS DataSync User Guide.
//
// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
// with awserr.Error's Code and Message methods to get detailed information about
// the error.
//
// See the AWS API reference guide for AWS DataSync's
// API operation StartTaskExecution for usage and error information.
//
// Returned Error Codes:
// * ErrCodeInvalidRequestException "InvalidRequestException"
// This exception is thrown when the client submits a malformed request.
//
// * ErrCodeInternalException "InternalException"
// This exception is thrown when an error occurs in the AWS DataSync service.
//
// See also, https://docs.aws.amazon.com/goto/WebAPI/datasync-2018-11-09/StartTaskExecution
func (c *DataSync) StartTaskExecution(input *StartTaskExecutionInput) (*StartTaskExecutionOutput, error) {
req, out := c.StartTaskExecutionRequest(input)
return out, req.Send()
}
// StartTaskExecutionWithContext is the same as StartTaskExecution with the addition of
// the ability to pass a context and additional request options.
//
// See StartTaskExecution 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 *DataSync) StartTaskExecutionWithContext(ctx aws.Context, input *StartTaskExecutionInput, opts ...request.Option) (*StartTaskExecutionOutput, error) {
req, out := c.StartTaskExecutionRequest(input)
req.SetContext(ctx)
req.ApplyOptions(opts...)
return out, req.Send()
}
const opTagResource = "TagResource"
// TagResourceRequest generates a "aws/request.Request" representing the
// client's request for the TagResource operation. The "output" return
// value will be populated with the request's response once the request completes
// successfully.
//
// Use "Send" method on the returned Request to send the API call to the service.
// the "output" return value is not valid until after Send returns without error.
//
// See TagResource for more information on using the TagResource
// 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 TagResourceRequest method.
// req, resp := client.TagResourceRequest(params)
//
// err := req.Send()
// if err == nil { // resp is now filled
// fmt.Println(resp)
// }
//
// See also, https://docs.aws.amazon.com/goto/WebAPI/datasync-2018-11-09/TagResource
func (c *DataSync) TagResourceRequest(input *TagResourceInput) (req *request.Request, output *TagResourceOutput) {
op := &request.Operation{
Name: opTagResource,
HTTPMethod: "POST",
HTTPPath: "/",
}
if input == nil {
input = &TagResourceInput{}
}
output = &TagResourceOutput{}
req = c.newRequest(op, input, output)
req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
return
}
// TagResource API operation for AWS DataSync.
//
// Applies a key-value pair to an AWS resource.
//
// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
// with awserr.Error's Code and Message methods to get detailed information about
// the error.
//
// See the AWS API reference guide for AWS DataSync's
// API operation TagResource for usage and error information.
//
// Returned Error Codes:
// * ErrCodeInvalidRequestException "InvalidRequestException"
// This exception is thrown when the client submits a malformed request.
//
// * ErrCodeInternalException "InternalException"
// This exception is thrown when an error occurs in the AWS DataSync service.
//
// See also, https://docs.aws.amazon.com/goto/WebAPI/datasync-2018-11-09/TagResource
func (c *DataSync) TagResource(input *TagResourceInput) (*TagResourceOutput, error) {
req, out := c.TagResourceRequest(input)
return out, req.Send()
}
// TagResourceWithContext is the same as TagResource with the addition of
// the ability to pass a context and additional request options.
//
// See TagResource 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 *DataSync) TagResourceWithContext(ctx aws.Context, input *TagResourceInput, opts ...request.Option) (*TagResourceOutput, error) {
req, out := c.TagResourceRequest(input)
req.SetContext(ctx)
req.ApplyOptions(opts...)
return out, req.Send()
}
const opUntagResource = "UntagResource"
// UntagResourceRequest generates a "aws/request.Request" representing the
// client's request for the UntagResource operation. The "output" return
// value will be populated with the request's response once the request completes
// successfully.
//
// Use "Send" method on the returned Request to send the API call to the service.
// the "output" return value is not valid until after Send returns without error.
//
// See UntagResource for more information on using the UntagResource
// 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 UntagResourceRequest method.
// req, resp := client.UntagResourceRequest(params)
//
// err := req.Send()
// if err == nil { // resp is now filled
// fmt.Println(resp)
// }
//
// See also, https://docs.aws.amazon.com/goto/WebAPI/datasync-2018-11-09/UntagResource
func (c *DataSync) UntagResourceRequest(input *UntagResourceInput) (req *request.Request, output *UntagResourceOutput) {
op := &request.Operation{
Name: opUntagResource,
HTTPMethod: "POST",
HTTPPath: "/",
}
if input == nil {
input = &UntagResourceInput{}
}
output = &UntagResourceOutput{}
req = c.newRequest(op, input, output)
req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
return
}
// UntagResource API operation for AWS DataSync.
//
// Removes a tag from an AWS resource.
//
// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
// with awserr.Error's Code and Message methods to get detailed information about
// the error.
//
// See the AWS API reference guide for AWS DataSync's
// API operation UntagResource for usage and error information.
//
// Returned Error Codes:
// * ErrCodeInvalidRequestException "InvalidRequestException"
// This exception is thrown when the client submits a malformed request.
//
// * ErrCodeInternalException "InternalException"
// This exception is thrown when an error occurs in the AWS DataSync service.
//
// See also, https://docs.aws.amazon.com/goto/WebAPI/datasync-2018-11-09/UntagResource
func (c *DataSync) UntagResource(input *UntagResourceInput) (*UntagResourceOutput, error) {
req, out := c.UntagResourceRequest(input)
return out, req.Send()
}
// UntagResourceWithContext is the same as UntagResource with the addition of
// the ability to pass a context and additional request options.
//
// See UntagResource 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 *DataSync) UntagResourceWithContext(ctx aws.Context, input *UntagResourceInput, opts ...request.Option) (*UntagResourceOutput, error) {
req, out := c.UntagResourceRequest(input)
req.SetContext(ctx)
req.ApplyOptions(opts...)
return out, req.Send()
}
const opUpdateAgent = "UpdateAgent"
// UpdateAgentRequest generates a "aws/request.Request" representing the
// client's request for the UpdateAgent operation. The "output" return
// value will be populated with the request's response once the request completes
// successfully.
//
// Use "Send" method on the returned Request to send the API call to the service.
// the "output" return value is not valid until after Send returns without error.
//
// See UpdateAgent for more information on using the UpdateAgent
// 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 UpdateAgentRequest method.
// req, resp := client.UpdateAgentRequest(params)
//
// err := req.Send()
// if err == nil { // resp is now filled
// fmt.Println(resp)
// }
//
// See also, https://docs.aws.amazon.com/goto/WebAPI/datasync-2018-11-09/UpdateAgent
func (c *DataSync) UpdateAgentRequest(input *UpdateAgentInput) (req *request.Request, output *UpdateAgentOutput) {
op := &request.Operation{
Name: opUpdateAgent,
HTTPMethod: "POST",
HTTPPath: "/",
}
if input == nil {
input = &UpdateAgentInput{}
}
output = &UpdateAgentOutput{}
req = c.newRequest(op, input, output)
req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
return
}
// UpdateAgent API operation for AWS DataSync.
//
// Updates the name of an agent.
//
// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
// with awserr.Error's Code and Message methods to get detailed information about
// the error.
//
// See the AWS API reference guide for AWS DataSync's
// API operation UpdateAgent for usage and error information.
//
// Returned Error Codes:
// * ErrCodeInvalidRequestException "InvalidRequestException"
// This exception is thrown when the client submits a malformed request.
//
// * ErrCodeInternalException "InternalException"
// This exception is thrown when an error occurs in the AWS DataSync service.
//
// See also, https://docs.aws.amazon.com/goto/WebAPI/datasync-2018-11-09/UpdateAgent
func (c *DataSync) UpdateAgent(input *UpdateAgentInput) (*UpdateAgentOutput, error) {
req, out := c.UpdateAgentRequest(input)
return out, req.Send()
}
// UpdateAgentWithContext is the same as UpdateAgent with the addition of
// the ability to pass a context and additional request options.
//
// See UpdateAgent 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 *DataSync) UpdateAgentWithContext(ctx aws.Context, input *UpdateAgentInput, opts ...request.Option) (*UpdateAgentOutput, error) {
req, out := c.UpdateAgentRequest(input)
req.SetContext(ctx)
req.ApplyOptions(opts...)
return out, req.Send()
}
const opUpdateTask = "UpdateTask"
// UpdateTaskRequest generates a "aws/request.Request" representing the
// client's request for the UpdateTask operation. The "output" return
// value will be populated with the request's response once the request completes
// successfully.
//
// Use "Send" method on the returned Request to send the API call to the service.
// the "output" return value is not valid until after Send returns without error.
//
// See UpdateTask for more information on using the UpdateTask
// 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 UpdateTaskRequest method.
// req, resp := client.UpdateTaskRequest(params)
//
// err := req.Send()
// if err == nil { // resp is now filled
// fmt.Println(resp)
// }
//
// See also, https://docs.aws.amazon.com/goto/WebAPI/datasync-2018-11-09/UpdateTask
func (c *DataSync) UpdateTaskRequest(input *UpdateTaskInput) (req *request.Request, output *UpdateTaskOutput) {
op := &request.Operation{
Name: opUpdateTask,
HTTPMethod: "POST",
HTTPPath: "/",
}
if input == nil {
input = &UpdateTaskInput{}
}
output = &UpdateTaskOutput{}
req = c.newRequest(op, input, output)
req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
return
}
// UpdateTask API operation for AWS DataSync.
//
// Updates the metadata associated with a task.
//
// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
// with awserr.Error's Code and Message methods to get detailed information about
// the error.
//
// See the AWS API reference guide for AWS DataSync's
// API operation UpdateTask for usage and error information.
//
// Returned Error Codes:
// * ErrCodeInvalidRequestException "InvalidRequestException"
// This exception is thrown when the client submits a malformed request.
//
// * ErrCodeInternalException "InternalException"
// This exception is thrown when an error occurs in the AWS DataSync service.
//
// See also, https://docs.aws.amazon.com/goto/WebAPI/datasync-2018-11-09/UpdateTask
func (c *DataSync) UpdateTask(input *UpdateTaskInput) (*UpdateTaskOutput, error) {
req, out := c.UpdateTaskRequest(input)
return out, req.Send()
}
// UpdateTaskWithContext is the same as UpdateTask with the addition of
// the ability to pass a context and additional request options.
//
// See UpdateTask 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 *DataSync) UpdateTaskWithContext(ctx aws.Context, input *UpdateTaskInput, opts ...request.Option) (*UpdateTaskOutput, error) {
req, out := c.UpdateTaskRequest(input)
req.SetContext(ctx)
req.ApplyOptions(opts...)
return out, req.Send()
}
// Represents a single entry in a list of agents. AgentListEntry returns an
// array that contains a list of agents when the ListAgents operation is called.
type AgentListEntry struct {
_ struct{} `type:"structure"`
// The Amazon Resource Name (ARN) of the agent.
AgentArn *string `type:"string"`
// The name of the agent.
Name *string `min:"1" type:"string"`
// The status of the agent.
Status *string `type:"string" enum:"AgentStatus"`
}
// String returns the string representation
func (s AgentListEntry) String() string {
return awsutil.Prettify(s)
}
// GoString returns the string representation
func (s AgentListEntry) GoString() string {
return s.String()
}
// SetAgentArn sets the AgentArn field's value.
func (s *AgentListEntry) SetAgentArn(v string) *AgentListEntry {
s.AgentArn = &v
return s
}
// SetName sets the Name field's value.
func (s *AgentListEntry) SetName(v string) *AgentListEntry {
s.Name = &v
return s
}
// SetStatus sets the Status field's value.
func (s *AgentListEntry) SetStatus(v string) *AgentListEntry {
s.Status = &v
return s
}
// CancelTaskExecutionRequest
type CancelTaskExecutionInput struct {
_ struct{} `type:"structure"`
// The Amazon Resource Name (ARN) of the task execution to cancel.
//
// TaskExecutionArn is a required field
TaskExecutionArn *string `type:"string" required:"true"`
}
// String returns the string representation
func (s CancelTaskExecutionInput) String() string {
return awsutil.Prettify(s)
}
// GoString returns the string representation
func (s CancelTaskExecutionInput) GoString() string {
return s.String()
}
// Validate inspects the fields of the type to determine if they are valid.
func (s *CancelTaskExecutionInput) Validate() error {
invalidParams := request.ErrInvalidParams{Context: "CancelTaskExecutionInput"}
if s.TaskExecutionArn == nil {
invalidParams.Add(request.NewErrParamRequired("TaskExecutionArn"))
}
if invalidParams.Len() > 0 {
return invalidParams
}
return nil
}
// SetTaskExecutionArn sets the TaskExecutionArn field's value.
func (s *CancelTaskExecutionInput) SetTaskExecutionArn(v string) *CancelTaskExecutionInput {
s.TaskExecutionArn = &v
return s
}
type CancelTaskExecutionOutput struct {
_ struct{} `type:"structure"`
}
// String returns the string representation
func (s CancelTaskExecutionOutput) String() string {
return awsutil.Prettify(s)
}
// GoString returns the string representation
func (s CancelTaskExecutionOutput) GoString() string {
return s.String()
}
// CreateAgentRequest
type CreateAgentInput struct {
_ struct{} `type:"structure"`
// Your agent activation key. You can get the activation key either by sending
// an HTTP GET request with redirects that enable you to get the agent IP address
// (port 80). Alternatively, you can get it from the AWS DataSync console.
//
// The redirect URL returned in the response provides you the activation key
// for your agent in the query string parameter activationKey. It might also
// include other activation-related parameters; however, these are merely defaults.
// The arguments you pass to this API call determine the actual configuration
// of your agent.
//
// For more information, see "https://docs.aws.amazon.com/datasync/latest/userguide/working-with-agents.html#activating-agent"
// (Activating a Agent) in the AWS DataSync User Guide.
//
// ActivationKey is a required field
ActivationKey *string `type:"string" required:"true"`
// The name you configured for your agent. This value is a text reference that
// is used to identify the agent in the console.
AgentName *string `min:"1" type:"string"`
// The key-value pair that represents the tag that you want to associate with
// the agent. The value can be an empty string. This value helps you manage,
// filter, and search for your agents.
//
// Valid characters for key and value are letters, spaces, and numbers representable
// in UTF-8 format, and the following special characters: + - = . _ : / @.
Tags []*TagListEntry `type:"list"`
}
// String returns the string representation
func (s CreateAgentInput) String() string {
return awsutil.Prettify(s)
}
// GoString returns the string representation
func (s CreateAgentInput) GoString() string {
return s.String()
}
// Validate inspects the fields of the type to determine if they are valid.
func (s *CreateAgentInput) Validate() error {
invalidParams := request.ErrInvalidParams{Context: "CreateAgentInput"}
if s.ActivationKey == nil {
invalidParams.Add(request.NewErrParamRequired("ActivationKey"))
}
if s.AgentName != nil && len(*s.AgentName) < 1 {
invalidParams.Add(request.NewErrParamMinLen("AgentName", 1))
}
if s.Tags != nil {
for i, v := range s.Tags {
if v == nil {
continue
}
if err := v.Validate(); err != nil {
invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Tags", i), err.(request.ErrInvalidParams))
}
}
}
if invalidParams.Len() > 0 {
return invalidParams
}
return nil
}
// SetActivationKey sets the ActivationKey field's value.
func (s *CreateAgentInput) SetActivationKey(v string) *CreateAgentInput {
s.ActivationKey = &v
return s
}
// SetAgentName sets the AgentName field's value.
func (s *CreateAgentInput) SetAgentName(v string) *CreateAgentInput {
s.AgentName = &v
return s
}
// SetTags sets the Tags field's value.
func (s *CreateAgentInput) SetTags(v []*TagListEntry) *CreateAgentInput {
s.Tags = v
return s
}
// CreateAgentResponse
type CreateAgentOutput struct {
_ struct{} `type:"structure"`
// The Amazon Resource Name (ARN) of the agent. Use the ListAgents operation
// to return a list of agents for your account and AWS Region.
AgentArn *string `type:"string"`
}
// String returns the string representation
func (s CreateAgentOutput) String() string {
return awsutil.Prettify(s)
}
// GoString returns the string representation
func (s CreateAgentOutput) GoString() string {
return s.String()
}
// SetAgentArn sets the AgentArn field's value.
func (s *CreateAgentOutput) SetAgentArn(v string) *CreateAgentOutput {
s.AgentArn = &v
return s
}
// CreateLocationEfsRequest
type CreateLocationEfsInput struct {
_ struct{} `type:"structure"`
// The subnet and security group that the Amazon EFS file system uses. The security
// group that you provide needs to be able to communicate with the security
// group on the mount target in the subnet specified.
//
// The exact relationship between security group M (of the mount target) and
// security group S (which you provide for DataSync to use at this stage) is
// as follows:
//
// * Security group M (which you associate with the mount target) must allow
// inbound access for the Transmission Control Protocol (TCP) on the NFS
// port (2049) from security group S. You can enable inbound connections
// either by IP address (CIDR range) or security group.
//
// * Security group S (provided to DataSync to access EFS) should have a
// rule that enables outbound connections to the NFS port on one of the file
// system’s mount targets. You can enable outbound connections either by
// IP address (CIDR range) or security group. For information about security
// groups and mount targets, see "https://docs.aws.amazon.com/efs/latest/ug/security-considerations.html#network-access"
// (Security Groups for Amazon EC2 Instances and Mount Targets) in the Amazon
// EFS User Guide.
//
// Ec2Config is a required field
Ec2Config *Ec2Config `type:"structure" required:"true"`
// The Amazon Resource Name (ARN) for the Amazon EFS file system.
//
// EfsFilesystemArn is a required field
EfsFilesystemArn *string `type:"string" required:"true"`
// A subdirectory in the location’s path. This subdirectory in the EFS file
// system is used to read data from the EFS source location or write data to
// the EFS destination. By default, AWS DataSync uses the root directory.
Subdirectory *string `type:"string"`
// The key-value pair that represents a tag that you want to add to the resource.
// The value can be an empty string. This value helps you manage, filter, and
// search for your resources. We recommend that you create a name tag for your
// location.
Tags []*TagListEntry `type:"list"`
}
// String returns the string representation
func (s CreateLocationEfsInput) String() string {
return awsutil.Prettify(s)
}
// GoString returns the string representation
func (s CreateLocationEfsInput) GoString() string {
return s.String()
}
// Validate inspects the fields of the type to determine if they are valid.
func (s *CreateLocationEfsInput) Validate() error {
invalidParams := request.ErrInvalidParams{Context: "CreateLocationEfsInput"}
if s.Ec2Config == nil {
invalidParams.Add(request.NewErrParamRequired("Ec2Config"))
}
if s.EfsFilesystemArn == nil {
invalidParams.Add(request.NewErrParamRequired("EfsFilesystemArn"))
}
if s.Ec2Config != nil {
if err := s.Ec2Config.Validate(); err != nil {
invalidParams.AddNested("Ec2Config", err.(request.ErrInvalidParams))
}
}
if s.Tags != nil {
for i, v := range s.Tags {
if v == nil {
continue
}
if err := v.Validate(); err != nil {
invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Tags", i), err.(request.ErrInvalidParams))
}
}
}
if invalidParams.Len() > 0 {
return invalidParams
}
return nil
}
// SetEc2Config sets the Ec2Config field's value.
func (s *CreateLocationEfsInput) SetEc2Config(v *Ec2Config) *CreateLocationEfsInput {
s.Ec2Config = v
return s
}
// SetEfsFilesystemArn sets the EfsFilesystemArn field's value.
func (s *CreateLocationEfsInput) SetEfsFilesystemArn(v string) *CreateLocationEfsInput {
s.EfsFilesystemArn = &v
return s
}
// SetSubdirectory sets the Subdirectory field's value.
func (s *CreateLocationEfsInput) SetSubdirectory(v string) *CreateLocationEfsInput {
s.Subdirectory = &v
return s
}
// SetTags sets the Tags field's value.
func (s *CreateLocationEfsInput) SetTags(v []*TagListEntry) *CreateLocationEfsInput {
s.Tags = v
return s
}
// CreateLocationEfs
type CreateLocationEfsOutput struct {
_ struct{} `type:"structure"`
// The Amazon Resource Name (ARN) of the Amazon EFS file system location that
// is created.
LocationArn *string `type:"string"`
}
// String returns the string representation
func (s CreateLocationEfsOutput) String() string {
return awsutil.Prettify(s)
}
// GoString returns the string representation
func (s CreateLocationEfsOutput) GoString() string {
return s.String()
}
// SetLocationArn sets the LocationArn field's value.
func (s *CreateLocationEfsOutput) SetLocationArn(v string) *CreateLocationEfsOutput {
s.LocationArn = &v
return s
}
// CreateLocationNfsRequest
type CreateLocationNfsInput struct {
_ struct{} `type:"structure"`
// The NFS mount options that DataSync can use to mount your NFS share.
MountOptions *NfsMountOptions `type:"structure"`
// Contains a list of Amazon Resource Names (ARNs) of agents that are used to
// connect to an NFS server.
//
// OnPremConfig is a required field
OnPremConfig *OnPremConfig `type:"structure" required:"true"`
// The name of the NFS server. This value is the IP address or Domain Name Service
// (DNS) name of the NFS server. An agent that is installed on-premises uses
// this host name to mount the NFS server in a network.
//
// This name must either be DNS-compliant or must be an IP version 4 (IPv4)
// address.
//
// ServerHostname is a required field
ServerHostname *string `type:"string" required:"true"`
// The subdirectory in the NFS file system that is used to read data from the
// NFS source location or write data to the NFS destination. The NFS path should
// be a path that's exported by the NFS server, or a subdirectory of that path.
// The path should be such that it can be mounted by other NFS clients in your
// network.
//
// To see all the paths exported by your NFS server. run "showmount -e nfs-server-name"
// from an NFS client that has access to your server. You can specify any directory
// that appears in the results, and any subdirectory of that directory. Ensure
// that the NFS export is accessible without Kerberos authentication.
//
// To transfer all the data in the folder you specified, DataSync needs to have
// permissions to read all the data. To ensure this, either configure the NFS
// export with no_root_squash, or ensure that the permissions for all of the
// files that you want DataSync allow read access for all users. Doing either
// enables the agent to read the files. For the agent to access directories,
// you must additionally enable all execute access.
//
// For information about NFS export configuration, see "http://web.mit.edu/rhel-doc/5/RHEL-5-manual/Deployment_Guide-en-US/s1-nfs-server-config-exports.html"
// (18.7. The /etc/exports Configuration File).
//
// Subdirectory is a required field
Subdirectory *string `type:"string" required:"true"`
// The key-value pair that represents the tag that you want to add to the location.
// The value can be an empty string. We recommend using tags to name your resources.
Tags []*TagListEntry `type:"list"`
}
// String returns the string representation
func (s CreateLocationNfsInput) String() string {
return awsutil.Prettify(s)
}
// GoString returns the string representation
func (s CreateLocationNfsInput) GoString() string {
return s.String()
}
// Validate inspects the fields of the type to determine if they are valid.
func (s *CreateLocationNfsInput) Validate() error {
invalidParams := request.ErrInvalidParams{Context: "CreateLocationNfsInput"}
if s.OnPremConfig == nil {
invalidParams.Add(request.NewErrParamRequired("OnPremConfig"))
}
if s.ServerHostname == nil {
invalidParams.Add(request.NewErrParamRequired("ServerHostname"))
}
if s.Subdirectory == nil {
invalidParams.Add(request.NewErrParamRequired("Subdirectory"))
}
if s.OnPremConfig != nil {
if err := s.OnPremConfig.Validate(); err != nil {
invalidParams.AddNested("OnPremConfig", err.(request.ErrInvalidParams))
}
}
if s.Tags != nil {
for i, v := range s.Tags {
if v == nil {
continue
}
if err := v.Validate(); err != nil {
invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Tags", i), err.(request.ErrInvalidParams))
}
}
}
if invalidParams.Len() > 0 {
return invalidParams
}
return nil
}
// SetMountOptions sets the MountOptions field's value.
func (s *CreateLocationNfsInput) SetMountOptions(v *NfsMountOptions) *CreateLocationNfsInput {
s.MountOptions = v
return s
}
// SetOnPremConfig sets the OnPremConfig field's value.
func (s *CreateLocationNfsInput) SetOnPremConfig(v *OnPremConfig) *CreateLocationNfsInput {
s.OnPremConfig = v
return s
}
// SetServerHostname sets the ServerHostname field's value.
func (s *CreateLocationNfsInput) SetServerHostname(v string) *CreateLocationNfsInput {
s.ServerHostname = &v
return s
}
// SetSubdirectory sets the Subdirectory field's value.
func (s *CreateLocationNfsInput) SetSubdirectory(v string) *CreateLocationNfsInput {
s.Subdirectory = &v
return s
}
// SetTags sets the Tags field's value.
func (s *CreateLocationNfsInput) SetTags(v []*TagListEntry) *CreateLocationNfsInput {
s.Tags = v
return s
}
// CreateLocationNfsResponse
type CreateLocationNfsOutput struct {
_ struct{} `type:"structure"`
// The Amazon Resource Name (ARN) of the source NFS file system location that
// is created.
LocationArn *string `type:"string"`
}
// String returns the string representation
func (s CreateLocationNfsOutput) String() string {
return awsutil.Prettify(s)
}
// GoString returns the string representation
func (s CreateLocationNfsOutput) GoString() string {
return s.String()
}
// SetLocationArn sets the LocationArn field's value.
func (s *CreateLocationNfsOutput) SetLocationArn(v string) *CreateLocationNfsOutput {
s.LocationArn = &v
return s
}
// CreateLocationS3Request
type CreateLocationS3Input struct {
_ struct{} `type:"structure"`
// The Amazon Resource Name (ARN) of the Amazon S3 bucket.
//
// S3BucketArn is a required field
S3BucketArn *string `type:"string" required:"true"`
// The Amazon Resource Name (ARN) of the AWS Identity and Access Management
// (IAM) role that is used to access an Amazon S3 bucket.
//
// For detailed information about using such a role, see "https://docs.aws.amazon.com/datasync/latest/userguide/working-with-locations.html#create-s3-location"
// (Creating a Location for Amazon S3) in the AWS DataSync User Guide.
//
// S3Config is a required field
S3Config *S3Config `type:"structure" required:"true"`
// A subdirectory in the Amazon S3 bucket. This subdirectory in Amazon S3 is
// used to read data from the S3 source location or write data to the S3 destination.
Subdirectory *string `type:"string"`
// The key-value pair that represents the tag that you want to add to the location.
// The value can be an empty string. We recommend using tags to name your resources.
Tags []*TagListEntry `type:"list"`
}
// String returns the string representation
func (s CreateLocationS3Input) String() string {
return awsutil.Prettify(s)
}
// GoString returns the string representation
func (s CreateLocationS3Input) GoString() string {
return s.String()
}
// Validate inspects the fields of the type to determine if they are valid.
func (s *CreateLocationS3Input) Validate() error {
invalidParams := request.ErrInvalidParams{Context: "CreateLocationS3Input"}
if s.S3BucketArn == nil {
invalidParams.Add(request.NewErrParamRequired("S3BucketArn"))
}
if s.S3Config == nil {
invalidParams.Add(request.NewErrParamRequired("S3Config"))
}
if s.S3Config != nil {
if err := s.S3Config.Validate(); err != nil {
invalidParams.AddNested("S3Config", err.(request.ErrInvalidParams))
}
}
if s.Tags != nil {
for i, v := range s.Tags {
if v == nil {
continue
}
if err := v.Validate(); err != nil {
invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Tags", i), err.(request.ErrInvalidParams))
}
}
}
if invalidParams.Len() > 0 {
return invalidParams
}
return nil
}
// SetS3BucketArn sets the S3BucketArn field's value.
func (s *CreateLocationS3Input) SetS3BucketArn(v string) *CreateLocationS3Input {
s.S3BucketArn = &v
return s
}
// SetS3Config sets the S3Config field's value.
func (s *CreateLocationS3Input) SetS3Config(v *S3Config) *CreateLocationS3Input {
s.S3Config = v
return s
}
// SetSubdirectory sets the Subdirectory field's value.
func (s *CreateLocationS3Input) SetSubdirectory(v string) *CreateLocationS3Input {
s.Subdirectory = &v
return s
}
// SetTags sets the Tags field's value.
func (s *CreateLocationS3Input) SetTags(v []*TagListEntry) *CreateLocationS3Input {
s.Tags = v
return s
}
// CreateLocationS3Response
type CreateLocationS3Output struct {
_ struct{} `type:"structure"`
// The Amazon Resource Name (ARN) of the source Amazon S3 bucket location that
// is created.
LocationArn *string `type:"string"`
}
// String returns the string representation
func (s CreateLocationS3Output) String() string {
return awsutil.Prettify(s)
}
// GoString returns the string representation
func (s CreateLocationS3Output) GoString() string {
return s.String()
}
// SetLocationArn sets the LocationArn field's value.
func (s *CreateLocationS3Output) SetLocationArn(v string) *CreateLocationS3Output {
s.LocationArn = &v
return s
}
// CreateTaskRequest
type CreateTaskInput struct {
_ struct{} `type:"structure"`
// The Amazon Resource Name (ARN) of the Amazon CloudWatch log group that is
// used to monitor and log events in the task.
//
// For more information on these groups, see "https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/Working-with-log-groups-and-streams.html"
// (Working with Log Groups and Log Streams) in the Amazon CloudWatch User Guide.
//
// For more information about how to useCloudWatchLogs with DataSync, see "https://docs.aws.amazon.com/datasync/latest/userguide/monitor-datasync.html"
// (Monitoring Your Task)
CloudWatchLogGroupArn *string `type:"string"`
// The Amazon Resource Name (ARN) of an AWS storage resource's location.
//
// DestinationLocationArn is a required field
DestinationLocationArn *string `type:"string" required:"true"`
// A filter that determines which files to exclude from a task based on the
// specified pattern. Transfers all files in the task’s subdirectory, except
// files that match the filter that is set.
Excludes []*FilterRule `type:"list"`
// The name of a task. This value is a text reference that is used to identify
// the task in the console.
Name *string `min:"1" type:"string"`
// The set of configuration options that control the behavior of a single execution
// of the task that occurs when you call StartTaskExecution. You can configure
// these options to preserve metadata such as user ID (UID) and group ID (GID),
// file permissions, data integrity verification, and so on.
//
// For each individual task execution, you can override these options by specifying
// the OverrideOptions before starting a the task execution. For more information,
// see the operation.
Options *Options `type:"structure"`
// The Amazon Resource Name (ARN) of the source location for the task.
//
// SourceLocationArn is a required field
SourceLocationArn *string `type:"string" required:"true"`
// The key-value pair that represents the tag that you want to add to the resource.
// The value can be an empty string.
Tags []*TagListEntry `type:"list"`
}
// String returns the string representation
func (s CreateTaskInput) String() string {
return awsutil.Prettify(s)
}
// GoString returns the string representation
func (s CreateTaskInput) GoString() string {
return s.String()
}
// Validate inspects the fields of the type to determine if they are valid.
func (s *CreateTaskInput) Validate() error {
invalidParams := request.ErrInvalidParams{Context: "CreateTaskInput"}
if s.DestinationLocationArn == nil {
invalidParams.Add(request.NewErrParamRequired("DestinationLocationArn"))
}
if s.Name != nil && len(*s.Name) < 1 {
invalidParams.Add(request.NewErrParamMinLen("Name", 1))
}
if s.SourceLocationArn == nil {
invalidParams.Add(request.NewErrParamRequired("SourceLocationArn"))
}
if s.Options != nil {
if err := s.Options.Validate(); err != nil {
invalidParams.AddNested("Options", err.(request.ErrInvalidParams))
}
}
if s.Tags != nil {
for i, v := range s.Tags {
if v == nil {
continue
}
if err := v.Validate(); err != nil {
invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Tags", i), err.(request.ErrInvalidParams))
}
}
}
if invalidParams.Len() > 0 {
return invalidParams
}
return nil
}
// SetCloudWatchLogGroupArn sets the CloudWatchLogGroupArn field's value.
func (s *CreateTaskInput) SetCloudWatchLogGroupArn(v string) *CreateTaskInput {
s.CloudWatchLogGroupArn = &v
return s
}
// SetDestinationLocationArn sets the DestinationLocationArn field's value.
func (s *CreateTaskInput) SetDestinationLocationArn(v string) *CreateTaskInput {
s.DestinationLocationArn = &v
return s
}
// SetExcludes sets the Excludes field's value.
func (s *CreateTaskInput) SetExcludes(v []*FilterRule) *CreateTaskInput {
s.Excludes = v
return s
}
// SetName sets the Name field's value.
func (s *CreateTaskInput) SetName(v string) *CreateTaskInput {
s.Name = &v
return s
}
// SetOptions sets the Options field's value.
func (s *CreateTaskInput) SetOptions(v *Options) *CreateTaskInput {
s.Options = v
return s
}
// SetSourceLocationArn sets the SourceLocationArn field's value.
func (s *CreateTaskInput) SetSourceLocationArn(v string) *CreateTaskInput {
s.SourceLocationArn = &v
return s
}
// SetTags sets the Tags field's value.
func (s *CreateTaskInput) SetTags(v []*TagListEntry) *CreateTaskInput {
s.Tags = v
return s
}
// CreateTaskResponse
type CreateTaskOutput struct {
_ struct{} `type:"structure"`
// The Amazon Resource Name (ARN) of the task.
TaskArn *string `type:"string"`
}
// String returns the string representation
func (s CreateTaskOutput) String() string {
return awsutil.Prettify(s)
}
// GoString returns the string representation
func (s CreateTaskOutput) GoString() string {
return s.String()
}
// SetTaskArn sets the TaskArn field's value.
func (s *CreateTaskOutput) SetTaskArn(v string) *CreateTaskOutput {
s.TaskArn = &v
return s
}
// DeleteAgentRequest
type DeleteAgentInput struct {
_ struct{} `type:"structure"`
// The Amazon Resource Name (ARN) of the agent to delete. Use the ListAgents
// operation to return a list of agents for your account and AWS Region.
//
// AgentArn is a required field
AgentArn *string `type:"string" required:"true"`
}
// String returns the string representation
func (s DeleteAgentInput) String() string {
return awsutil.Prettify(s)
}
// GoString returns the string representation
func (s DeleteAgentInput) GoString() string {
return s.String()
}
// Validate inspects the fields of the type to determine if they are valid.
func (s *DeleteAgentInput) Validate() error {
invalidParams := request.ErrInvalidParams{Context: "DeleteAgentInput"}
if s.AgentArn == nil {
invalidParams.Add(request.NewErrParamRequired("AgentArn"))
}
if invalidParams.Len() > 0 {
return invalidParams
}
return nil
}
// SetAgentArn sets the AgentArn field's value.
func (s *DeleteAgentInput) SetAgentArn(v string) *DeleteAgentInput {
s.AgentArn = &v
return s
}
type DeleteAgentOutput struct {
_ struct{} `type:"structure"`
}
// String returns the string representation
func (s DeleteAgentOutput) String() string {
return awsutil.Prettify(s)
}
// GoString returns the string representation
func (s DeleteAgentOutput) GoString() string {
return s.String()
}
// DeleteLocation
type DeleteLocationInput struct {
_ struct{} `type:"structure"`
// The Amazon Resource Name (ARN) of the location to delete.
//
// LocationArn is a required field
LocationArn *string `type:"string" required:"true"`
}
// String returns the string representation
func (s DeleteLocationInput) String() string {
return awsutil.Prettify(s)
}
// GoString returns the string representation
func (s DeleteLocationInput) GoString() string {
return s.String()
}
// Validate inspects the fields of the type to determine if they are valid.
func (s *DeleteLocationInput) Validate() error {
invalidParams := request.ErrInvalidParams{Context: "DeleteLocationInput"}
if s.LocationArn == nil {
invalidParams.Add(request.NewErrParamRequired("LocationArn"))
}
if invalidParams.Len() > 0 {
return invalidParams
}
return nil
}
// SetLocationArn sets the LocationArn field's value.
func (s *DeleteLocationInput) SetLocationArn(v string) *DeleteLocationInput {
s.LocationArn = &v
return s
}
type DeleteLocationOutput struct {
_ struct{} `type:"structure"`
}
// String returns the string representation
func (s DeleteLocationOutput) String() string {
return awsutil.Prettify(s)
}
// GoString returns the string representation
func (s DeleteLocationOutput) GoString() string {
return s.String()
}
// DeleteTask
type DeleteTaskInput struct {
_ struct{} `type:"structure"`
// The Amazon Resource Name (ARN) of the task to delete.
//
// TaskArn is a required field
TaskArn *string `type:"string" required:"true"`
}
// String returns the string representation
func (s DeleteTaskInput) String() string {
return awsutil.Prettify(s)
}
// GoString returns the string representation
func (s DeleteTaskInput) GoString() string {
return s.String()
}
// Validate inspects the fields of the type to determine if they are valid.
func (s *DeleteTaskInput) Validate() error {
invalidParams := request.ErrInvalidParams{Context: "DeleteTaskInput"}
if s.TaskArn == nil {
invalidParams.Add(request.NewErrParamRequired("TaskArn"))
}
if invalidParams.Len() > 0 {
return invalidParams
}
return nil
}
// SetTaskArn sets the TaskArn field's value.
func (s *DeleteTaskInput) SetTaskArn(v string) *DeleteTaskInput {
s.TaskArn = &v
return s
}
type DeleteTaskOutput struct {
_ struct{} `type:"structure"`
}
// String returns the string representation
func (s DeleteTaskOutput) String() string {
return awsutil.Prettify(s)
}
// GoString returns the string representation
func (s DeleteTaskOutput) GoString() string {
return s.String()
}
// DescribeAgent
type DescribeAgentInput struct {
_ struct{} `type:"structure"`
// The Amazon Resource Name (ARN) of the agent to describe.
//
// AgentArn is a required field
AgentArn *string `type:"string" required:"true"`
}
// String returns the string representation
func (s DescribeAgentInput) String() string {
return awsutil.Prettify(s)
}
// GoString returns the string representation
func (s DescribeAgentInput) GoString() string {
return s.String()
}
// Validate inspects the fields of the type to determine if they are valid.
func (s *DescribeAgentInput) Validate() error {
invalidParams := request.ErrInvalidParams{Context: "DescribeAgentInput"}
if s.AgentArn == nil {
invalidParams.Add(request.NewErrParamRequired("AgentArn"))
}
if invalidParams.Len() > 0 {
return invalidParams
}
return nil
}
// SetAgentArn sets the AgentArn field's value.
func (s *DescribeAgentInput) SetAgentArn(v string) *DescribeAgentInput {
s.AgentArn = &v
return s
}
// DescribeAgentResponse
type DescribeAgentOutput struct {
_ struct{} `type:"structure"`
// The Amazon Resource Name (ARN) of the agent.
AgentArn *string `type:"string"`
// The time that the agent was activated (that is, created in your account).
CreationTime *time.Time `type:"timestamp"`
EndpointOptions *EndpointOptions `type:"structure"`
// The time that the agent last connected to DataSyc.
LastConnectionTime *time.Time `type:"timestamp"`
// The name of the agent.
Name *string `min:"1" type:"string"`
PrivateLinkConfig *PrivateLinkConfig `type:"structure"`
// The status of the agent. If the status is ONLINE, then the agent is configured
// properly and is available to use. The Running status is the normal running
// status for an agent. If the status is OFFLINE, the agent's VM is turned off
// or the agent is in an unhealthy state. When the issue that caused the unhealthy
// state is resolved, the agent returns to ONLINE status.
Status *string `type:"string" enum:"AgentStatus"`
}
// String returns the string representation
func (s DescribeAgentOutput) String() string {
return awsutil.Prettify(s)
}
// GoString returns the string representation
func (s DescribeAgentOutput) GoString() string {
return s.String()
}
// SetAgentArn sets the AgentArn field's value.
func (s *DescribeAgentOutput) SetAgentArn(v string) *DescribeAgentOutput {
s.AgentArn = &v
return s
}
// SetCreationTime sets the CreationTime field's value.
func (s *DescribeAgentOutput) SetCreationTime(v time.Time) *DescribeAgentOutput {
s.CreationTime = &v
return s
}
// SetEndpointOptions sets the EndpointOptions field's value.
func (s *DescribeAgentOutput) SetEndpointOptions(v *EndpointOptions) *DescribeAgentOutput {
s.EndpointOptions = v
return s
}
// SetLastConnectionTime sets the LastConnectionTime field's value.
func (s *DescribeAgentOutput) SetLastConnectionTime(v time.Time) *DescribeAgentOutput {
s.LastConnectionTime = &v
return s
}
// SetName sets the Name field's value.
func (s *DescribeAgentOutput) SetName(v string) *DescribeAgentOutput {
s.Name = &v
return s
}
// SetPrivateLinkConfig sets the PrivateLinkConfig field's value.
func (s *DescribeAgentOutput) SetPrivateLinkConfig(v *PrivateLinkConfig) *DescribeAgentOutput {
s.PrivateLinkConfig = v
return s
}
// SetStatus sets the Status field's value.
func (s *DescribeAgentOutput) SetStatus(v string) *DescribeAgentOutput {
s.Status = &v
return s
}
// DescribeLocationEfsRequest
type DescribeLocationEfsInput struct {
_ struct{} `type:"structure"`
// The Amazon Resource Name (ARN) of the EFS location to describe.
//
// LocationArn is a required field
LocationArn *string `type:"string" required:"true"`
}
// String returns the string representation
func (s DescribeLocationEfsInput) String() string {
return awsutil.Prettify(s)
}
// GoString returns the string representation
func (s DescribeLocationEfsInput) GoString() string {
return s.String()
}
// Validate inspects the fields of the type to determine if they are valid.
func (s *DescribeLocationEfsInput) Validate() error {
invalidParams := request.ErrInvalidParams{Context: "DescribeLocationEfsInput"}
if s.LocationArn == nil {
invalidParams.Add(request.NewErrParamRequired("LocationArn"))
}
if invalidParams.Len() > 0 {
return invalidParams
}
return nil
}
// SetLocationArn sets the LocationArn field's value.
func (s *DescribeLocationEfsInput) SetLocationArn(v string) *DescribeLocationEfsInput {
s.LocationArn = &v
return s
}
// DescribeLocationEfsResponse
type DescribeLocationEfsOutput struct {
_ struct{} `type:"structure"`
// The time that the EFS location was created.
CreationTime *time.Time `type:"timestamp"`
// The subnet and the security group that DataSync uses to access target EFS
// file system. The subnet must have at least one mount target for that file
// system. The security group that you provide needs to be able to communicate
// with the security group on the mount target in the subnet specified.
Ec2Config *Ec2Config `type:"structure"`
// The Amazon resource Name (ARN) of the EFS location that was described.
LocationArn *string `type:"string"`
// The URL of the EFS location that was described.
LocationUri *string `type:"string"`
}
// String returns the string representation
func (s DescribeLocationEfsOutput) String() string {
return awsutil.Prettify(s)
}
// GoString returns the string representation
func (s DescribeLocationEfsOutput) GoString() string {
return s.String()
}
// SetCreationTime sets the CreationTime field's value.
func (s *DescribeLocationEfsOutput) SetCreationTime(v time.Time) *DescribeLocationEfsOutput {
s.CreationTime = &v
return s
}
// SetEc2Config sets the Ec2Config field's value.
func (s *DescribeLocationEfsOutput) SetEc2Config(v *Ec2Config) *DescribeLocationEfsOutput {
s.Ec2Config = v
return s
}
// SetLocationArn sets the LocationArn field's value.
func (s *DescribeLocationEfsOutput) SetLocationArn(v string) *DescribeLocationEfsOutput {
s.LocationArn = &v
return s
}
// SetLocationUri sets the LocationUri field's value.
func (s *DescribeLocationEfsOutput) SetLocationUri(v string) *DescribeLocationEfsOutput {
s.LocationUri = &v
return s
}
// DescribeLocationNfsRequest
type DescribeLocationNfsInput struct {
_ struct{} `type:"structure"`
// The Amazon resource Name (ARN) of the NFS location to describe.
//
// LocationArn is a required field
LocationArn *string `type:"string" required:"true"`
}
// String returns the string representation
func (s DescribeLocationNfsInput) String() string {
return awsutil.Prettify(s)
}
// GoString returns the string representation
func (s DescribeLocationNfsInput) GoString() string {
return s.String()
}
// Validate inspects the fields of the type to determine if they are valid.
func (s *DescribeLocationNfsInput) Validate() error {
invalidParams := request.ErrInvalidParams{Context: "DescribeLocationNfsInput"}
if s.LocationArn == nil {
invalidParams.Add(request.NewErrParamRequired("LocationArn"))
}