// Code generated by private/model/cli/gen-api/main.go. DO NOT EDIT. package workspaces import ( "fmt" "time" "github.com/aws/aws-sdk-go/aws" "github.com/aws/aws-sdk-go/aws/awsutil" "github.com/aws/aws-sdk-go/aws/request" ) const opAssociateIpGroups = "AssociateIpGroups" // AssociateIpGroupsRequest generates a "aws/request.Request" representing the // client's request for the AssociateIpGroups operation. The "output" return // value will be populated with the request's response once the request completes // successfuly. // // Use "Send" method on the returned Request to send the API call to the service. // the "output" return value is not valid until after Send returns without error. // // See AssociateIpGroups for more information on using the AssociateIpGroups // 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 AssociateIpGroupsRequest method. // req, resp := client.AssociateIpGroupsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // // See also, https://docs.aws.amazon.com/goto/WebAPI/workspaces-2015-04-08/AssociateIpGroups func (c *WorkSpaces) AssociateIpGroupsRequest(input *AssociateIpGroupsInput) (req *request.Request, output *AssociateIpGroupsOutput) { op := &request.Operation{ Name: opAssociateIpGroups, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &AssociateIpGroupsInput{} } output = &AssociateIpGroupsOutput{} req = c.newRequest(op, input, output) return } // AssociateIpGroups API operation for Amazon WorkSpaces. // // Associates the specified IP access control group with the specified directory. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon WorkSpaces's // API operation AssociateIpGroups for usage and error information. // // Returned Error Codes: // * ErrCodeInvalidParameterValuesException "InvalidParameterValuesException" // One or more parameter values are not valid. // // * ErrCodeResourceNotFoundException "ResourceNotFoundException" // The resource could not be found. // // * ErrCodeResourceLimitExceededException "ResourceLimitExceededException" // Your resource limits have been exceeded. // // * ErrCodeInvalidResourceStateException "InvalidResourceStateException" // The state of the resource is not valid for this operation. // // * ErrCodeAccessDeniedException "AccessDeniedException" // The user is not authorized to access a resource. // // * ErrCodeOperationNotSupportedException "OperationNotSupportedException" // This operation is not supported. // // See also, https://docs.aws.amazon.com/goto/WebAPI/workspaces-2015-04-08/AssociateIpGroups func (c *WorkSpaces) AssociateIpGroups(input *AssociateIpGroupsInput) (*AssociateIpGroupsOutput, error) { req, out := c.AssociateIpGroupsRequest(input) return out, req.Send() } // AssociateIpGroupsWithContext is the same as AssociateIpGroups with the addition of // the ability to pass a context and additional request options. // // See AssociateIpGroups 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 *WorkSpaces) AssociateIpGroupsWithContext(ctx aws.Context, input *AssociateIpGroupsInput, opts ...request.Option) (*AssociateIpGroupsOutput, error) { req, out := c.AssociateIpGroupsRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } const opAuthorizeIpRules = "AuthorizeIpRules" // AuthorizeIpRulesRequest generates a "aws/request.Request" representing the // client's request for the AuthorizeIpRules operation. The "output" return // value will be populated with the request's response once the request completes // successfuly. // // Use "Send" method on the returned Request to send the API call to the service. // the "output" return value is not valid until after Send returns without error. // // See AuthorizeIpRules for more information on using the AuthorizeIpRules // 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 AuthorizeIpRulesRequest method. // req, resp := client.AuthorizeIpRulesRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // // See also, https://docs.aws.amazon.com/goto/WebAPI/workspaces-2015-04-08/AuthorizeIpRules func (c *WorkSpaces) AuthorizeIpRulesRequest(input *AuthorizeIpRulesInput) (req *request.Request, output *AuthorizeIpRulesOutput) { op := &request.Operation{ Name: opAuthorizeIpRules, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &AuthorizeIpRulesInput{} } output = &AuthorizeIpRulesOutput{} req = c.newRequest(op, input, output) return } // AuthorizeIpRules API operation for Amazon WorkSpaces. // // Adds one or more rules to the specified IP access control group. // // This action gives users permission to access their WorkSpaces from the CIDR // address ranges specified in the rules. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon WorkSpaces's // API operation AuthorizeIpRules for usage and error information. // // Returned Error Codes: // * ErrCodeInvalidParameterValuesException "InvalidParameterValuesException" // One or more parameter values are not valid. // // * ErrCodeResourceNotFoundException "ResourceNotFoundException" // The resource could not be found. // // * ErrCodeResourceLimitExceededException "ResourceLimitExceededException" // Your resource limits have been exceeded. // // * ErrCodeInvalidResourceStateException "InvalidResourceStateException" // The state of the resource is not valid for this operation. // // * ErrCodeAccessDeniedException "AccessDeniedException" // The user is not authorized to access a resource. // // See also, https://docs.aws.amazon.com/goto/WebAPI/workspaces-2015-04-08/AuthorizeIpRules func (c *WorkSpaces) AuthorizeIpRules(input *AuthorizeIpRulesInput) (*AuthorizeIpRulesOutput, error) { req, out := c.AuthorizeIpRulesRequest(input) return out, req.Send() } // AuthorizeIpRulesWithContext is the same as AuthorizeIpRules with the addition of // the ability to pass a context and additional request options. // // See AuthorizeIpRules 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 *WorkSpaces) AuthorizeIpRulesWithContext(ctx aws.Context, input *AuthorizeIpRulesInput, opts ...request.Option) (*AuthorizeIpRulesOutput, error) { req, out := c.AuthorizeIpRulesRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } const opCreateIpGroup = "CreateIpGroup" // CreateIpGroupRequest generates a "aws/request.Request" representing the // client's request for the CreateIpGroup operation. The "output" return // value will be populated with the request's response once the request completes // successfuly. // // Use "Send" method on the returned Request to send the API call to the service. // the "output" return value is not valid until after Send returns without error. // // See CreateIpGroup for more information on using the CreateIpGroup // 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 CreateIpGroupRequest method. // req, resp := client.CreateIpGroupRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // // See also, https://docs.aws.amazon.com/goto/WebAPI/workspaces-2015-04-08/CreateIpGroup func (c *WorkSpaces) CreateIpGroupRequest(input *CreateIpGroupInput) (req *request.Request, output *CreateIpGroupOutput) { op := &request.Operation{ Name: opCreateIpGroup, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &CreateIpGroupInput{} } output = &CreateIpGroupOutput{} req = c.newRequest(op, input, output) return } // CreateIpGroup API operation for Amazon WorkSpaces. // // Creates an IP access control group. // // An IP access control group provides you with the ability to control the IP // addresses from which users are allowed to access their WorkSpaces. To specify // the CIDR address ranges, add rules to your IP access control group and then // associate the group with your directory. You can add rules when you create // the group or at any time using AuthorizeIpRules. // // There is a default IP access control group associated with your directory. // If you don't associate an IP access control group with your directory, the // default group is used. The default group includes a default rule that allows // users to access their WorkSpaces from anywhere. You cannot modify the default // IP access control group for your directory. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon WorkSpaces's // API operation CreateIpGroup for usage and error information. // // Returned Error Codes: // * ErrCodeInvalidParameterValuesException "InvalidParameterValuesException" // One or more parameter values are not valid. // // * ErrCodeResourceLimitExceededException "ResourceLimitExceededException" // Your resource limits have been exceeded. // // * ErrCodeResourceAlreadyExistsException "ResourceAlreadyExistsException" // The specified resource already exists. // // * ErrCodeResourceCreationFailedException "ResourceCreationFailedException" // The resource could not be created. // // * ErrCodeAccessDeniedException "AccessDeniedException" // The user is not authorized to access a resource. // // See also, https://docs.aws.amazon.com/goto/WebAPI/workspaces-2015-04-08/CreateIpGroup func (c *WorkSpaces) CreateIpGroup(input *CreateIpGroupInput) (*CreateIpGroupOutput, error) { req, out := c.CreateIpGroupRequest(input) return out, req.Send() } // CreateIpGroupWithContext is the same as CreateIpGroup with the addition of // the ability to pass a context and additional request options. // // See CreateIpGroup 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 *WorkSpaces) CreateIpGroupWithContext(ctx aws.Context, input *CreateIpGroupInput, opts ...request.Option) (*CreateIpGroupOutput, error) { req, out := c.CreateIpGroupRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } const opCreateTags = "CreateTags" // CreateTagsRequest generates a "aws/request.Request" representing the // client's request for the CreateTags operation. The "output" return // value will be populated with the request's response once the request completes // successfuly. // // Use "Send" method on the returned Request to send the API call to the service. // the "output" return value is not valid until after Send returns without error. // // See CreateTags for more information on using the CreateTags // 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 CreateTagsRequest method. // req, resp := client.CreateTagsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // // See also, https://docs.aws.amazon.com/goto/WebAPI/workspaces-2015-04-08/CreateTags func (c *WorkSpaces) CreateTagsRequest(input *CreateTagsInput) (req *request.Request, output *CreateTagsOutput) { op := &request.Operation{ Name: opCreateTags, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &CreateTagsInput{} } output = &CreateTagsOutput{} req = c.newRequest(op, input, output) return } // CreateTags API operation for Amazon WorkSpaces. // // Creates the specified tags for the specified WorkSpace. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon WorkSpaces's // API operation CreateTags for usage and error information. // // Returned Error Codes: // * ErrCodeResourceNotFoundException "ResourceNotFoundException" // The resource could not be found. // // * ErrCodeInvalidParameterValuesException "InvalidParameterValuesException" // One or more parameter values are not valid. // // * ErrCodeResourceLimitExceededException "ResourceLimitExceededException" // Your resource limits have been exceeded. // // See also, https://docs.aws.amazon.com/goto/WebAPI/workspaces-2015-04-08/CreateTags func (c *WorkSpaces) CreateTags(input *CreateTagsInput) (*CreateTagsOutput, error) { req, out := c.CreateTagsRequest(input) return out, req.Send() } // CreateTagsWithContext is the same as CreateTags with the addition of // the ability to pass a context and additional request options. // // See CreateTags 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 *WorkSpaces) CreateTagsWithContext(ctx aws.Context, input *CreateTagsInput, opts ...request.Option) (*CreateTagsOutput, error) { req, out := c.CreateTagsRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } const opCreateWorkspaces = "CreateWorkspaces" // CreateWorkspacesRequest generates a "aws/request.Request" representing the // client's request for the CreateWorkspaces operation. The "output" return // value will be populated with the request's response once the request completes // successfuly. // // Use "Send" method on the returned Request to send the API call to the service. // the "output" return value is not valid until after Send returns without error. // // See CreateWorkspaces for more information on using the CreateWorkspaces // 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 CreateWorkspacesRequest method. // req, resp := client.CreateWorkspacesRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // // See also, https://docs.aws.amazon.com/goto/WebAPI/workspaces-2015-04-08/CreateWorkspaces func (c *WorkSpaces) CreateWorkspacesRequest(input *CreateWorkspacesInput) (req *request.Request, output *CreateWorkspacesOutput) { op := &request.Operation{ Name: opCreateWorkspaces, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &CreateWorkspacesInput{} } output = &CreateWorkspacesOutput{} req = c.newRequest(op, input, output) return } // CreateWorkspaces API operation for Amazon WorkSpaces. // // Creates one or more WorkSpaces. // // This operation is asynchronous and returns before the WorkSpaces are created. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon WorkSpaces's // API operation CreateWorkspaces for usage and error information. // // Returned Error Codes: // * ErrCodeResourceLimitExceededException "ResourceLimitExceededException" // Your resource limits have been exceeded. // // * ErrCodeInvalidParameterValuesException "InvalidParameterValuesException" // One or more parameter values are not valid. // // See also, https://docs.aws.amazon.com/goto/WebAPI/workspaces-2015-04-08/CreateWorkspaces func (c *WorkSpaces) CreateWorkspaces(input *CreateWorkspacesInput) (*CreateWorkspacesOutput, error) { req, out := c.CreateWorkspacesRequest(input) return out, req.Send() } // CreateWorkspacesWithContext is the same as CreateWorkspaces with the addition of // the ability to pass a context and additional request options. // // See CreateWorkspaces 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 *WorkSpaces) CreateWorkspacesWithContext(ctx aws.Context, input *CreateWorkspacesInput, opts ...request.Option) (*CreateWorkspacesOutput, error) { req, out := c.CreateWorkspacesRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } const opDeleteIpGroup = "DeleteIpGroup" // DeleteIpGroupRequest generates a "aws/request.Request" representing the // client's request for the DeleteIpGroup operation. The "output" return // value will be populated with the request's response once the request completes // successfuly. // // Use "Send" method on the returned Request to send the API call to the service. // the "output" return value is not valid until after Send returns without error. // // See DeleteIpGroup for more information on using the DeleteIpGroup // 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 DeleteIpGroupRequest method. // req, resp := client.DeleteIpGroupRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // // See also, https://docs.aws.amazon.com/goto/WebAPI/workspaces-2015-04-08/DeleteIpGroup func (c *WorkSpaces) DeleteIpGroupRequest(input *DeleteIpGroupInput) (req *request.Request, output *DeleteIpGroupOutput) { op := &request.Operation{ Name: opDeleteIpGroup, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DeleteIpGroupInput{} } output = &DeleteIpGroupOutput{} req = c.newRequest(op, input, output) return } // DeleteIpGroup API operation for Amazon WorkSpaces. // // Deletes the specified IP access control group. // // You cannot delete an IP access control group that is associated with a directory. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon WorkSpaces's // API operation DeleteIpGroup for usage and error information. // // Returned Error Codes: // * ErrCodeInvalidParameterValuesException "InvalidParameterValuesException" // One or more parameter values are not valid. // // * ErrCodeResourceNotFoundException "ResourceNotFoundException" // The resource could not be found. // // * ErrCodeResourceAssociatedException "ResourceAssociatedException" // The resource is associated with a directory. // // * ErrCodeAccessDeniedException "AccessDeniedException" // The user is not authorized to access a resource. // // See also, https://docs.aws.amazon.com/goto/WebAPI/workspaces-2015-04-08/DeleteIpGroup func (c *WorkSpaces) DeleteIpGroup(input *DeleteIpGroupInput) (*DeleteIpGroupOutput, error) { req, out := c.DeleteIpGroupRequest(input) return out, req.Send() } // DeleteIpGroupWithContext is the same as DeleteIpGroup with the addition of // the ability to pass a context and additional request options. // // See DeleteIpGroup 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 *WorkSpaces) DeleteIpGroupWithContext(ctx aws.Context, input *DeleteIpGroupInput, opts ...request.Option) (*DeleteIpGroupOutput, error) { req, out := c.DeleteIpGroupRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } const opDeleteTags = "DeleteTags" // DeleteTagsRequest generates a "aws/request.Request" representing the // client's request for the DeleteTags operation. The "output" return // value will be populated with the request's response once the request completes // successfuly. // // Use "Send" method on the returned Request to send the API call to the service. // the "output" return value is not valid until after Send returns without error. // // See DeleteTags for more information on using the DeleteTags // 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 DeleteTagsRequest method. // req, resp := client.DeleteTagsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // // See also, https://docs.aws.amazon.com/goto/WebAPI/workspaces-2015-04-08/DeleteTags func (c *WorkSpaces) DeleteTagsRequest(input *DeleteTagsInput) (req *request.Request, output *DeleteTagsOutput) { op := &request.Operation{ Name: opDeleteTags, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DeleteTagsInput{} } output = &DeleteTagsOutput{} req = c.newRequest(op, input, output) return } // DeleteTags API operation for Amazon WorkSpaces. // // Deletes the specified tags from the specified WorkSpace. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon WorkSpaces's // API operation DeleteTags for usage and error information. // // Returned Error Codes: // * ErrCodeResourceNotFoundException "ResourceNotFoundException" // The resource could not be found. // // * ErrCodeInvalidParameterValuesException "InvalidParameterValuesException" // One or more parameter values are not valid. // // See also, https://docs.aws.amazon.com/goto/WebAPI/workspaces-2015-04-08/DeleteTags func (c *WorkSpaces) DeleteTags(input *DeleteTagsInput) (*DeleteTagsOutput, error) { req, out := c.DeleteTagsRequest(input) return out, req.Send() } // DeleteTagsWithContext is the same as DeleteTags with the addition of // the ability to pass a context and additional request options. // // See DeleteTags 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 *WorkSpaces) DeleteTagsWithContext(ctx aws.Context, input *DeleteTagsInput, opts ...request.Option) (*DeleteTagsOutput, error) { req, out := c.DeleteTagsRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } const opDescribeIpGroups = "DescribeIpGroups" // DescribeIpGroupsRequest generates a "aws/request.Request" representing the // client's request for the DescribeIpGroups operation. The "output" return // value will be populated with the request's response once the request completes // successfuly. // // Use "Send" method on the returned Request to send the API call to the service. // the "output" return value is not valid until after Send returns without error. // // See DescribeIpGroups for more information on using the DescribeIpGroups // 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 DescribeIpGroupsRequest method. // req, resp := client.DescribeIpGroupsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // // See also, https://docs.aws.amazon.com/goto/WebAPI/workspaces-2015-04-08/DescribeIpGroups func (c *WorkSpaces) DescribeIpGroupsRequest(input *DescribeIpGroupsInput) (req *request.Request, output *DescribeIpGroupsOutput) { op := &request.Operation{ Name: opDescribeIpGroups, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DescribeIpGroupsInput{} } output = &DescribeIpGroupsOutput{} req = c.newRequest(op, input, output) return } // DescribeIpGroups API operation for Amazon WorkSpaces. // // Describes one or more of your IP access control groups. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon WorkSpaces's // API operation DescribeIpGroups for usage and error information. // // Returned Error Codes: // * ErrCodeInvalidParameterValuesException "InvalidParameterValuesException" // One or more parameter values are not valid. // // * ErrCodeAccessDeniedException "AccessDeniedException" // The user is not authorized to access a resource. // // See also, https://docs.aws.amazon.com/goto/WebAPI/workspaces-2015-04-08/DescribeIpGroups func (c *WorkSpaces) DescribeIpGroups(input *DescribeIpGroupsInput) (*DescribeIpGroupsOutput, error) { req, out := c.DescribeIpGroupsRequest(input) return out, req.Send() } // DescribeIpGroupsWithContext is the same as DescribeIpGroups with the addition of // the ability to pass a context and additional request options. // // See DescribeIpGroups 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 *WorkSpaces) DescribeIpGroupsWithContext(ctx aws.Context, input *DescribeIpGroupsInput, opts ...request.Option) (*DescribeIpGroupsOutput, error) { req, out := c.DescribeIpGroupsRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } const opDescribeTags = "DescribeTags" // DescribeTagsRequest generates a "aws/request.Request" representing the // client's request for the DescribeTags operation. The "output" return // value will be populated with the request's response once the request completes // successfuly. // // Use "Send" method on the returned Request to send the API call to the service. // the "output" return value is not valid until after Send returns without error. // // See DescribeTags for more information on using the DescribeTags // API call, and error handling. // // This method is useful when you want to inject custom logic or configuration // into the SDK's request lifecycle. Such as custom headers, or retry logic. // // // // Example sending a request using the DescribeTagsRequest method. // req, resp := client.DescribeTagsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // // See also, https://docs.aws.amazon.com/goto/WebAPI/workspaces-2015-04-08/DescribeTags func (c *WorkSpaces) DescribeTagsRequest(input *DescribeTagsInput) (req *request.Request, output *DescribeTagsOutput) { op := &request.Operation{ Name: opDescribeTags, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DescribeTagsInput{} } output = &DescribeTagsOutput{} req = c.newRequest(op, input, output) return } // DescribeTags API operation for Amazon WorkSpaces. // // Describes the specified tags for the specified WorkSpace. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon WorkSpaces's // API operation DescribeTags for usage and error information. // // Returned Error Codes: // * ErrCodeResourceNotFoundException "ResourceNotFoundException" // The resource could not be found. // // See also, https://docs.aws.amazon.com/goto/WebAPI/workspaces-2015-04-08/DescribeTags func (c *WorkSpaces) DescribeTags(input *DescribeTagsInput) (*DescribeTagsOutput, error) { req, out := c.DescribeTagsRequest(input) return out, req.Send() } // DescribeTagsWithContext is the same as DescribeTags with the addition of // the ability to pass a context and additional request options. // // See DescribeTags for details on how to use this API operation. // // The context must be non-nil and will be used for request cancellation. If // the context is nil a panic will occur. In the future the SDK may create // sub-contexts for http.Requests. See https://golang.org/pkg/context/ // for more information on using Contexts. func (c *WorkSpaces) DescribeTagsWithContext(ctx aws.Context, input *DescribeTagsInput, opts ...request.Option) (*DescribeTagsOutput, error) { req, out := c.DescribeTagsRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } const opDescribeWorkspaceBundles = "DescribeWorkspaceBundles" // DescribeWorkspaceBundlesRequest generates a "aws/request.Request" representing the // client's request for the DescribeWorkspaceBundles operation. The "output" return // value will be populated with the request's response once the request completes // successfuly. // // Use "Send" method on the returned Request to send the API call to the service. // the "output" return value is not valid until after Send returns without error. // // See DescribeWorkspaceBundles for more information on using the DescribeWorkspaceBundles // 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 DescribeWorkspaceBundlesRequest method. // req, resp := client.DescribeWorkspaceBundlesRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // // See also, https://docs.aws.amazon.com/goto/WebAPI/workspaces-2015-04-08/DescribeWorkspaceBundles func (c *WorkSpaces) DescribeWorkspaceBundlesRequest(input *DescribeWorkspaceBundlesInput) (req *request.Request, output *DescribeWorkspaceBundlesOutput) { op := &request.Operation{ Name: opDescribeWorkspaceBundles, HTTPMethod: "POST", HTTPPath: "/", Paginator: &request.Paginator{ InputTokens: []string{"NextToken"}, OutputTokens: []string{"NextToken"}, LimitToken: "", TruncationToken: "", }, } if input == nil { input = &DescribeWorkspaceBundlesInput{} } output = &DescribeWorkspaceBundlesOutput{} req = c.newRequest(op, input, output) return } // DescribeWorkspaceBundles API operation for Amazon WorkSpaces. // // Describes the available WorkSpace bundles. // // You can filter the results using either bundle ID or owner, but not both. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon WorkSpaces's // API operation DescribeWorkspaceBundles for usage and error information. // // Returned Error Codes: // * ErrCodeInvalidParameterValuesException "InvalidParameterValuesException" // One or more parameter values are not valid. // // See also, https://docs.aws.amazon.com/goto/WebAPI/workspaces-2015-04-08/DescribeWorkspaceBundles func (c *WorkSpaces) DescribeWorkspaceBundles(input *DescribeWorkspaceBundlesInput) (*DescribeWorkspaceBundlesOutput, error) { req, out := c.DescribeWorkspaceBundlesRequest(input) return out, req.Send() } // DescribeWorkspaceBundlesWithContext is the same as DescribeWorkspaceBundles with the addition of // the ability to pass a context and additional request options. // // See DescribeWorkspaceBundles 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 *WorkSpaces) DescribeWorkspaceBundlesWithContext(ctx aws.Context, input *DescribeWorkspaceBundlesInput, opts ...request.Option) (*DescribeWorkspaceBundlesOutput, error) { req, out := c.DescribeWorkspaceBundlesRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } // DescribeWorkspaceBundlesPages iterates over the pages of a DescribeWorkspaceBundles operation, // calling the "fn" function with the response data for each page. To stop // iterating, return false from the fn function. // // See DescribeWorkspaceBundles 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 DescribeWorkspaceBundles operation. // pageNum := 0 // err := client.DescribeWorkspaceBundlesPages(params, // func(page *DescribeWorkspaceBundlesOutput, lastPage bool) bool { // pageNum++ // fmt.Println(page) // return pageNum <= 3 // }) // func (c *WorkSpaces) DescribeWorkspaceBundlesPages(input *DescribeWorkspaceBundlesInput, fn func(*DescribeWorkspaceBundlesOutput, bool) bool) error { return c.DescribeWorkspaceBundlesPagesWithContext(aws.BackgroundContext(), input, fn) } // DescribeWorkspaceBundlesPagesWithContext same as DescribeWorkspaceBundlesPages 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 *WorkSpaces) DescribeWorkspaceBundlesPagesWithContext(ctx aws.Context, input *DescribeWorkspaceBundlesInput, fn func(*DescribeWorkspaceBundlesOutput, bool) bool, opts ...request.Option) error { p := request.Pagination{ NewRequest: func() (*request.Request, error) { var inCpy *DescribeWorkspaceBundlesInput if input != nil { tmp := *input inCpy = &tmp } req, _ := c.DescribeWorkspaceBundlesRequest(inCpy) req.SetContext(ctx) req.ApplyOptions(opts...) return req, nil }, } cont := true for p.Next() && cont { cont = fn(p.Page().(*DescribeWorkspaceBundlesOutput), !p.HasNextPage()) } return p.Err() } const opDescribeWorkspaceDirectories = "DescribeWorkspaceDirectories" // DescribeWorkspaceDirectoriesRequest generates a "aws/request.Request" representing the // client's request for the DescribeWorkspaceDirectories operation. The "output" return // value will be populated with the request's response once the request completes // successfuly. // // Use "Send" method on the returned Request to send the API call to the service. // the "output" return value is not valid until after Send returns without error. // // See DescribeWorkspaceDirectories for more information on using the DescribeWorkspaceDirectories // 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 DescribeWorkspaceDirectoriesRequest method. // req, resp := client.DescribeWorkspaceDirectoriesRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // // See also, https://docs.aws.amazon.com/goto/WebAPI/workspaces-2015-04-08/DescribeWorkspaceDirectories func (c *WorkSpaces) DescribeWorkspaceDirectoriesRequest(input *DescribeWorkspaceDirectoriesInput) (req *request.Request, output *DescribeWorkspaceDirectoriesOutput) { op := &request.Operation{ Name: opDescribeWorkspaceDirectories, HTTPMethod: "POST", HTTPPath: "/", Paginator: &request.Paginator{ InputTokens: []string{"NextToken"}, OutputTokens: []string{"NextToken"}, LimitToken: "", TruncationToken: "", }, } if input == nil { input = &DescribeWorkspaceDirectoriesInput{} } output = &DescribeWorkspaceDirectoriesOutput{} req = c.newRequest(op, input, output) return } // DescribeWorkspaceDirectories API operation for Amazon WorkSpaces. // // Describes the available AWS Directory Service directories that are registered // with Amazon WorkSpaces. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon WorkSpaces's // API operation DescribeWorkspaceDirectories for usage and error information. // // Returned Error Codes: // * ErrCodeInvalidParameterValuesException "InvalidParameterValuesException" // One or more parameter values are not valid. // // See also, https://docs.aws.amazon.com/goto/WebAPI/workspaces-2015-04-08/DescribeWorkspaceDirectories func (c *WorkSpaces) DescribeWorkspaceDirectories(input *DescribeWorkspaceDirectoriesInput) (*DescribeWorkspaceDirectoriesOutput, error) { req, out := c.DescribeWorkspaceDirectoriesRequest(input) return out, req.Send() } // DescribeWorkspaceDirectoriesWithContext is the same as DescribeWorkspaceDirectories with the addition of // the ability to pass a context and additional request options. // // See DescribeWorkspaceDirectories 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 *WorkSpaces) DescribeWorkspaceDirectoriesWithContext(ctx aws.Context, input *DescribeWorkspaceDirectoriesInput, opts ...request.Option) (*DescribeWorkspaceDirectoriesOutput, error) { req, out := c.DescribeWorkspaceDirectoriesRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } // DescribeWorkspaceDirectoriesPages iterates over the pages of a DescribeWorkspaceDirectories operation, // calling the "fn" function with the response data for each page. To stop // iterating, return false from the fn function. // // See DescribeWorkspaceDirectories 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 DescribeWorkspaceDirectories operation. // pageNum := 0 // err := client.DescribeWorkspaceDirectoriesPages(params, // func(page *DescribeWorkspaceDirectoriesOutput, lastPage bool) bool { // pageNum++ // fmt.Println(page) // return pageNum <= 3 // }) // func (c *WorkSpaces) DescribeWorkspaceDirectoriesPages(input *DescribeWorkspaceDirectoriesInput, fn func(*DescribeWorkspaceDirectoriesOutput, bool) bool) error { return c.DescribeWorkspaceDirectoriesPagesWithContext(aws.BackgroundContext(), input, fn) } // DescribeWorkspaceDirectoriesPagesWithContext same as DescribeWorkspaceDirectoriesPages 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 *WorkSpaces) DescribeWorkspaceDirectoriesPagesWithContext(ctx aws.Context, input *DescribeWorkspaceDirectoriesInput, fn func(*DescribeWorkspaceDirectoriesOutput, bool) bool, opts ...request.Option) error { p := request.Pagination{ NewRequest: func() (*request.Request, error) { var inCpy *DescribeWorkspaceDirectoriesInput if input != nil { tmp := *input inCpy = &tmp } req, _ := c.DescribeWorkspaceDirectoriesRequest(inCpy) req.SetContext(ctx) req.ApplyOptions(opts...) return req, nil }, } cont := true for p.Next() && cont { cont = fn(p.Page().(*DescribeWorkspaceDirectoriesOutput), !p.HasNextPage()) } return p.Err() } const opDescribeWorkspaces = "DescribeWorkspaces" // DescribeWorkspacesRequest generates a "aws/request.Request" representing the // client's request for the DescribeWorkspaces operation. The "output" return // value will be populated with the request's response once the request completes // successfuly. // // Use "Send" method on the returned Request to send the API call to the service. // the "output" return value is not valid until after Send returns without error. // // See DescribeWorkspaces for more information on using the DescribeWorkspaces // 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 DescribeWorkspacesRequest method. // req, resp := client.DescribeWorkspacesRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // // See also, https://docs.aws.amazon.com/goto/WebAPI/workspaces-2015-04-08/DescribeWorkspaces func (c *WorkSpaces) DescribeWorkspacesRequest(input *DescribeWorkspacesInput) (req *request.Request, output *DescribeWorkspacesOutput) { op := &request.Operation{ Name: opDescribeWorkspaces, HTTPMethod: "POST", HTTPPath: "/", Paginator: &request.Paginator{ InputTokens: []string{"NextToken"}, OutputTokens: []string{"NextToken"}, LimitToken: "Limit", TruncationToken: "", }, } if input == nil { input = &DescribeWorkspacesInput{} } output = &DescribeWorkspacesOutput{} req = c.newRequest(op, input, output) return } // DescribeWorkspaces API operation for Amazon WorkSpaces. // // Describes the specified WorkSpaces. // // You can filter the results using bundle ID, directory ID, or owner, but you // can specify only one filter at a time. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon WorkSpaces's // API operation DescribeWorkspaces for usage and error information. // // Returned Error Codes: // * ErrCodeInvalidParameterValuesException "InvalidParameterValuesException" // One or more parameter values are not valid. // // * ErrCodeResourceUnavailableException "ResourceUnavailableException" // The specified resource is not available. // // See also, https://docs.aws.amazon.com/goto/WebAPI/workspaces-2015-04-08/DescribeWorkspaces func (c *WorkSpaces) DescribeWorkspaces(input *DescribeWorkspacesInput) (*DescribeWorkspacesOutput, error) { req, out := c.DescribeWorkspacesRequest(input) return out, req.Send() } // DescribeWorkspacesWithContext is the same as DescribeWorkspaces with the addition of // the ability to pass a context and additional request options. // // See DescribeWorkspaces 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 *WorkSpaces) DescribeWorkspacesWithContext(ctx aws.Context, input *DescribeWorkspacesInput, opts ...request.Option) (*DescribeWorkspacesOutput, error) { req, out := c.DescribeWorkspacesRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } // DescribeWorkspacesPages iterates over the pages of a DescribeWorkspaces operation, // calling the "fn" function with the response data for each page. To stop // iterating, return false from the fn function. // // See DescribeWorkspaces 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 DescribeWorkspaces operation. // pageNum := 0 // err := client.DescribeWorkspacesPages(params, // func(page *DescribeWorkspacesOutput, lastPage bool) bool { // pageNum++ // fmt.Println(page) // return pageNum <= 3 // }) // func (c *WorkSpaces) DescribeWorkspacesPages(input *DescribeWorkspacesInput, fn func(*DescribeWorkspacesOutput, bool) bool) error { return c.DescribeWorkspacesPagesWithContext(aws.BackgroundContext(), input, fn) } // DescribeWorkspacesPagesWithContext same as DescribeWorkspacesPages 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 *WorkSpaces) DescribeWorkspacesPagesWithContext(ctx aws.Context, input *DescribeWorkspacesInput, fn func(*DescribeWorkspacesOutput, bool) bool, opts ...request.Option) error { p := request.Pagination{ NewRequest: func() (*request.Request, error) { var inCpy *DescribeWorkspacesInput if input != nil { tmp := *input inCpy = &tmp } req, _ := c.DescribeWorkspacesRequest(inCpy) req.SetContext(ctx) req.ApplyOptions(opts...) return req, nil }, } cont := true for p.Next() && cont { cont = fn(p.Page().(*DescribeWorkspacesOutput), !p.HasNextPage()) } return p.Err() } const opDescribeWorkspacesConnectionStatus = "DescribeWorkspacesConnectionStatus" // DescribeWorkspacesConnectionStatusRequest generates a "aws/request.Request" representing the // client's request for the DescribeWorkspacesConnectionStatus operation. The "output" return // value will be populated with the request's response once the request completes // successfuly. // // Use "Send" method on the returned Request to send the API call to the service. // the "output" return value is not valid until after Send returns without error. // // See DescribeWorkspacesConnectionStatus for more information on using the DescribeWorkspacesConnectionStatus // 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 DescribeWorkspacesConnectionStatusRequest method. // req, resp := client.DescribeWorkspacesConnectionStatusRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // // See also, https://docs.aws.amazon.com/goto/WebAPI/workspaces-2015-04-08/DescribeWorkspacesConnectionStatus func (c *WorkSpaces) DescribeWorkspacesConnectionStatusRequest(input *DescribeWorkspacesConnectionStatusInput) (req *request.Request, output *DescribeWorkspacesConnectionStatusOutput) { op := &request.Operation{ Name: opDescribeWorkspacesConnectionStatus, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DescribeWorkspacesConnectionStatusInput{} } output = &DescribeWorkspacesConnectionStatusOutput{} req = c.newRequest(op, input, output) return } // DescribeWorkspacesConnectionStatus API operation for Amazon WorkSpaces. // // Describes the connection status of the specified WorkSpaces. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon WorkSpaces's // API operation DescribeWorkspacesConnectionStatus for usage and error information. // // Returned Error Codes: // * ErrCodeInvalidParameterValuesException "InvalidParameterValuesException" // One or more parameter values are not valid. // // See also, https://docs.aws.amazon.com/goto/WebAPI/workspaces-2015-04-08/DescribeWorkspacesConnectionStatus func (c *WorkSpaces) DescribeWorkspacesConnectionStatus(input *DescribeWorkspacesConnectionStatusInput) (*DescribeWorkspacesConnectionStatusOutput, error) { req, out := c.DescribeWorkspacesConnectionStatusRequest(input) return out, req.Send() } // DescribeWorkspacesConnectionStatusWithContext is the same as DescribeWorkspacesConnectionStatus with the addition of // the ability to pass a context and additional request options. // // See DescribeWorkspacesConnectionStatus 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 *WorkSpaces) DescribeWorkspacesConnectionStatusWithContext(ctx aws.Context, input *DescribeWorkspacesConnectionStatusInput, opts ...request.Option) (*DescribeWorkspacesConnectionStatusOutput, error) { req, out := c.DescribeWorkspacesConnectionStatusRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } const opDisassociateIpGroups = "DisassociateIpGroups" // DisassociateIpGroupsRequest generates a "aws/request.Request" representing the // client's request for the DisassociateIpGroups operation. The "output" return // value will be populated with the request's response once the request completes // successfuly. // // Use "Send" method on the returned Request to send the API call to the service. // the "output" return value is not valid until after Send returns without error. // // See DisassociateIpGroups for more information on using the DisassociateIpGroups // 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 DisassociateIpGroupsRequest method. // req, resp := client.DisassociateIpGroupsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // // See also, https://docs.aws.amazon.com/goto/WebAPI/workspaces-2015-04-08/DisassociateIpGroups func (c *WorkSpaces) DisassociateIpGroupsRequest(input *DisassociateIpGroupsInput) (req *request.Request, output *DisassociateIpGroupsOutput) { op := &request.Operation{ Name: opDisassociateIpGroups, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &DisassociateIpGroupsInput{} } output = &DisassociateIpGroupsOutput{} req = c.newRequest(op, input, output) return } // DisassociateIpGroups API operation for Amazon WorkSpaces. // // Disassociates the specified IP access control group from the specified directory. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon WorkSpaces's // API operation DisassociateIpGroups for usage and error information. // // Returned Error Codes: // * ErrCodeInvalidParameterValuesException "InvalidParameterValuesException" // One or more parameter values are not valid. // // * ErrCodeResourceNotFoundException "ResourceNotFoundException" // The resource could not be found. // // * ErrCodeInvalidResourceStateException "InvalidResourceStateException" // The state of the resource is not valid for this operation. // // * ErrCodeAccessDeniedException "AccessDeniedException" // The user is not authorized to access a resource. // // See also, https://docs.aws.amazon.com/goto/WebAPI/workspaces-2015-04-08/DisassociateIpGroups func (c *WorkSpaces) DisassociateIpGroups(input *DisassociateIpGroupsInput) (*DisassociateIpGroupsOutput, error) { req, out := c.DisassociateIpGroupsRequest(input) return out, req.Send() } // DisassociateIpGroupsWithContext is the same as DisassociateIpGroups with the addition of // the ability to pass a context and additional request options. // // See DisassociateIpGroups 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 *WorkSpaces) DisassociateIpGroupsWithContext(ctx aws.Context, input *DisassociateIpGroupsInput, opts ...request.Option) (*DisassociateIpGroupsOutput, error) { req, out := c.DisassociateIpGroupsRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } const opModifyWorkspaceProperties = "ModifyWorkspaceProperties" // ModifyWorkspacePropertiesRequest generates a "aws/request.Request" representing the // client's request for the ModifyWorkspaceProperties operation. The "output" return // value will be populated with the request's response once the request completes // successfuly. // // Use "Send" method on the returned Request to send the API call to the service. // the "output" return value is not valid until after Send returns without error. // // See ModifyWorkspaceProperties for more information on using the ModifyWorkspaceProperties // 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 ModifyWorkspacePropertiesRequest method. // req, resp := client.ModifyWorkspacePropertiesRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // // See also, https://docs.aws.amazon.com/goto/WebAPI/workspaces-2015-04-08/ModifyWorkspaceProperties func (c *WorkSpaces) ModifyWorkspacePropertiesRequest(input *ModifyWorkspacePropertiesInput) (req *request.Request, output *ModifyWorkspacePropertiesOutput) { op := &request.Operation{ Name: opModifyWorkspaceProperties, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &ModifyWorkspacePropertiesInput{} } output = &ModifyWorkspacePropertiesOutput{} req = c.newRequest(op, input, output) return } // ModifyWorkspaceProperties API operation for Amazon WorkSpaces. // // Modifies the specified WorkSpace properties. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon WorkSpaces's // API operation ModifyWorkspaceProperties for usage and error information. // // Returned Error Codes: // * ErrCodeInvalidParameterValuesException "InvalidParameterValuesException" // One or more parameter values are not valid. // // * ErrCodeInvalidResourceStateException "InvalidResourceStateException" // The state of the resource is not valid for this operation. // // * ErrCodeOperationInProgressException "OperationInProgressException" // The properties of this WorkSpace are currently being modified. Try again // in a moment. // // * ErrCodeUnsupportedWorkspaceConfigurationException "UnsupportedWorkspaceConfigurationException" // The configuration of this WorkSpace is not supported for this operation. // For more information, see the Amazon WorkSpaces Administration Guide (http://docs.aws.amazon.com/workspaces/latest/adminguide/). // // * ErrCodeResourceNotFoundException "ResourceNotFoundException" // The resource could not be found. // // * ErrCodeAccessDeniedException "AccessDeniedException" // The user is not authorized to access a resource. // // * ErrCodeResourceUnavailableException "ResourceUnavailableException" // The specified resource is not available. // // See also, https://docs.aws.amazon.com/goto/WebAPI/workspaces-2015-04-08/ModifyWorkspaceProperties func (c *WorkSpaces) ModifyWorkspaceProperties(input *ModifyWorkspacePropertiesInput) (*ModifyWorkspacePropertiesOutput, error) { req, out := c.ModifyWorkspacePropertiesRequest(input) return out, req.Send() } // ModifyWorkspacePropertiesWithContext is the same as ModifyWorkspaceProperties with the addition of // the ability to pass a context and additional request options. // // See ModifyWorkspaceProperties 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 *WorkSpaces) ModifyWorkspacePropertiesWithContext(ctx aws.Context, input *ModifyWorkspacePropertiesInput, opts ...request.Option) (*ModifyWorkspacePropertiesOutput, error) { req, out := c.ModifyWorkspacePropertiesRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } const opModifyWorkspaceState = "ModifyWorkspaceState" // ModifyWorkspaceStateRequest generates a "aws/request.Request" representing the // client's request for the ModifyWorkspaceState operation. The "output" return // value will be populated with the request's response once the request completes // successfuly. // // Use "Send" method on the returned Request to send the API call to the service. // the "output" return value is not valid until after Send returns without error. // // See ModifyWorkspaceState for more information on using the ModifyWorkspaceState // 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 ModifyWorkspaceStateRequest method. // req, resp := client.ModifyWorkspaceStateRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // // See also, https://docs.aws.amazon.com/goto/WebAPI/workspaces-2015-04-08/ModifyWorkspaceState func (c *WorkSpaces) ModifyWorkspaceStateRequest(input *ModifyWorkspaceStateInput) (req *request.Request, output *ModifyWorkspaceStateOutput) { op := &request.Operation{ Name: opModifyWorkspaceState, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &ModifyWorkspaceStateInput{} } output = &ModifyWorkspaceStateOutput{} req = c.newRequest(op, input, output) return } // ModifyWorkspaceState API operation for Amazon WorkSpaces. // // Sets the state of the specified WorkSpace. // // To maintain a WorkSpace without being interrupted, set the WorkSpace state // to ADMIN_MAINTENANCE. WorkSpaces in this state do not respond to requests // to reboot, stop, start, or rebuild. An AutoStop WorkSpace in this state is // not stopped. Users can log into a WorkSpace in the ADMIN_MAINTENANCE state. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon WorkSpaces's // API operation ModifyWorkspaceState for usage and error information. // // Returned Error Codes: // * ErrCodeInvalidParameterValuesException "InvalidParameterValuesException" // One or more parameter values are not valid. // // * ErrCodeInvalidResourceStateException "InvalidResourceStateException" // The state of the resource is not valid for this operation. // // * ErrCodeResourceNotFoundException "ResourceNotFoundException" // The resource could not be found. // // See also, https://docs.aws.amazon.com/goto/WebAPI/workspaces-2015-04-08/ModifyWorkspaceState func (c *WorkSpaces) ModifyWorkspaceState(input *ModifyWorkspaceStateInput) (*ModifyWorkspaceStateOutput, error) { req, out := c.ModifyWorkspaceStateRequest(input) return out, req.Send() } // ModifyWorkspaceStateWithContext is the same as ModifyWorkspaceState with the addition of // the ability to pass a context and additional request options. // // See ModifyWorkspaceState 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 *WorkSpaces) ModifyWorkspaceStateWithContext(ctx aws.Context, input *ModifyWorkspaceStateInput, opts ...request.Option) (*ModifyWorkspaceStateOutput, error) { req, out := c.ModifyWorkspaceStateRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } const opRebootWorkspaces = "RebootWorkspaces" // RebootWorkspacesRequest generates a "aws/request.Request" representing the // client's request for the RebootWorkspaces operation. The "output" return // value will be populated with the request's response once the request completes // successfuly. // // Use "Send" method on the returned Request to send the API call to the service. // the "output" return value is not valid until after Send returns without error. // // See RebootWorkspaces for more information on using the RebootWorkspaces // 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 RebootWorkspacesRequest method. // req, resp := client.RebootWorkspacesRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // // See also, https://docs.aws.amazon.com/goto/WebAPI/workspaces-2015-04-08/RebootWorkspaces func (c *WorkSpaces) RebootWorkspacesRequest(input *RebootWorkspacesInput) (req *request.Request, output *RebootWorkspacesOutput) { op := &request.Operation{ Name: opRebootWorkspaces, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &RebootWorkspacesInput{} } output = &RebootWorkspacesOutput{} req = c.newRequest(op, input, output) return } // RebootWorkspaces API operation for Amazon WorkSpaces. // // Reboots the specified WorkSpaces. // // You cannot reboot a WorkSpace unless its state is AVAILABLE or UNHEALTHY. // // This operation is asynchronous and returns before the WorkSpaces have rebooted. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon WorkSpaces's // API operation RebootWorkspaces for usage and error information. // See also, https://docs.aws.amazon.com/goto/WebAPI/workspaces-2015-04-08/RebootWorkspaces func (c *WorkSpaces) RebootWorkspaces(input *RebootWorkspacesInput) (*RebootWorkspacesOutput, error) { req, out := c.RebootWorkspacesRequest(input) return out, req.Send() } // RebootWorkspacesWithContext is the same as RebootWorkspaces with the addition of // the ability to pass a context and additional request options. // // See RebootWorkspaces 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 *WorkSpaces) RebootWorkspacesWithContext(ctx aws.Context, input *RebootWorkspacesInput, opts ...request.Option) (*RebootWorkspacesOutput, error) { req, out := c.RebootWorkspacesRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } const opRebuildWorkspaces = "RebuildWorkspaces" // RebuildWorkspacesRequest generates a "aws/request.Request" representing the // client's request for the RebuildWorkspaces operation. The "output" return // value will be populated with the request's response once the request completes // successfuly. // // Use "Send" method on the returned Request to send the API call to the service. // the "output" return value is not valid until after Send returns without error. // // See RebuildWorkspaces for more information on using the RebuildWorkspaces // 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 RebuildWorkspacesRequest method. // req, resp := client.RebuildWorkspacesRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // // See also, https://docs.aws.amazon.com/goto/WebAPI/workspaces-2015-04-08/RebuildWorkspaces func (c *WorkSpaces) RebuildWorkspacesRequest(input *RebuildWorkspacesInput) (req *request.Request, output *RebuildWorkspacesOutput) { op := &request.Operation{ Name: opRebuildWorkspaces, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &RebuildWorkspacesInput{} } output = &RebuildWorkspacesOutput{} req = c.newRequest(op, input, output) return } // RebuildWorkspaces API operation for Amazon WorkSpaces. // // Rebuilds the specified WorkSpace. // // You cannot rebuild a WorkSpace unless its state is AVAILABLE, ERROR, or UNHEALTHY. // // Rebuilding a WorkSpace is a potentially destructive action that can result // in the loss of data. For more information, see Rebuild a WorkSpace (http://docs.aws.amazon.com/workspaces/latest/adminguide/reset-workspace.html). // // This operation is asynchronous and returns before the WorkSpaces have been // completely rebuilt. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon WorkSpaces's // API operation RebuildWorkspaces for usage and error information. // See also, https://docs.aws.amazon.com/goto/WebAPI/workspaces-2015-04-08/RebuildWorkspaces func (c *WorkSpaces) RebuildWorkspaces(input *RebuildWorkspacesInput) (*RebuildWorkspacesOutput, error) { req, out := c.RebuildWorkspacesRequest(input) return out, req.Send() } // RebuildWorkspacesWithContext is the same as RebuildWorkspaces with the addition of // the ability to pass a context and additional request options. // // See RebuildWorkspaces 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 *WorkSpaces) RebuildWorkspacesWithContext(ctx aws.Context, input *RebuildWorkspacesInput, opts ...request.Option) (*RebuildWorkspacesOutput, error) { req, out := c.RebuildWorkspacesRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } const opRevokeIpRules = "RevokeIpRules" // RevokeIpRulesRequest generates a "aws/request.Request" representing the // client's request for the RevokeIpRules operation. The "output" return // value will be populated with the request's response once the request completes // successfuly. // // Use "Send" method on the returned Request to send the API call to the service. // the "output" return value is not valid until after Send returns without error. // // See RevokeIpRules for more information on using the RevokeIpRules // 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 RevokeIpRulesRequest method. // req, resp := client.RevokeIpRulesRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // // See also, https://docs.aws.amazon.com/goto/WebAPI/workspaces-2015-04-08/RevokeIpRules func (c *WorkSpaces) RevokeIpRulesRequest(input *RevokeIpRulesInput) (req *request.Request, output *RevokeIpRulesOutput) { op := &request.Operation{ Name: opRevokeIpRules, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &RevokeIpRulesInput{} } output = &RevokeIpRulesOutput{} req = c.newRequest(op, input, output) return } // RevokeIpRules API operation for Amazon WorkSpaces. // // Removes one or more rules from the specified IP access control group. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon WorkSpaces's // API operation RevokeIpRules for usage and error information. // // Returned Error Codes: // * ErrCodeInvalidParameterValuesException "InvalidParameterValuesException" // One or more parameter values are not valid. // // * ErrCodeResourceNotFoundException "ResourceNotFoundException" // The resource could not be found. // // * ErrCodeInvalidResourceStateException "InvalidResourceStateException" // The state of the resource is not valid for this operation. // // * ErrCodeAccessDeniedException "AccessDeniedException" // The user is not authorized to access a resource. // // See also, https://docs.aws.amazon.com/goto/WebAPI/workspaces-2015-04-08/RevokeIpRules func (c *WorkSpaces) RevokeIpRules(input *RevokeIpRulesInput) (*RevokeIpRulesOutput, error) { req, out := c.RevokeIpRulesRequest(input) return out, req.Send() } // RevokeIpRulesWithContext is the same as RevokeIpRules with the addition of // the ability to pass a context and additional request options. // // See RevokeIpRules 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 *WorkSpaces) RevokeIpRulesWithContext(ctx aws.Context, input *RevokeIpRulesInput, opts ...request.Option) (*RevokeIpRulesOutput, error) { req, out := c.RevokeIpRulesRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } const opStartWorkspaces = "StartWorkspaces" // StartWorkspacesRequest generates a "aws/request.Request" representing the // client's request for the StartWorkspaces operation. The "output" return // value will be populated with the request's response once the request completes // successfuly. // // Use "Send" method on the returned Request to send the API call to the service. // the "output" return value is not valid until after Send returns without error. // // See StartWorkspaces for more information on using the StartWorkspaces // 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 StartWorkspacesRequest method. // req, resp := client.StartWorkspacesRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // // See also, https://docs.aws.amazon.com/goto/WebAPI/workspaces-2015-04-08/StartWorkspaces func (c *WorkSpaces) StartWorkspacesRequest(input *StartWorkspacesInput) (req *request.Request, output *StartWorkspacesOutput) { op := &request.Operation{ Name: opStartWorkspaces, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &StartWorkspacesInput{} } output = &StartWorkspacesOutput{} req = c.newRequest(op, input, output) return } // StartWorkspaces API operation for Amazon WorkSpaces. // // Starts the specified WorkSpaces. // // You cannot start a WorkSpace unless it has a running mode of AutoStop and // a state of STOPPED. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon WorkSpaces's // API operation StartWorkspaces for usage and error information. // See also, https://docs.aws.amazon.com/goto/WebAPI/workspaces-2015-04-08/StartWorkspaces func (c *WorkSpaces) StartWorkspaces(input *StartWorkspacesInput) (*StartWorkspacesOutput, error) { req, out := c.StartWorkspacesRequest(input) return out, req.Send() } // StartWorkspacesWithContext is the same as StartWorkspaces with the addition of // the ability to pass a context and additional request options. // // See StartWorkspaces 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 *WorkSpaces) StartWorkspacesWithContext(ctx aws.Context, input *StartWorkspacesInput, opts ...request.Option) (*StartWorkspacesOutput, error) { req, out := c.StartWorkspacesRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } const opStopWorkspaces = "StopWorkspaces" // StopWorkspacesRequest generates a "aws/request.Request" representing the // client's request for the StopWorkspaces operation. The "output" return // value will be populated with the request's response once the request completes // successfuly. // // Use "Send" method on the returned Request to send the API call to the service. // the "output" return value is not valid until after Send returns without error. // // See StopWorkspaces for more information on using the StopWorkspaces // 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 StopWorkspacesRequest method. // req, resp := client.StopWorkspacesRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // // See also, https://docs.aws.amazon.com/goto/WebAPI/workspaces-2015-04-08/StopWorkspaces func (c *WorkSpaces) StopWorkspacesRequest(input *StopWorkspacesInput) (req *request.Request, output *StopWorkspacesOutput) { op := &request.Operation{ Name: opStopWorkspaces, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &StopWorkspacesInput{} } output = &StopWorkspacesOutput{} req = c.newRequest(op, input, output) return } // StopWorkspaces API operation for Amazon WorkSpaces. // // Stops the specified WorkSpaces. // // You cannot stop a WorkSpace unless it has a running mode of AutoStop and // a state of AVAILABLE, IMPAIRED, UNHEALTHY, or ERROR. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon WorkSpaces's // API operation StopWorkspaces for usage and error information. // See also, https://docs.aws.amazon.com/goto/WebAPI/workspaces-2015-04-08/StopWorkspaces func (c *WorkSpaces) StopWorkspaces(input *StopWorkspacesInput) (*StopWorkspacesOutput, error) { req, out := c.StopWorkspacesRequest(input) return out, req.Send() } // StopWorkspacesWithContext is the same as StopWorkspaces with the addition of // the ability to pass a context and additional request options. // // See StopWorkspaces 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 *WorkSpaces) StopWorkspacesWithContext(ctx aws.Context, input *StopWorkspacesInput, opts ...request.Option) (*StopWorkspacesOutput, error) { req, out := c.StopWorkspacesRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } const opTerminateWorkspaces = "TerminateWorkspaces" // TerminateWorkspacesRequest generates a "aws/request.Request" representing the // client's request for the TerminateWorkspaces operation. The "output" return // value will be populated with the request's response once the request completes // successfuly. // // Use "Send" method on the returned Request to send the API call to the service. // the "output" return value is not valid until after Send returns without error. // // See TerminateWorkspaces for more information on using the TerminateWorkspaces // 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 TerminateWorkspacesRequest method. // req, resp := client.TerminateWorkspacesRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // // See also, https://docs.aws.amazon.com/goto/WebAPI/workspaces-2015-04-08/TerminateWorkspaces func (c *WorkSpaces) TerminateWorkspacesRequest(input *TerminateWorkspacesInput) (req *request.Request, output *TerminateWorkspacesOutput) { op := &request.Operation{ Name: opTerminateWorkspaces, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &TerminateWorkspacesInput{} } output = &TerminateWorkspacesOutput{} req = c.newRequest(op, input, output) return } // TerminateWorkspaces API operation for Amazon WorkSpaces. // // Terminates the specified WorkSpaces. // // Terminating a WorkSpace is a permanent action and cannot be undone. The user's // data is destroyed. If you need to archive any user data, contact Amazon Web // Services before terminating the WorkSpace. // // You can terminate a WorkSpace that is in any state except SUSPENDED. // // This operation is asynchronous and returns before the WorkSpaces have been // completely terminated. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon WorkSpaces's // API operation TerminateWorkspaces for usage and error information. // See also, https://docs.aws.amazon.com/goto/WebAPI/workspaces-2015-04-08/TerminateWorkspaces func (c *WorkSpaces) TerminateWorkspaces(input *TerminateWorkspacesInput) (*TerminateWorkspacesOutput, error) { req, out := c.TerminateWorkspacesRequest(input) return out, req.Send() } // TerminateWorkspacesWithContext is the same as TerminateWorkspaces with the addition of // the ability to pass a context and additional request options. // // See TerminateWorkspaces 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 *WorkSpaces) TerminateWorkspacesWithContext(ctx aws.Context, input *TerminateWorkspacesInput, opts ...request.Option) (*TerminateWorkspacesOutput, error) { req, out := c.TerminateWorkspacesRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } const opUpdateRulesOfIpGroup = "UpdateRulesOfIpGroup" // UpdateRulesOfIpGroupRequest generates a "aws/request.Request" representing the // client's request for the UpdateRulesOfIpGroup operation. The "output" return // value will be populated with the request's response once the request completes // successfuly. // // Use "Send" method on the returned Request to send the API call to the service. // the "output" return value is not valid until after Send returns without error. // // See UpdateRulesOfIpGroup for more information on using the UpdateRulesOfIpGroup // 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 UpdateRulesOfIpGroupRequest method. // req, resp := client.UpdateRulesOfIpGroupRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // // See also, https://docs.aws.amazon.com/goto/WebAPI/workspaces-2015-04-08/UpdateRulesOfIpGroup func (c *WorkSpaces) UpdateRulesOfIpGroupRequest(input *UpdateRulesOfIpGroupInput) (req *request.Request, output *UpdateRulesOfIpGroupOutput) { op := &request.Operation{ Name: opUpdateRulesOfIpGroup, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { input = &UpdateRulesOfIpGroupInput{} } output = &UpdateRulesOfIpGroupOutput{} req = c.newRequest(op, input, output) return } // UpdateRulesOfIpGroup API operation for Amazon WorkSpaces. // // Replaces the current rules of the specified IP access control group with // the specified rules. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon WorkSpaces's // API operation UpdateRulesOfIpGroup for usage and error information. // // Returned Error Codes: // * ErrCodeInvalidParameterValuesException "InvalidParameterValuesException" // One or more parameter values are not valid. // // * ErrCodeResourceNotFoundException "ResourceNotFoundException" // The resource could not be found. // // * ErrCodeResourceLimitExceededException "ResourceLimitExceededException" // Your resource limits have been exceeded. // // * ErrCodeInvalidResourceStateException "InvalidResourceStateException" // The state of the resource is not valid for this operation. // // * ErrCodeAccessDeniedException "AccessDeniedException" // The user is not authorized to access a resource. // // See also, https://docs.aws.amazon.com/goto/WebAPI/workspaces-2015-04-08/UpdateRulesOfIpGroup func (c *WorkSpaces) UpdateRulesOfIpGroup(input *UpdateRulesOfIpGroupInput) (*UpdateRulesOfIpGroupOutput, error) { req, out := c.UpdateRulesOfIpGroupRequest(input) return out, req.Send() } // UpdateRulesOfIpGroupWithContext is the same as UpdateRulesOfIpGroup with the addition of // the ability to pass a context and additional request options. // // See UpdateRulesOfIpGroup 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 *WorkSpaces) UpdateRulesOfIpGroupWithContext(ctx aws.Context, input *UpdateRulesOfIpGroupInput, opts ...request.Option) (*UpdateRulesOfIpGroupOutput, error) { req, out := c.UpdateRulesOfIpGroupRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } type AssociateIpGroupsInput struct { _ struct{} `type:"structure"` // The ID of the directory. // // DirectoryId is a required field DirectoryId *string `type:"string" required:"true"` // The IDs of one or more IP access control groups. // // GroupIds is a required field GroupIds []*string `type:"list" required:"true"` } // String returns the string representation func (s AssociateIpGroupsInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s AssociateIpGroupsInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *AssociateIpGroupsInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "AssociateIpGroupsInput"} if s.DirectoryId == nil { invalidParams.Add(request.NewErrParamRequired("DirectoryId")) } if s.GroupIds == nil { invalidParams.Add(request.NewErrParamRequired("GroupIds")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // SetDirectoryId sets the DirectoryId field's value. func (s *AssociateIpGroupsInput) SetDirectoryId(v string) *AssociateIpGroupsInput { s.DirectoryId = &v return s } // SetGroupIds sets the GroupIds field's value. func (s *AssociateIpGroupsInput) SetGroupIds(v []*string) *AssociateIpGroupsInput { s.GroupIds = v return s } type AssociateIpGroupsOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s AssociateIpGroupsOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s AssociateIpGroupsOutput) GoString() string { return s.String() } type AuthorizeIpRulesInput struct { _ struct{} `type:"structure"` // The ID of the group. // // GroupId is a required field GroupId *string `type:"string" required:"true"` // The rules to add to the group. // // UserRules is a required field UserRules []*IpRuleItem `type:"list" required:"true"` } // String returns the string representation func (s AuthorizeIpRulesInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s AuthorizeIpRulesInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *AuthorizeIpRulesInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "AuthorizeIpRulesInput"} if s.GroupId == nil { invalidParams.Add(request.NewErrParamRequired("GroupId")) } if s.UserRules == nil { invalidParams.Add(request.NewErrParamRequired("UserRules")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // SetGroupId sets the GroupId field's value. func (s *AuthorizeIpRulesInput) SetGroupId(v string) *AuthorizeIpRulesInput { s.GroupId = &v return s } // SetUserRules sets the UserRules field's value. func (s *AuthorizeIpRulesInput) SetUserRules(v []*IpRuleItem) *AuthorizeIpRulesInput { s.UserRules = v return s } type AuthorizeIpRulesOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s AuthorizeIpRulesOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s AuthorizeIpRulesOutput) GoString() string { return s.String() } // Information about the compute type. type ComputeType struct { _ struct{} `type:"structure"` // The compute type. Name *string `type:"string" enum:"Compute"` } // String returns the string representation func (s ComputeType) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ComputeType) GoString() string { return s.String() } // SetName sets the Name field's value. func (s *ComputeType) SetName(v string) *ComputeType { s.Name = &v return s } type CreateIpGroupInput struct { _ struct{} `type:"structure"` // The description of the group. GroupDesc *string `type:"string"` // The name of the group. // // GroupName is a required field GroupName *string `type:"string" required:"true"` // The rules to add to the group. UserRules []*IpRuleItem `type:"list"` } // String returns the string representation func (s CreateIpGroupInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreateIpGroupInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *CreateIpGroupInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "CreateIpGroupInput"} if s.GroupName == nil { invalidParams.Add(request.NewErrParamRequired("GroupName")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // SetGroupDesc sets the GroupDesc field's value. func (s *CreateIpGroupInput) SetGroupDesc(v string) *CreateIpGroupInput { s.GroupDesc = &v return s } // SetGroupName sets the GroupName field's value. func (s *CreateIpGroupInput) SetGroupName(v string) *CreateIpGroupInput { s.GroupName = &v return s } // SetUserRules sets the UserRules field's value. func (s *CreateIpGroupInput) SetUserRules(v []*IpRuleItem) *CreateIpGroupInput { s.UserRules = v return s } type CreateIpGroupOutput struct { _ struct{} `type:"structure"` // The ID of the group. GroupId *string `type:"string"` } // String returns the string representation func (s CreateIpGroupOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreateIpGroupOutput) GoString() string { return s.String() } // SetGroupId sets the GroupId field's value. func (s *CreateIpGroupOutput) SetGroupId(v string) *CreateIpGroupOutput { s.GroupId = &v return s } type CreateTagsInput struct { _ struct{} `type:"structure"` // The ID of the WorkSpace. To find this ID, use DescribeWorkspaces. // // ResourceId is a required field ResourceId *string `min:"1" type:"string" required:"true"` // The tags. Each WorkSpace can have a maximum of 50 tags. // // Tags is a required field Tags []*Tag `type:"list" required:"true"` } // String returns the string representation func (s CreateTagsInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreateTagsInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *CreateTagsInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "CreateTagsInput"} if s.ResourceId == nil { invalidParams.Add(request.NewErrParamRequired("ResourceId")) } if s.ResourceId != nil && len(*s.ResourceId) < 1 { invalidParams.Add(request.NewErrParamMinLen("ResourceId", 1)) } if s.Tags == nil { invalidParams.Add(request.NewErrParamRequired("Tags")) } 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 } // SetResourceId sets the ResourceId field's value. func (s *CreateTagsInput) SetResourceId(v string) *CreateTagsInput { s.ResourceId = &v return s } // SetTags sets the Tags field's value. func (s *CreateTagsInput) SetTags(v []*Tag) *CreateTagsInput { s.Tags = v return s } type CreateTagsOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s CreateTagsOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreateTagsOutput) GoString() string { return s.String() } type CreateWorkspacesInput struct { _ struct{} `type:"structure"` // The WorkSpaces to create. You can specify up to 25 WorkSpaces. // // Workspaces is a required field Workspaces []*WorkspaceRequest `min:"1" type:"list" required:"true"` } // String returns the string representation func (s CreateWorkspacesInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreateWorkspacesInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *CreateWorkspacesInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "CreateWorkspacesInput"} if s.Workspaces == nil { invalidParams.Add(request.NewErrParamRequired("Workspaces")) } if s.Workspaces != nil && len(s.Workspaces) < 1 { invalidParams.Add(request.NewErrParamMinLen("Workspaces", 1)) } if s.Workspaces != nil { for i, v := range s.Workspaces { if v == nil { continue } if err := v.Validate(); err != nil { invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Workspaces", i), err.(request.ErrInvalidParams)) } } } if invalidParams.Len() > 0 { return invalidParams } return nil } // SetWorkspaces sets the Workspaces field's value. func (s *CreateWorkspacesInput) SetWorkspaces(v []*WorkspaceRequest) *CreateWorkspacesInput { s.Workspaces = v return s } type CreateWorkspacesOutput struct { _ struct{} `type:"structure"` // Information about the WorkSpaces that could not be created. FailedRequests []*FailedCreateWorkspaceRequest `type:"list"` // Information about the WorkSpaces that were created. // // Because this operation is asynchronous, the identifier returned is not immediately // available for use with other operations. For example, if you call DescribeWorkspaces // before the WorkSpace is created, the information returned can be incomplete. PendingRequests []*Workspace `type:"list"` } // String returns the string representation func (s CreateWorkspacesOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s CreateWorkspacesOutput) GoString() string { return s.String() } // SetFailedRequests sets the FailedRequests field's value. func (s *CreateWorkspacesOutput) SetFailedRequests(v []*FailedCreateWorkspaceRequest) *CreateWorkspacesOutput { s.FailedRequests = v return s } // SetPendingRequests sets the PendingRequests field's value. func (s *CreateWorkspacesOutput) SetPendingRequests(v []*Workspace) *CreateWorkspacesOutput { s.PendingRequests = v return s } // Information about defaults used to create a WorkSpace. type DefaultWorkspaceCreationProperties struct { _ struct{} `type:"structure"` // The identifier of any security groups to apply to WorkSpaces when they are // created. CustomSecurityGroupId *string `type:"string"` // The organizational unit (OU) in the directory for the WorkSpace machine accounts. DefaultOu *string `type:"string"` // The public IP address to attach to all WorkSpaces that are created or rebuilt. EnableInternetAccess *bool `type:"boolean"` // Indicates whether the directory is enabled for Amazon WorkDocs. EnableWorkDocs *bool `type:"boolean"` // Indicates whether the WorkSpace user is an administrator on the WorkSpace. UserEnabledAsLocalAdministrator *bool `type:"boolean"` } // String returns the string representation func (s DefaultWorkspaceCreationProperties) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DefaultWorkspaceCreationProperties) GoString() string { return s.String() } // SetCustomSecurityGroupId sets the CustomSecurityGroupId field's value. func (s *DefaultWorkspaceCreationProperties) SetCustomSecurityGroupId(v string) *DefaultWorkspaceCreationProperties { s.CustomSecurityGroupId = &v return s } // SetDefaultOu sets the DefaultOu field's value. func (s *DefaultWorkspaceCreationProperties) SetDefaultOu(v string) *DefaultWorkspaceCreationProperties { s.DefaultOu = &v return s } // SetEnableInternetAccess sets the EnableInternetAccess field's value. func (s *DefaultWorkspaceCreationProperties) SetEnableInternetAccess(v bool) *DefaultWorkspaceCreationProperties { s.EnableInternetAccess = &v return s } // SetEnableWorkDocs sets the EnableWorkDocs field's value. func (s *DefaultWorkspaceCreationProperties) SetEnableWorkDocs(v bool) *DefaultWorkspaceCreationProperties { s.EnableWorkDocs = &v return s } // SetUserEnabledAsLocalAdministrator sets the UserEnabledAsLocalAdministrator field's value. func (s *DefaultWorkspaceCreationProperties) SetUserEnabledAsLocalAdministrator(v bool) *DefaultWorkspaceCreationProperties { s.UserEnabledAsLocalAdministrator = &v return s } type DeleteIpGroupInput struct { _ struct{} `type:"structure"` // The ID of the IP access control group. // // GroupId is a required field GroupId *string `type:"string" required:"true"` } // String returns the string representation func (s DeleteIpGroupInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteIpGroupInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DeleteIpGroupInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DeleteIpGroupInput"} if s.GroupId == nil { invalidParams.Add(request.NewErrParamRequired("GroupId")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // SetGroupId sets the GroupId field's value. func (s *DeleteIpGroupInput) SetGroupId(v string) *DeleteIpGroupInput { s.GroupId = &v return s } type DeleteIpGroupOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s DeleteIpGroupOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteIpGroupOutput) GoString() string { return s.String() } type DeleteTagsInput struct { _ struct{} `type:"structure"` // The ID of the WorkSpace. To find this ID, use DescribeWorkspaces. // // ResourceId is a required field ResourceId *string `min:"1" type:"string" required:"true"` // The tag keys. // // TagKeys is a required field TagKeys []*string `type:"list" required:"true"` } // String returns the string representation func (s DeleteTagsInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteTagsInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DeleteTagsInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DeleteTagsInput"} if s.ResourceId == nil { invalidParams.Add(request.NewErrParamRequired("ResourceId")) } if s.ResourceId != nil && len(*s.ResourceId) < 1 { invalidParams.Add(request.NewErrParamMinLen("ResourceId", 1)) } if s.TagKeys == nil { invalidParams.Add(request.NewErrParamRequired("TagKeys")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // SetResourceId sets the ResourceId field's value. func (s *DeleteTagsInput) SetResourceId(v string) *DeleteTagsInput { s.ResourceId = &v return s } // SetTagKeys sets the TagKeys field's value. func (s *DeleteTagsInput) SetTagKeys(v []*string) *DeleteTagsInput { s.TagKeys = v return s } type DeleteTagsOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s DeleteTagsOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DeleteTagsOutput) GoString() string { return s.String() } type DescribeIpGroupsInput struct { _ struct{} `type:"structure"` // The IDs of one or more IP access control groups. GroupIds []*string `type:"list"` // The maximum number of items to return. MaxResults *int64 `min:"1" type:"integer"` // The token for the next set of results. (You received this token from a previous // call.) NextToken *string `min:"1" type:"string"` } // String returns the string representation func (s DescribeIpGroupsInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeIpGroupsInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DescribeIpGroupsInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DescribeIpGroupsInput"} if s.MaxResults != nil && *s.MaxResults < 1 { invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1)) } if s.NextToken != nil && len(*s.NextToken) < 1 { invalidParams.Add(request.NewErrParamMinLen("NextToken", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // SetGroupIds sets the GroupIds field's value. func (s *DescribeIpGroupsInput) SetGroupIds(v []*string) *DescribeIpGroupsInput { s.GroupIds = v return s } // SetMaxResults sets the MaxResults field's value. func (s *DescribeIpGroupsInput) SetMaxResults(v int64) *DescribeIpGroupsInput { s.MaxResults = &v return s } // SetNextToken sets the NextToken field's value. func (s *DescribeIpGroupsInput) SetNextToken(v string) *DescribeIpGroupsInput { s.NextToken = &v return s } type DescribeIpGroupsOutput struct { _ struct{} `type:"structure"` // The token to use to retrieve the next set of results, or null if there are // no more results available. This token is valid for one day and must be used // within that time frame. NextToken *string `min:"1" type:"string"` // Information about the IP access control groups. Result []*IpGroup `type:"list"` } // String returns the string representation func (s DescribeIpGroupsOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeIpGroupsOutput) GoString() string { return s.String() } // SetNextToken sets the NextToken field's value. func (s *DescribeIpGroupsOutput) SetNextToken(v string) *DescribeIpGroupsOutput { s.NextToken = &v return s } // SetResult sets the Result field's value. func (s *DescribeIpGroupsOutput) SetResult(v []*IpGroup) *DescribeIpGroupsOutput { s.Result = v return s } type DescribeTagsInput struct { _ struct{} `type:"structure"` // The ID of the WorkSpace. To find this ID, use DescribeWorkspaces. // // ResourceId is a required field ResourceId *string `min:"1" type:"string" required:"true"` } // String returns the string representation func (s DescribeTagsInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeTagsInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DescribeTagsInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DescribeTagsInput"} if s.ResourceId == nil { invalidParams.Add(request.NewErrParamRequired("ResourceId")) } if s.ResourceId != nil && len(*s.ResourceId) < 1 { invalidParams.Add(request.NewErrParamMinLen("ResourceId", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // SetResourceId sets the ResourceId field's value. func (s *DescribeTagsInput) SetResourceId(v string) *DescribeTagsInput { s.ResourceId = &v return s } type DescribeTagsOutput struct { _ struct{} `type:"structure"` // The tags. TagList []*Tag `type:"list"` } // String returns the string representation func (s DescribeTagsOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeTagsOutput) GoString() string { return s.String() } // SetTagList sets the TagList field's value. func (s *DescribeTagsOutput) SetTagList(v []*Tag) *DescribeTagsOutput { s.TagList = v return s } type DescribeWorkspaceBundlesInput struct { _ struct{} `type:"structure"` // The IDs of the bundles. This parameter cannot be combined with any other // filter. BundleIds []*string `min:"1" type:"list"` // The token for the next set of results. (You received this token from a previous // call.) NextToken *string `min:"1" type:"string"` // The owner of the bundles. This parameter cannot be combined with any other // filter. // // Specify AMAZON to describe the bundles provided by AWS or null to describe // the bundles that belong to your account. Owner *string `type:"string"` } // String returns the string representation func (s DescribeWorkspaceBundlesInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeWorkspaceBundlesInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DescribeWorkspaceBundlesInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DescribeWorkspaceBundlesInput"} if s.BundleIds != nil && len(s.BundleIds) < 1 { invalidParams.Add(request.NewErrParamMinLen("BundleIds", 1)) } if s.NextToken != nil && len(*s.NextToken) < 1 { invalidParams.Add(request.NewErrParamMinLen("NextToken", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // SetBundleIds sets the BundleIds field's value. func (s *DescribeWorkspaceBundlesInput) SetBundleIds(v []*string) *DescribeWorkspaceBundlesInput { s.BundleIds = v return s } // SetNextToken sets the NextToken field's value. func (s *DescribeWorkspaceBundlesInput) SetNextToken(v string) *DescribeWorkspaceBundlesInput { s.NextToken = &v return s } // SetOwner sets the Owner field's value. func (s *DescribeWorkspaceBundlesInput) SetOwner(v string) *DescribeWorkspaceBundlesInput { s.Owner = &v return s } type DescribeWorkspaceBundlesOutput struct { _ struct{} `type:"structure"` // Information about the bundles. Bundles []*WorkspaceBundle `type:"list"` // The token to use to retrieve the next set of results, or null if there are // no more results available. This token is valid for one day and must be used // within that time frame. NextToken *string `min:"1" type:"string"` } // String returns the string representation func (s DescribeWorkspaceBundlesOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeWorkspaceBundlesOutput) GoString() string { return s.String() } // SetBundles sets the Bundles field's value. func (s *DescribeWorkspaceBundlesOutput) SetBundles(v []*WorkspaceBundle) *DescribeWorkspaceBundlesOutput { s.Bundles = v return s } // SetNextToken sets the NextToken field's value. func (s *DescribeWorkspaceBundlesOutput) SetNextToken(v string) *DescribeWorkspaceBundlesOutput { s.NextToken = &v return s } type DescribeWorkspaceDirectoriesInput struct { _ struct{} `type:"structure"` // The identifiers of the directories. If the value is null, all directories // are retrieved. DirectoryIds []*string `min:"1" type:"list"` // The token for the next set of results. (You received this token from a previous // call.) NextToken *string `min:"1" type:"string"` } // String returns the string representation func (s DescribeWorkspaceDirectoriesInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeWorkspaceDirectoriesInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DescribeWorkspaceDirectoriesInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DescribeWorkspaceDirectoriesInput"} if s.DirectoryIds != nil && len(s.DirectoryIds) < 1 { invalidParams.Add(request.NewErrParamMinLen("DirectoryIds", 1)) } if s.NextToken != nil && len(*s.NextToken) < 1 { invalidParams.Add(request.NewErrParamMinLen("NextToken", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // SetDirectoryIds sets the DirectoryIds field's value. func (s *DescribeWorkspaceDirectoriesInput) SetDirectoryIds(v []*string) *DescribeWorkspaceDirectoriesInput { s.DirectoryIds = v return s } // SetNextToken sets the NextToken field's value. func (s *DescribeWorkspaceDirectoriesInput) SetNextToken(v string) *DescribeWorkspaceDirectoriesInput { s.NextToken = &v return s } type DescribeWorkspaceDirectoriesOutput struct { _ struct{} `type:"structure"` // Information about the directories. Directories []*WorkspaceDirectory `type:"list"` // The token to use to retrieve the next set of results, or null if there are // no more results available. This token is valid for one day and must be used // within that time frame. NextToken *string `min:"1" type:"string"` } // String returns the string representation func (s DescribeWorkspaceDirectoriesOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeWorkspaceDirectoriesOutput) GoString() string { return s.String() } // SetDirectories sets the Directories field's value. func (s *DescribeWorkspaceDirectoriesOutput) SetDirectories(v []*WorkspaceDirectory) *DescribeWorkspaceDirectoriesOutput { s.Directories = v return s } // SetNextToken sets the NextToken field's value. func (s *DescribeWorkspaceDirectoriesOutput) SetNextToken(v string) *DescribeWorkspaceDirectoriesOutput { s.NextToken = &v return s } type DescribeWorkspacesConnectionStatusInput struct { _ struct{} `type:"structure"` // The token for the next set of results. (You received this token from a previous // call.) NextToken *string `min:"1" type:"string"` // The identifiers of the WorkSpaces. You can specify up to 25 WorkSpaces. WorkspaceIds []*string `min:"1" type:"list"` } // String returns the string representation func (s DescribeWorkspacesConnectionStatusInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeWorkspacesConnectionStatusInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DescribeWorkspacesConnectionStatusInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DescribeWorkspacesConnectionStatusInput"} if s.NextToken != nil && len(*s.NextToken) < 1 { invalidParams.Add(request.NewErrParamMinLen("NextToken", 1)) } if s.WorkspaceIds != nil && len(s.WorkspaceIds) < 1 { invalidParams.Add(request.NewErrParamMinLen("WorkspaceIds", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // SetNextToken sets the NextToken field's value. func (s *DescribeWorkspacesConnectionStatusInput) SetNextToken(v string) *DescribeWorkspacesConnectionStatusInput { s.NextToken = &v return s } // SetWorkspaceIds sets the WorkspaceIds field's value. func (s *DescribeWorkspacesConnectionStatusInput) SetWorkspaceIds(v []*string) *DescribeWorkspacesConnectionStatusInput { s.WorkspaceIds = v return s } type DescribeWorkspacesConnectionStatusOutput struct { _ struct{} `type:"structure"` // The token to use to retrieve the next set of results, or null if there are // no more results available. NextToken *string `min:"1" type:"string"` // Information about the connection status of the WorkSpace. WorkspacesConnectionStatus []*WorkspaceConnectionStatus `type:"list"` } // String returns the string representation func (s DescribeWorkspacesConnectionStatusOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeWorkspacesConnectionStatusOutput) GoString() string { return s.String() } // SetNextToken sets the NextToken field's value. func (s *DescribeWorkspacesConnectionStatusOutput) SetNextToken(v string) *DescribeWorkspacesConnectionStatusOutput { s.NextToken = &v return s } // SetWorkspacesConnectionStatus sets the WorkspacesConnectionStatus field's value. func (s *DescribeWorkspacesConnectionStatusOutput) SetWorkspacesConnectionStatus(v []*WorkspaceConnectionStatus) *DescribeWorkspacesConnectionStatusOutput { s.WorkspacesConnectionStatus = v return s } type DescribeWorkspacesInput struct { _ struct{} `type:"structure"` // The ID of the bundle. All WorkSpaces that are created from this bundle are // retrieved. This parameter cannot be combined with any other filter. BundleId *string `type:"string"` // The ID of the directory. In addition, you can optionally specify a specific // directory user (see UserName). This parameter cannot be combined with any // other filter. DirectoryId *string `type:"string"` // The maximum number of items to return. Limit *int64 `min:"1" type:"integer"` // The token for the next set of results. (You received this token from a previous // call.) NextToken *string `min:"1" type:"string"` // The name of the directory user. You must specify this parameter with DirectoryId. UserName *string `min:"1" type:"string"` // The IDs of the WorkSpaces. This parameter cannot be combined with any other // filter. // // Because the CreateWorkspaces operation is asynchronous, the identifier it // returns is not immediately available. If you immediately call DescribeWorkspaces // with this identifier, no information is returned. WorkspaceIds []*string `min:"1" type:"list"` } // String returns the string representation func (s DescribeWorkspacesInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeWorkspacesInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DescribeWorkspacesInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DescribeWorkspacesInput"} if s.Limit != nil && *s.Limit < 1 { invalidParams.Add(request.NewErrParamMinValue("Limit", 1)) } if s.NextToken != nil && len(*s.NextToken) < 1 { invalidParams.Add(request.NewErrParamMinLen("NextToken", 1)) } if s.UserName != nil && len(*s.UserName) < 1 { invalidParams.Add(request.NewErrParamMinLen("UserName", 1)) } if s.WorkspaceIds != nil && len(s.WorkspaceIds) < 1 { invalidParams.Add(request.NewErrParamMinLen("WorkspaceIds", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // SetBundleId sets the BundleId field's value. func (s *DescribeWorkspacesInput) SetBundleId(v string) *DescribeWorkspacesInput { s.BundleId = &v return s } // SetDirectoryId sets the DirectoryId field's value. func (s *DescribeWorkspacesInput) SetDirectoryId(v string) *DescribeWorkspacesInput { s.DirectoryId = &v return s } // SetLimit sets the Limit field's value. func (s *DescribeWorkspacesInput) SetLimit(v int64) *DescribeWorkspacesInput { s.Limit = &v return s } // SetNextToken sets the NextToken field's value. func (s *DescribeWorkspacesInput) SetNextToken(v string) *DescribeWorkspacesInput { s.NextToken = &v return s } // SetUserName sets the UserName field's value. func (s *DescribeWorkspacesInput) SetUserName(v string) *DescribeWorkspacesInput { s.UserName = &v return s } // SetWorkspaceIds sets the WorkspaceIds field's value. func (s *DescribeWorkspacesInput) SetWorkspaceIds(v []*string) *DescribeWorkspacesInput { s.WorkspaceIds = v return s } type DescribeWorkspacesOutput struct { _ struct{} `type:"structure"` // The token to use to retrieve the next set of results, or null if there are // no more results available. This token is valid for one day and must be used // within that time frame. NextToken *string `min:"1" type:"string"` // Information about the WorkSpaces. // // Because CreateWorkspaces is an asynchronous operation, some of the returned // information could be incomplete. Workspaces []*Workspace `type:"list"` } // String returns the string representation func (s DescribeWorkspacesOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DescribeWorkspacesOutput) GoString() string { return s.String() } // SetNextToken sets the NextToken field's value. func (s *DescribeWorkspacesOutput) SetNextToken(v string) *DescribeWorkspacesOutput { s.NextToken = &v return s } // SetWorkspaces sets the Workspaces field's value. func (s *DescribeWorkspacesOutput) SetWorkspaces(v []*Workspace) *DescribeWorkspacesOutput { s.Workspaces = v return s } type DisassociateIpGroupsInput struct { _ struct{} `type:"structure"` // The ID of the directory. // // DirectoryId is a required field DirectoryId *string `type:"string" required:"true"` // The IDs of one or more IP access control groups. // // GroupIds is a required field GroupIds []*string `type:"list" required:"true"` } // String returns the string representation func (s DisassociateIpGroupsInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DisassociateIpGroupsInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *DisassociateIpGroupsInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DisassociateIpGroupsInput"} if s.DirectoryId == nil { invalidParams.Add(request.NewErrParamRequired("DirectoryId")) } if s.GroupIds == nil { invalidParams.Add(request.NewErrParamRequired("GroupIds")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // SetDirectoryId sets the DirectoryId field's value. func (s *DisassociateIpGroupsInput) SetDirectoryId(v string) *DisassociateIpGroupsInput { s.DirectoryId = &v return s } // SetGroupIds sets the GroupIds field's value. func (s *DisassociateIpGroupsInput) SetGroupIds(v []*string) *DisassociateIpGroupsInput { s.GroupIds = v return s } type DisassociateIpGroupsOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s DisassociateIpGroupsOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s DisassociateIpGroupsOutput) GoString() string { return s.String() } // Information about a WorkSpace that could not be created. type FailedCreateWorkspaceRequest struct { _ struct{} `type:"structure"` // The error code. ErrorCode *string `type:"string"` // The textual error message. ErrorMessage *string `type:"string"` // Information about the WorkSpace. WorkspaceRequest *WorkspaceRequest `type:"structure"` } // String returns the string representation func (s FailedCreateWorkspaceRequest) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s FailedCreateWorkspaceRequest) GoString() string { return s.String() } // SetErrorCode sets the ErrorCode field's value. func (s *FailedCreateWorkspaceRequest) SetErrorCode(v string) *FailedCreateWorkspaceRequest { s.ErrorCode = &v return s } // SetErrorMessage sets the ErrorMessage field's value. func (s *FailedCreateWorkspaceRequest) SetErrorMessage(v string) *FailedCreateWorkspaceRequest { s.ErrorMessage = &v return s } // SetWorkspaceRequest sets the WorkspaceRequest field's value. func (s *FailedCreateWorkspaceRequest) SetWorkspaceRequest(v *WorkspaceRequest) *FailedCreateWorkspaceRequest { s.WorkspaceRequest = v return s } // Information about a WorkSpace that could not be rebooted (RebootWorkspaces), // rebuilt (RebuildWorkspaces), terminated (TerminateWorkspaces), started (StartWorkspaces), // or stopped (StopWorkspaces). type FailedWorkspaceChangeRequest struct { _ struct{} `type:"structure"` // The error code. ErrorCode *string `type:"string"` // The textual error message. ErrorMessage *string `type:"string"` // The identifier of the WorkSpace. WorkspaceId *string `type:"string"` } // String returns the string representation func (s FailedWorkspaceChangeRequest) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s FailedWorkspaceChangeRequest) GoString() string { return s.String() } // SetErrorCode sets the ErrorCode field's value. func (s *FailedWorkspaceChangeRequest) SetErrorCode(v string) *FailedWorkspaceChangeRequest { s.ErrorCode = &v return s } // SetErrorMessage sets the ErrorMessage field's value. func (s *FailedWorkspaceChangeRequest) SetErrorMessage(v string) *FailedWorkspaceChangeRequest { s.ErrorMessage = &v return s } // SetWorkspaceId sets the WorkspaceId field's value. func (s *FailedWorkspaceChangeRequest) SetWorkspaceId(v string) *FailedWorkspaceChangeRequest { s.WorkspaceId = &v return s } // Information about an IP access control group. type IpGroup struct { _ struct{} `type:"structure"` // The description of the group. GroupDesc *string `locationName:"groupDesc" type:"string"` // The ID of the group. GroupId *string `locationName:"groupId" type:"string"` // The name of the group. GroupName *string `locationName:"groupName" type:"string"` // The rules. UserRules []*IpRuleItem `locationName:"userRules" type:"list"` } // String returns the string representation func (s IpGroup) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s IpGroup) GoString() string { return s.String() } // SetGroupDesc sets the GroupDesc field's value. func (s *IpGroup) SetGroupDesc(v string) *IpGroup { s.GroupDesc = &v return s } // SetGroupId sets the GroupId field's value. func (s *IpGroup) SetGroupId(v string) *IpGroup { s.GroupId = &v return s } // SetGroupName sets the GroupName field's value. func (s *IpGroup) SetGroupName(v string) *IpGroup { s.GroupName = &v return s } // SetUserRules sets the UserRules field's value. func (s *IpGroup) SetUserRules(v []*IpRuleItem) *IpGroup { s.UserRules = v return s } // Information about a rule for an IP access control group. type IpRuleItem struct { _ struct{} `type:"structure"` // The IP address range, in CIDR notation. IpRule *string `locationName:"ipRule" type:"string"` // The description. RuleDesc *string `locationName:"ruleDesc" type:"string"` } // String returns the string representation func (s IpRuleItem) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s IpRuleItem) GoString() string { return s.String() } // SetIpRule sets the IpRule field's value. func (s *IpRuleItem) SetIpRule(v string) *IpRuleItem { s.IpRule = &v return s } // SetRuleDesc sets the RuleDesc field's value. func (s *IpRuleItem) SetRuleDesc(v string) *IpRuleItem { s.RuleDesc = &v return s } // Information about a WorkSpace modification. type ModificationState struct { _ struct{} `type:"structure"` // The resource. Resource *string `type:"string" enum:"ModificationResourceEnum"` // The modification state. State *string `type:"string" enum:"ModificationStateEnum"` } // String returns the string representation func (s ModificationState) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ModificationState) GoString() string { return s.String() } // SetResource sets the Resource field's value. func (s *ModificationState) SetResource(v string) *ModificationState { s.Resource = &v return s } // SetState sets the State field's value. func (s *ModificationState) SetState(v string) *ModificationState { s.State = &v return s } type ModifyWorkspacePropertiesInput struct { _ struct{} `type:"structure"` // The ID of the WorkSpace. // // WorkspaceId is a required field WorkspaceId *string `type:"string" required:"true"` // The properties of the WorkSpace. // // WorkspaceProperties is a required field WorkspaceProperties *WorkspaceProperties `type:"structure" required:"true"` } // String returns the string representation func (s ModifyWorkspacePropertiesInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ModifyWorkspacePropertiesInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *ModifyWorkspacePropertiesInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "ModifyWorkspacePropertiesInput"} if s.WorkspaceId == nil { invalidParams.Add(request.NewErrParamRequired("WorkspaceId")) } if s.WorkspaceProperties == nil { invalidParams.Add(request.NewErrParamRequired("WorkspaceProperties")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // SetWorkspaceId sets the WorkspaceId field's value. func (s *ModifyWorkspacePropertiesInput) SetWorkspaceId(v string) *ModifyWorkspacePropertiesInput { s.WorkspaceId = &v return s } // SetWorkspaceProperties sets the WorkspaceProperties field's value. func (s *ModifyWorkspacePropertiesInput) SetWorkspaceProperties(v *WorkspaceProperties) *ModifyWorkspacePropertiesInput { s.WorkspaceProperties = v return s } type ModifyWorkspacePropertiesOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s ModifyWorkspacePropertiesOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ModifyWorkspacePropertiesOutput) GoString() string { return s.String() } type ModifyWorkspaceStateInput struct { _ struct{} `type:"structure"` // The ID of the WorkSpace. // // WorkspaceId is a required field WorkspaceId *string `type:"string" required:"true"` // The WorkSpace state. // // WorkspaceState is a required field WorkspaceState *string `type:"string" required:"true" enum:"TargetWorkspaceState"` } // String returns the string representation func (s ModifyWorkspaceStateInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ModifyWorkspaceStateInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *ModifyWorkspaceStateInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "ModifyWorkspaceStateInput"} if s.WorkspaceId == nil { invalidParams.Add(request.NewErrParamRequired("WorkspaceId")) } if s.WorkspaceState == nil { invalidParams.Add(request.NewErrParamRequired("WorkspaceState")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // SetWorkspaceId sets the WorkspaceId field's value. func (s *ModifyWorkspaceStateInput) SetWorkspaceId(v string) *ModifyWorkspaceStateInput { s.WorkspaceId = &v return s } // SetWorkspaceState sets the WorkspaceState field's value. func (s *ModifyWorkspaceStateInput) SetWorkspaceState(v string) *ModifyWorkspaceStateInput { s.WorkspaceState = &v return s } type ModifyWorkspaceStateOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s ModifyWorkspaceStateOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s ModifyWorkspaceStateOutput) GoString() string { return s.String() } // Information used to reboot a WorkSpace. type RebootRequest struct { _ struct{} `type:"structure"` // The ID of the WorkSpace. // // WorkspaceId is a required field WorkspaceId *string `type:"string" required:"true"` } // String returns the string representation func (s RebootRequest) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s RebootRequest) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *RebootRequest) Validate() error { invalidParams := request.ErrInvalidParams{Context: "RebootRequest"} if s.WorkspaceId == nil { invalidParams.Add(request.NewErrParamRequired("WorkspaceId")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // SetWorkspaceId sets the WorkspaceId field's value. func (s *RebootRequest) SetWorkspaceId(v string) *RebootRequest { s.WorkspaceId = &v return s } type RebootWorkspacesInput struct { _ struct{} `type:"structure"` // The WorkSpaces to reboot. You can specify up to 25 WorkSpaces. // // RebootWorkspaceRequests is a required field RebootWorkspaceRequests []*RebootRequest `min:"1" type:"list" required:"true"` } // String returns the string representation func (s RebootWorkspacesInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s RebootWorkspacesInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *RebootWorkspacesInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "RebootWorkspacesInput"} if s.RebootWorkspaceRequests == nil { invalidParams.Add(request.NewErrParamRequired("RebootWorkspaceRequests")) } if s.RebootWorkspaceRequests != nil && len(s.RebootWorkspaceRequests) < 1 { invalidParams.Add(request.NewErrParamMinLen("RebootWorkspaceRequests", 1)) } if s.RebootWorkspaceRequests != nil { for i, v := range s.RebootWorkspaceRequests { if v == nil { continue } if err := v.Validate(); err != nil { invalidParams.AddNested(fmt.Sprintf("%s[%v]", "RebootWorkspaceRequests", i), err.(request.ErrInvalidParams)) } } } if invalidParams.Len() > 0 { return invalidParams } return nil } // SetRebootWorkspaceRequests sets the RebootWorkspaceRequests field's value. func (s *RebootWorkspacesInput) SetRebootWorkspaceRequests(v []*RebootRequest) *RebootWorkspacesInput { s.RebootWorkspaceRequests = v return s } type RebootWorkspacesOutput struct { _ struct{} `type:"structure"` // Information about the WorkSpaces that could not be rebooted. FailedRequests []*FailedWorkspaceChangeRequest `type:"list"` } // String returns the string representation func (s RebootWorkspacesOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s RebootWorkspacesOutput) GoString() string { return s.String() } // SetFailedRequests sets the FailedRequests field's value. func (s *RebootWorkspacesOutput) SetFailedRequests(v []*FailedWorkspaceChangeRequest) *RebootWorkspacesOutput { s.FailedRequests = v return s } // Information used to rebuild a WorkSpace. type RebuildRequest struct { _ struct{} `type:"structure"` // The ID of the WorkSpace. // // WorkspaceId is a required field WorkspaceId *string `type:"string" required:"true"` } // String returns the string representation func (s RebuildRequest) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s RebuildRequest) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *RebuildRequest) Validate() error { invalidParams := request.ErrInvalidParams{Context: "RebuildRequest"} if s.WorkspaceId == nil { invalidParams.Add(request.NewErrParamRequired("WorkspaceId")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // SetWorkspaceId sets the WorkspaceId field's value. func (s *RebuildRequest) SetWorkspaceId(v string) *RebuildRequest { s.WorkspaceId = &v return s } type RebuildWorkspacesInput struct { _ struct{} `type:"structure"` // The WorkSpace to rebuild. You can specify a single WorkSpace. // // RebuildWorkspaceRequests is a required field RebuildWorkspaceRequests []*RebuildRequest `min:"1" type:"list" required:"true"` } // String returns the string representation func (s RebuildWorkspacesInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s RebuildWorkspacesInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *RebuildWorkspacesInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "RebuildWorkspacesInput"} if s.RebuildWorkspaceRequests == nil { invalidParams.Add(request.NewErrParamRequired("RebuildWorkspaceRequests")) } if s.RebuildWorkspaceRequests != nil && len(s.RebuildWorkspaceRequests) < 1 { invalidParams.Add(request.NewErrParamMinLen("RebuildWorkspaceRequests", 1)) } if s.RebuildWorkspaceRequests != nil { for i, v := range s.RebuildWorkspaceRequests { if v == nil { continue } if err := v.Validate(); err != nil { invalidParams.AddNested(fmt.Sprintf("%s[%v]", "RebuildWorkspaceRequests", i), err.(request.ErrInvalidParams)) } } } if invalidParams.Len() > 0 { return invalidParams } return nil } // SetRebuildWorkspaceRequests sets the RebuildWorkspaceRequests field's value. func (s *RebuildWorkspacesInput) SetRebuildWorkspaceRequests(v []*RebuildRequest) *RebuildWorkspacesInput { s.RebuildWorkspaceRequests = v return s } type RebuildWorkspacesOutput struct { _ struct{} `type:"structure"` // Information about the WorkSpace if it could not be rebuilt. FailedRequests []*FailedWorkspaceChangeRequest `type:"list"` } // String returns the string representation func (s RebuildWorkspacesOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s RebuildWorkspacesOutput) GoString() string { return s.String() } // SetFailedRequests sets the FailedRequests field's value. func (s *RebuildWorkspacesOutput) SetFailedRequests(v []*FailedWorkspaceChangeRequest) *RebuildWorkspacesOutput { s.FailedRequests = v return s } type RevokeIpRulesInput struct { _ struct{} `type:"structure"` // The ID of the group. // // GroupId is a required field GroupId *string `type:"string" required:"true"` // The rules to remove from the group. // // UserRules is a required field UserRules []*string `type:"list" required:"true"` } // String returns the string representation func (s RevokeIpRulesInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s RevokeIpRulesInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *RevokeIpRulesInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "RevokeIpRulesInput"} if s.GroupId == nil { invalidParams.Add(request.NewErrParamRequired("GroupId")) } if s.UserRules == nil { invalidParams.Add(request.NewErrParamRequired("UserRules")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // SetGroupId sets the GroupId field's value. func (s *RevokeIpRulesInput) SetGroupId(v string) *RevokeIpRulesInput { s.GroupId = &v return s } // SetUserRules sets the UserRules field's value. func (s *RevokeIpRulesInput) SetUserRules(v []*string) *RevokeIpRulesInput { s.UserRules = v return s } type RevokeIpRulesOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s RevokeIpRulesOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s RevokeIpRulesOutput) GoString() string { return s.String() } // Information about the root volume for a WorkSpace bundle. type RootStorage struct { _ struct{} `type:"structure"` // The size of the root volume. Capacity *string `min:"1" type:"string"` } // String returns the string representation func (s RootStorage) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s RootStorage) GoString() string { return s.String() } // SetCapacity sets the Capacity field's value. func (s *RootStorage) SetCapacity(v string) *RootStorage { s.Capacity = &v return s } // Information used to start a WorkSpace. type StartRequest struct { _ struct{} `type:"structure"` // The ID of the WorkSpace. WorkspaceId *string `type:"string"` } // String returns the string representation func (s StartRequest) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s StartRequest) GoString() string { return s.String() } // SetWorkspaceId sets the WorkspaceId field's value. func (s *StartRequest) SetWorkspaceId(v string) *StartRequest { s.WorkspaceId = &v return s } type StartWorkspacesInput struct { _ struct{} `type:"structure"` // The WorkSpaces to start. You can specify up to 25 WorkSpaces. // // StartWorkspaceRequests is a required field StartWorkspaceRequests []*StartRequest `min:"1" type:"list" required:"true"` } // String returns the string representation func (s StartWorkspacesInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s StartWorkspacesInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *StartWorkspacesInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "StartWorkspacesInput"} if s.StartWorkspaceRequests == nil { invalidParams.Add(request.NewErrParamRequired("StartWorkspaceRequests")) } if s.StartWorkspaceRequests != nil && len(s.StartWorkspaceRequests) < 1 { invalidParams.Add(request.NewErrParamMinLen("StartWorkspaceRequests", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // SetStartWorkspaceRequests sets the StartWorkspaceRequests field's value. func (s *StartWorkspacesInput) SetStartWorkspaceRequests(v []*StartRequest) *StartWorkspacesInput { s.StartWorkspaceRequests = v return s } type StartWorkspacesOutput struct { _ struct{} `type:"structure"` // Information about the WorkSpaces that could not be started. FailedRequests []*FailedWorkspaceChangeRequest `type:"list"` } // String returns the string representation func (s StartWorkspacesOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s StartWorkspacesOutput) GoString() string { return s.String() } // SetFailedRequests sets the FailedRequests field's value. func (s *StartWorkspacesOutput) SetFailedRequests(v []*FailedWorkspaceChangeRequest) *StartWorkspacesOutput { s.FailedRequests = v return s } // Information used to stop a WorkSpace. type StopRequest struct { _ struct{} `type:"structure"` // The ID of the WorkSpace. WorkspaceId *string `type:"string"` } // String returns the string representation func (s StopRequest) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s StopRequest) GoString() string { return s.String() } // SetWorkspaceId sets the WorkspaceId field's value. func (s *StopRequest) SetWorkspaceId(v string) *StopRequest { s.WorkspaceId = &v return s } type StopWorkspacesInput struct { _ struct{} `type:"structure"` // The WorkSpaces to stop. You can specify up to 25 WorkSpaces. // // StopWorkspaceRequests is a required field StopWorkspaceRequests []*StopRequest `min:"1" type:"list" required:"true"` } // String returns the string representation func (s StopWorkspacesInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s StopWorkspacesInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *StopWorkspacesInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "StopWorkspacesInput"} if s.StopWorkspaceRequests == nil { invalidParams.Add(request.NewErrParamRequired("StopWorkspaceRequests")) } if s.StopWorkspaceRequests != nil && len(s.StopWorkspaceRequests) < 1 { invalidParams.Add(request.NewErrParamMinLen("StopWorkspaceRequests", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // SetStopWorkspaceRequests sets the StopWorkspaceRequests field's value. func (s *StopWorkspacesInput) SetStopWorkspaceRequests(v []*StopRequest) *StopWorkspacesInput { s.StopWorkspaceRequests = v return s } type StopWorkspacesOutput struct { _ struct{} `type:"structure"` // Information about the WorkSpaces that could not be stopped. FailedRequests []*FailedWorkspaceChangeRequest `type:"list"` } // String returns the string representation func (s StopWorkspacesOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s StopWorkspacesOutput) GoString() string { return s.String() } // SetFailedRequests sets the FailedRequests field's value. func (s *StopWorkspacesOutput) SetFailedRequests(v []*FailedWorkspaceChangeRequest) *StopWorkspacesOutput { s.FailedRequests = v return s } // Information about a tag. type Tag struct { _ struct{} `type:"structure"` // The key of the tag. // // Key is a required field Key *string `min:"1" type:"string" required:"true"` // The value of the tag. Value *string `type:"string"` } // String returns the string representation func (s Tag) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s Tag) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *Tag) Validate() error { invalidParams := request.ErrInvalidParams{Context: "Tag"} if s.Key == nil { invalidParams.Add(request.NewErrParamRequired("Key")) } if s.Key != nil && len(*s.Key) < 1 { invalidParams.Add(request.NewErrParamMinLen("Key", 1)) } if invalidParams.Len() > 0 { return invalidParams } return nil } // SetKey sets the Key field's value. func (s *Tag) SetKey(v string) *Tag { s.Key = &v return s } // SetValue sets the Value field's value. func (s *Tag) SetValue(v string) *Tag { s.Value = &v return s } // Information used to terminate a WorkSpace. type TerminateRequest struct { _ struct{} `type:"structure"` // The ID of the WorkSpace. // // WorkspaceId is a required field WorkspaceId *string `type:"string" required:"true"` } // String returns the string representation func (s TerminateRequest) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s TerminateRequest) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *TerminateRequest) Validate() error { invalidParams := request.ErrInvalidParams{Context: "TerminateRequest"} if s.WorkspaceId == nil { invalidParams.Add(request.NewErrParamRequired("WorkspaceId")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // SetWorkspaceId sets the WorkspaceId field's value. func (s *TerminateRequest) SetWorkspaceId(v string) *TerminateRequest { s.WorkspaceId = &v return s } type TerminateWorkspacesInput struct { _ struct{} `type:"structure"` // The WorkSpaces to terminate. You can specify up to 25 WorkSpaces. // // TerminateWorkspaceRequests is a required field TerminateWorkspaceRequests []*TerminateRequest `min:"1" type:"list" required:"true"` } // String returns the string representation func (s TerminateWorkspacesInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s TerminateWorkspacesInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *TerminateWorkspacesInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "TerminateWorkspacesInput"} if s.TerminateWorkspaceRequests == nil { invalidParams.Add(request.NewErrParamRequired("TerminateWorkspaceRequests")) } if s.TerminateWorkspaceRequests != nil && len(s.TerminateWorkspaceRequests) < 1 { invalidParams.Add(request.NewErrParamMinLen("TerminateWorkspaceRequests", 1)) } if s.TerminateWorkspaceRequests != nil { for i, v := range s.TerminateWorkspaceRequests { if v == nil { continue } if err := v.Validate(); err != nil { invalidParams.AddNested(fmt.Sprintf("%s[%v]", "TerminateWorkspaceRequests", i), err.(request.ErrInvalidParams)) } } } if invalidParams.Len() > 0 { return invalidParams } return nil } // SetTerminateWorkspaceRequests sets the TerminateWorkspaceRequests field's value. func (s *TerminateWorkspacesInput) SetTerminateWorkspaceRequests(v []*TerminateRequest) *TerminateWorkspacesInput { s.TerminateWorkspaceRequests = v return s } type TerminateWorkspacesOutput struct { _ struct{} `type:"structure"` // Information about the WorkSpaces that could not be terminated. FailedRequests []*FailedWorkspaceChangeRequest `type:"list"` } // String returns the string representation func (s TerminateWorkspacesOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s TerminateWorkspacesOutput) GoString() string { return s.String() } // SetFailedRequests sets the FailedRequests field's value. func (s *TerminateWorkspacesOutput) SetFailedRequests(v []*FailedWorkspaceChangeRequest) *TerminateWorkspacesOutput { s.FailedRequests = v return s } type UpdateRulesOfIpGroupInput struct { _ struct{} `type:"structure"` // The ID of the group. // // GroupId is a required field GroupId *string `type:"string" required:"true"` // One or more rules. // // UserRules is a required field UserRules []*IpRuleItem `type:"list" required:"true"` } // String returns the string representation func (s UpdateRulesOfIpGroupInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s UpdateRulesOfIpGroupInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *UpdateRulesOfIpGroupInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "UpdateRulesOfIpGroupInput"} if s.GroupId == nil { invalidParams.Add(request.NewErrParamRequired("GroupId")) } if s.UserRules == nil { invalidParams.Add(request.NewErrParamRequired("UserRules")) } if invalidParams.Len() > 0 { return invalidParams } return nil } // SetGroupId sets the GroupId field's value. func (s *UpdateRulesOfIpGroupInput) SetGroupId(v string) *UpdateRulesOfIpGroupInput { s.GroupId = &v return s } // SetUserRules sets the UserRules field's value. func (s *UpdateRulesOfIpGroupInput) SetUserRules(v []*IpRuleItem) *UpdateRulesOfIpGroupInput { s.UserRules = v return s } type UpdateRulesOfIpGroupOutput struct { _ struct{} `type:"structure"` } // String returns the string representation func (s UpdateRulesOfIpGroupOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s UpdateRulesOfIpGroupOutput) GoString() string { return s.String() } // Information about the user storage for a WorkSpace bundle. type UserStorage struct { _ struct{} `type:"structure"` // The size of the user storage. Capacity *string `min:"1" type:"string"` } // String returns the string representation func (s UserStorage) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s UserStorage) GoString() string { return s.String() } // SetCapacity sets the Capacity field's value. func (s *UserStorage) SetCapacity(v string) *UserStorage { s.Capacity = &v return s } // Information about a WorkSpace. type Workspace struct { _ struct{} `type:"structure"` // The identifier of the bundle used to create the WorkSpace. BundleId *string `type:"string"` // The name of the WorkSpace, as seen by the operating system. ComputerName *string `type:"string"` // The identifier of the AWS Directory Service directory for the WorkSpace. DirectoryId *string `type:"string"` // If the WorkSpace could not be created, contains the error code. ErrorCode *string `type:"string"` // If the WorkSpace could not be created, contains a textual error message that // describes the failure. ErrorMessage *string `type:"string"` // The IP address of the WorkSpace. IpAddress *string `type:"string"` // The modification states of the WorkSpace. ModificationStates []*ModificationState `type:"list"` // Indicates whether the data stored on the root volume is encrypted. RootVolumeEncryptionEnabled *bool `type:"boolean"` // The operational state of the WorkSpace. State *string `type:"string" enum:"WorkspaceState"` // The identifier of the subnet for the WorkSpace. SubnetId *string `type:"string"` // The user for the WorkSpace. UserName *string `min:"1" type:"string"` // Indicates whether the data stored on the user volume is encrypted. UserVolumeEncryptionEnabled *bool `type:"boolean"` // The KMS key used to encrypt data stored on your WorkSpace. VolumeEncryptionKey *string `type:"string"` // The identifier of the WorkSpace. WorkspaceId *string `type:"string"` // The properties of the WorkSpace. WorkspaceProperties *WorkspaceProperties `type:"structure"` } // String returns the string representation func (s Workspace) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s Workspace) GoString() string { return s.String() } // SetBundleId sets the BundleId field's value. func (s *Workspace) SetBundleId(v string) *Workspace { s.BundleId = &v return s } // SetComputerName sets the ComputerName field's value. func (s *Workspace) SetComputerName(v string) *Workspace { s.ComputerName = &v return s } // SetDirectoryId sets the DirectoryId field's value. func (s *Workspace) SetDirectoryId(v string) *Workspace { s.DirectoryId = &v return s } // SetErrorCode sets the ErrorCode field's value. func (s *Workspace) SetErrorCode(v string) *Workspace { s.ErrorCode = &v return s } // SetErrorMessage sets the ErrorMessage field's value. func (s *Workspace) SetErrorMessage(v string) *Workspace { s.ErrorMessage = &v return s } // SetIpAddress sets the IpAddress field's value. func (s *Workspace) SetIpAddress(v string) *Workspace { s.IpAddress = &v return s } // SetModificationStates sets the ModificationStates field's value. func (s *Workspace) SetModificationStates(v []*ModificationState) *Workspace { s.ModificationStates = v return s } // SetRootVolumeEncryptionEnabled sets the RootVolumeEncryptionEnabled field's value. func (s *Workspace) SetRootVolumeEncryptionEnabled(v bool) *Workspace { s.RootVolumeEncryptionEnabled = &v return s } // SetState sets the State field's value. func (s *Workspace) SetState(v string) *Workspace { s.State = &v return s } // SetSubnetId sets the SubnetId field's value. func (s *Workspace) SetSubnetId(v string) *Workspace { s.SubnetId = &v return s } // SetUserName sets the UserName field's value. func (s *Workspace) SetUserName(v string) *Workspace { s.UserName = &v return s } // SetUserVolumeEncryptionEnabled sets the UserVolumeEncryptionEnabled field's value. func (s *Workspace) SetUserVolumeEncryptionEnabled(v bool) *Workspace { s.UserVolumeEncryptionEnabled = &v return s } // SetVolumeEncryptionKey sets the VolumeEncryptionKey field's value. func (s *Workspace) SetVolumeEncryptionKey(v string) *Workspace { s.VolumeEncryptionKey = &v return s } // SetWorkspaceId sets the WorkspaceId field's value. func (s *Workspace) SetWorkspaceId(v string) *Workspace { s.WorkspaceId = &v return s } // SetWorkspaceProperties sets the WorkspaceProperties field's value. func (s *Workspace) SetWorkspaceProperties(v *WorkspaceProperties) *Workspace { s.WorkspaceProperties = v return s } // Information about a WorkSpace bundle. type WorkspaceBundle struct { _ struct{} `type:"structure"` // The bundle identifier. BundleId *string `type:"string"` // The compute type. For more information, see Amazon WorkSpaces Bundles (http://aws.amazon.com/workspaces/details/#Amazon_WorkSpaces_Bundles). ComputeType *ComputeType `type:"structure"` // A description. Description *string `type:"string"` // The name of the bundle. Name *string `min:"1" type:"string"` // The owner of the bundle. This is the account identifier of the owner, or // AMAZON if the bundle is provided by AWS. Owner *string `type:"string"` // The size of the root volume. RootStorage *RootStorage `type:"structure"` // The size of the user storage. UserStorage *UserStorage `type:"structure"` } // String returns the string representation func (s WorkspaceBundle) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s WorkspaceBundle) GoString() string { return s.String() } // SetBundleId sets the BundleId field's value. func (s *WorkspaceBundle) SetBundleId(v string) *WorkspaceBundle { s.BundleId = &v return s } // SetComputeType sets the ComputeType field's value. func (s *WorkspaceBundle) SetComputeType(v *ComputeType) *WorkspaceBundle { s.ComputeType = v return s } // SetDescription sets the Description field's value. func (s *WorkspaceBundle) SetDescription(v string) *WorkspaceBundle { s.Description = &v return s } // SetName sets the Name field's value. func (s *WorkspaceBundle) SetName(v string) *WorkspaceBundle { s.Name = &v return s } // SetOwner sets the Owner field's value. func (s *WorkspaceBundle) SetOwner(v string) *WorkspaceBundle { s.Owner = &v return s } // SetRootStorage sets the RootStorage field's value. func (s *WorkspaceBundle) SetRootStorage(v *RootStorage) *WorkspaceBundle { s.RootStorage = v return s } // SetUserStorage sets the UserStorage field's value. func (s *WorkspaceBundle) SetUserStorage(v *UserStorage) *WorkspaceBundle { s.UserStorage = v return s } // Describes the connection status of a WorkSpace. type WorkspaceConnectionStatus struct { _ struct{} `type:"structure"` // The connection state of the WorkSpace. The connection state is unknown if // the WorkSpace is stopped. ConnectionState *string `type:"string" enum:"ConnectionState"` // The timestamp of the connection state check. ConnectionStateCheckTimestamp *time.Time `type:"timestamp" timestampFormat:"unix"` // The timestamp of the last known user connection. LastKnownUserConnectionTimestamp *time.Time `type:"timestamp" timestampFormat:"unix"` // The ID of the WorkSpace. WorkspaceId *string `type:"string"` } // String returns the string representation func (s WorkspaceConnectionStatus) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s WorkspaceConnectionStatus) GoString() string { return s.String() } // SetConnectionState sets the ConnectionState field's value. func (s *WorkspaceConnectionStatus) SetConnectionState(v string) *WorkspaceConnectionStatus { s.ConnectionState = &v return s } // SetConnectionStateCheckTimestamp sets the ConnectionStateCheckTimestamp field's value. func (s *WorkspaceConnectionStatus) SetConnectionStateCheckTimestamp(v time.Time) *WorkspaceConnectionStatus { s.ConnectionStateCheckTimestamp = &v return s } // SetLastKnownUserConnectionTimestamp sets the LastKnownUserConnectionTimestamp field's value. func (s *WorkspaceConnectionStatus) SetLastKnownUserConnectionTimestamp(v time.Time) *WorkspaceConnectionStatus { s.LastKnownUserConnectionTimestamp = &v return s } // SetWorkspaceId sets the WorkspaceId field's value. func (s *WorkspaceConnectionStatus) SetWorkspaceId(v string) *WorkspaceConnectionStatus { s.WorkspaceId = &v return s } // Information about an AWS Directory Service directory for use with Amazon // WorkSpaces. type WorkspaceDirectory struct { _ struct{} `type:"structure"` // The directory alias. Alias *string `type:"string"` // The user name for the service account. CustomerUserName *string `min:"1" type:"string"` // The directory identifier. DirectoryId *string `type:"string"` // The name of the directory. DirectoryName *string `type:"string"` // The directory type. DirectoryType *string `type:"string" enum:"WorkspaceDirectoryType"` // The IP addresses of the DNS servers for the directory. DnsIpAddresses []*string `type:"list"` // The identifier of the IAM role. This is the role that allows Amazon WorkSpaces // to make calls to other services, such as Amazon EC2, on your behalf. IamRoleId *string `type:"string"` // The identifiers of the IP access control groups associated with the directory. IpGroupIds []*string `locationName:"ipGroupIds" type:"list"` // The registration code for the directory. This is the code that users enter // in their Amazon WorkSpaces client application to connect to the directory. RegistrationCode *string `min:"1" type:"string"` // The state of the directory's registration with Amazon WorkSpaces State *string `type:"string" enum:"WorkspaceDirectoryState"` // The identifiers of the subnets used with the directory. SubnetIds []*string `type:"list"` // The default creation properties for all WorkSpaces in the directory. WorkspaceCreationProperties *DefaultWorkspaceCreationProperties `type:"structure"` // The identifier of the security group that is assigned to new WorkSpaces. WorkspaceSecurityGroupId *string `type:"string"` } // String returns the string representation func (s WorkspaceDirectory) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s WorkspaceDirectory) GoString() string { return s.String() } // SetAlias sets the Alias field's value. func (s *WorkspaceDirectory) SetAlias(v string) *WorkspaceDirectory { s.Alias = &v return s } // SetCustomerUserName sets the CustomerUserName field's value. func (s *WorkspaceDirectory) SetCustomerUserName(v string) *WorkspaceDirectory { s.CustomerUserName = &v return s } // SetDirectoryId sets the DirectoryId field's value. func (s *WorkspaceDirectory) SetDirectoryId(v string) *WorkspaceDirectory { s.DirectoryId = &v return s } // SetDirectoryName sets the DirectoryName field's value. func (s *WorkspaceDirectory) SetDirectoryName(v string) *WorkspaceDirectory { s.DirectoryName = &v return s } // SetDirectoryType sets the DirectoryType field's value. func (s *WorkspaceDirectory) SetDirectoryType(v string) *WorkspaceDirectory { s.DirectoryType = &v return s } // SetDnsIpAddresses sets the DnsIpAddresses field's value. func (s *WorkspaceDirectory) SetDnsIpAddresses(v []*string) *WorkspaceDirectory { s.DnsIpAddresses = v return s } // SetIamRoleId sets the IamRoleId field's value. func (s *WorkspaceDirectory) SetIamRoleId(v string) *WorkspaceDirectory { s.IamRoleId = &v return s } // SetIpGroupIds sets the IpGroupIds field's value. func (s *WorkspaceDirectory) SetIpGroupIds(v []*string) *WorkspaceDirectory { s.IpGroupIds = v return s } // SetRegistrationCode sets the RegistrationCode field's value. func (s *WorkspaceDirectory) SetRegistrationCode(v string) *WorkspaceDirectory { s.RegistrationCode = &v return s } // SetState sets the State field's value. func (s *WorkspaceDirectory) SetState(v string) *WorkspaceDirectory { s.State = &v return s } // SetSubnetIds sets the SubnetIds field's value. func (s *WorkspaceDirectory) SetSubnetIds(v []*string) *WorkspaceDirectory { s.SubnetIds = v return s } // SetWorkspaceCreationProperties sets the WorkspaceCreationProperties field's value. func (s *WorkspaceDirectory) SetWorkspaceCreationProperties(v *DefaultWorkspaceCreationProperties) *WorkspaceDirectory { s.WorkspaceCreationProperties = v return s } // SetWorkspaceSecurityGroupId sets the WorkspaceSecurityGroupId field's value. func (s *WorkspaceDirectory) SetWorkspaceSecurityGroupId(v string) *WorkspaceDirectory { s.WorkspaceSecurityGroupId = &v return s } // Information about a WorkSpace. type WorkspaceProperties struct { _ struct{} `type:"structure"` // The compute type. For more information, see Amazon WorkSpaces Bundles (http://aws.amazon.com/workspaces/details/#Amazon_WorkSpaces_Bundles). ComputeTypeName *string `type:"string" enum:"Compute"` // The size of the root volume. RootVolumeSizeGib *int64 `type:"integer"` // The running mode. For more information, see Manage the WorkSpace Running // Mode (http://docs.aws.amazon.com/workspaces/latest/adminguide/running-mode.html). RunningMode *string `type:"string" enum:"RunningMode"` // The time after a user logs off when WorkSpaces are automatically stopped. // Configured in 60 minute intervals. RunningModeAutoStopTimeoutInMinutes *int64 `type:"integer"` // The size of the user storage. UserVolumeSizeGib *int64 `type:"integer"` } // String returns the string representation func (s WorkspaceProperties) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s WorkspaceProperties) GoString() string { return s.String() } // SetComputeTypeName sets the ComputeTypeName field's value. func (s *WorkspaceProperties) SetComputeTypeName(v string) *WorkspaceProperties { s.ComputeTypeName = &v return s } // SetRootVolumeSizeGib sets the RootVolumeSizeGib field's value. func (s *WorkspaceProperties) SetRootVolumeSizeGib(v int64) *WorkspaceProperties { s.RootVolumeSizeGib = &v return s } // SetRunningMode sets the RunningMode field's value. func (s *WorkspaceProperties) SetRunningMode(v string) *WorkspaceProperties { s.RunningMode = &v return s } // SetRunningModeAutoStopTimeoutInMinutes sets the RunningModeAutoStopTimeoutInMinutes field's value. func (s *WorkspaceProperties) SetRunningModeAutoStopTimeoutInMinutes(v int64) *WorkspaceProperties { s.RunningModeAutoStopTimeoutInMinutes = &v return s } // SetUserVolumeSizeGib sets the UserVolumeSizeGib field's value. func (s *WorkspaceProperties) SetUserVolumeSizeGib(v int64) *WorkspaceProperties { s.UserVolumeSizeGib = &v return s } // Information used to create a WorkSpace. type WorkspaceRequest struct { _ struct{} `type:"structure"` // The identifier of the bundle for the WorkSpace. You can use DescribeWorkspaceBundles // to list the available bundles. // // BundleId is a required field BundleId *string `type:"string" required:"true"` // The identifier of the AWS Directory Service directory for the WorkSpace. // You can use DescribeWorkspaceDirectories to list the available directories. // // DirectoryId is a required field DirectoryId *string `type:"string" required:"true"` // Indicates whether the data stored on the root volume is encrypted. RootVolumeEncryptionEnabled *bool `type:"boolean"` // The tags for the WorkSpace. Tags []*Tag `type:"list"` // The username of the user for the WorkSpace. This username must exist in the // AWS Directory Service directory for the WorkSpace. // // UserName is a required field UserName *string `min:"1" type:"string" required:"true"` // Indicates whether the data stored on the user volume is encrypted. UserVolumeEncryptionEnabled *bool `type:"boolean"` // The KMS key used to encrypt data stored on your WorkSpace. VolumeEncryptionKey *string `type:"string"` // The WorkSpace properties. WorkspaceProperties *WorkspaceProperties `type:"structure"` } // String returns the string representation func (s WorkspaceRequest) String() string { return awsutil.Prettify(s) } // GoString returns the string representation func (s WorkspaceRequest) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. func (s *WorkspaceRequest) Validate() error { invalidParams := request.ErrInvalidParams{Context: "WorkspaceRequest"} if s.BundleId == nil { invalidParams.Add(request.NewErrParamRequired("BundleId")) } if s.DirectoryId == nil { invalidParams.Add(request.NewErrParamRequired("DirectoryId")) } if s.UserName == nil { invalidParams.Add(request.NewErrParamRequired("UserName")) } if s.UserName != nil && len(*s.UserName) < 1 { invalidParams.Add(request.NewErrParamMinLen("UserName", 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 } // SetBundleId sets the BundleId field's value. func (s *WorkspaceRequest) SetBundleId(v string) *WorkspaceRequest { s.BundleId = &v return s } // SetDirectoryId sets the DirectoryId field's value. func (s *WorkspaceRequest) SetDirectoryId(v string) *WorkspaceRequest { s.DirectoryId = &v return s } // SetRootVolumeEncryptionEnabled sets the RootVolumeEncryptionEnabled field's value. func (s *WorkspaceRequest) SetRootVolumeEncryptionEnabled(v bool) *WorkspaceRequest { s.RootVolumeEncryptionEnabled = &v return s } // SetTags sets the Tags field's value. func (s *WorkspaceRequest) SetTags(v []*Tag) *WorkspaceRequest { s.Tags = v return s } // SetUserName sets the UserName field's value. func (s *WorkspaceRequest) SetUserName(v string) *WorkspaceRequest { s.UserName = &v return s } // SetUserVolumeEncryptionEnabled sets the UserVolumeEncryptionEnabled field's value. func (s *WorkspaceRequest) SetUserVolumeEncryptionEnabled(v bool) *WorkspaceRequest { s.UserVolumeEncryptionEnabled = &v return s } // SetVolumeEncryptionKey sets the VolumeEncryptionKey field's value. func (s *WorkspaceRequest) SetVolumeEncryptionKey(v string) *WorkspaceRequest { s.VolumeEncryptionKey = &v return s } // SetWorkspaceProperties sets the WorkspaceProperties field's value. func (s *WorkspaceRequest) SetWorkspaceProperties(v *WorkspaceProperties) *WorkspaceRequest { s.WorkspaceProperties = v return s } const ( // ComputeValue is a Compute enum value ComputeValue = "VALUE" // ComputeStandard is a Compute enum value ComputeStandard = "STANDARD" // ComputePerformance is a Compute enum value ComputePerformance = "PERFORMANCE" // ComputePower is a Compute enum value ComputePower = "POWER" // ComputeGraphics is a Compute enum value ComputeGraphics = "GRAPHICS" ) const ( // ConnectionStateConnected is a ConnectionState enum value ConnectionStateConnected = "CONNECTED" // ConnectionStateDisconnected is a ConnectionState enum value ConnectionStateDisconnected = "DISCONNECTED" // ConnectionStateUnknown is a ConnectionState enum value ConnectionStateUnknown = "UNKNOWN" ) const ( // ModificationResourceEnumRootVolume is a ModificationResourceEnum enum value ModificationResourceEnumRootVolume = "ROOT_VOLUME" // ModificationResourceEnumUserVolume is a ModificationResourceEnum enum value ModificationResourceEnumUserVolume = "USER_VOLUME" // ModificationResourceEnumComputeType is a ModificationResourceEnum enum value ModificationResourceEnumComputeType = "COMPUTE_TYPE" ) const ( // ModificationStateEnumUpdateInitiated is a ModificationStateEnum enum value ModificationStateEnumUpdateInitiated = "UPDATE_INITIATED" // ModificationStateEnumUpdateInProgress is a ModificationStateEnum enum value ModificationStateEnumUpdateInProgress = "UPDATE_IN_PROGRESS" ) const ( // RunningModeAutoStop is a RunningMode enum value RunningModeAutoStop = "AUTO_STOP" // RunningModeAlwaysOn is a RunningMode enum value RunningModeAlwaysOn = "ALWAYS_ON" ) const ( // TargetWorkspaceStateAvailable is a TargetWorkspaceState enum value TargetWorkspaceStateAvailable = "AVAILABLE" // TargetWorkspaceStateAdminMaintenance is a TargetWorkspaceState enum value TargetWorkspaceStateAdminMaintenance = "ADMIN_MAINTENANCE" ) const ( // WorkspaceDirectoryStateRegistering is a WorkspaceDirectoryState enum value WorkspaceDirectoryStateRegistering = "REGISTERING" // WorkspaceDirectoryStateRegistered is a WorkspaceDirectoryState enum value WorkspaceDirectoryStateRegistered = "REGISTERED" // WorkspaceDirectoryStateDeregistering is a WorkspaceDirectoryState enum value WorkspaceDirectoryStateDeregistering = "DEREGISTERING" // WorkspaceDirectoryStateDeregistered is a WorkspaceDirectoryState enum value WorkspaceDirectoryStateDeregistered = "DEREGISTERED" // WorkspaceDirectoryStateError is a WorkspaceDirectoryState enum value WorkspaceDirectoryStateError = "ERROR" ) const ( // WorkspaceDirectoryTypeSimpleAd is a WorkspaceDirectoryType enum value WorkspaceDirectoryTypeSimpleAd = "SIMPLE_AD" // WorkspaceDirectoryTypeAdConnector is a WorkspaceDirectoryType enum value WorkspaceDirectoryTypeAdConnector = "AD_CONNECTOR" ) const ( // WorkspaceStatePending is a WorkspaceState enum value WorkspaceStatePending = "PENDING" // WorkspaceStateAvailable is a WorkspaceState enum value WorkspaceStateAvailable = "AVAILABLE" // WorkspaceStateImpaired is a WorkspaceState enum value WorkspaceStateImpaired = "IMPAIRED" // WorkspaceStateUnhealthy is a WorkspaceState enum value WorkspaceStateUnhealthy = "UNHEALTHY" // WorkspaceStateRebooting is a WorkspaceState enum value WorkspaceStateRebooting = "REBOOTING" // WorkspaceStateStarting is a WorkspaceState enum value WorkspaceStateStarting = "STARTING" // WorkspaceStateRebuilding is a WorkspaceState enum value WorkspaceStateRebuilding = "REBUILDING" // WorkspaceStateMaintenance is a WorkspaceState enum value WorkspaceStateMaintenance = "MAINTENANCE" // WorkspaceStateAdminMaintenance is a WorkspaceState enum value WorkspaceStateAdminMaintenance = "ADMIN_MAINTENANCE" // WorkspaceStateTerminating is a WorkspaceState enum value WorkspaceStateTerminating = "TERMINATING" // WorkspaceStateTerminated is a WorkspaceState enum value WorkspaceStateTerminated = "TERMINATED" // WorkspaceStateSuspended is a WorkspaceState enum value WorkspaceStateSuspended = "SUSPENDED" // WorkspaceStateUpdating is a WorkspaceState enum value WorkspaceStateUpdating = "UPDATING" // WorkspaceStateStopping is a WorkspaceState enum value WorkspaceStateStopping = "STOPPING" // WorkspaceStateStopped is a WorkspaceState enum value WorkspaceStateStopped = "STOPPED" // WorkspaceStateError is a WorkspaceState enum value WorkspaceStateError = "ERROR" )