workspaces

package
v0.6.0 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Jun 3, 2015 License: Apache-2.0 Imports: 3 Imported by: 0

Documentation

Overview

Package workspaces provides a client for Amazon WorkSpaces.

Index

Examples

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type ComputeType

type ComputeType struct {
	// The name of the compute type for the bundle.
	Name *string `type:"string"`
	// contains filtered or unexported fields
}

Contains information about the compute type of a WorkSpace bundle.

type CreateWorkspacesInput

type CreateWorkspacesInput struct {
	// An array of structures that specify the WorkSpaces to create.
	Workspaces []*WorkspaceRequest `type:"list" required:"true"`
	// contains filtered or unexported fields
}

Contains the inputs for the CreateWorkspaces operation.

type CreateWorkspacesOutput

type CreateWorkspacesOutput struct {
	// An array of structures that represent the WorkSpaces that could not be created.
	FailedRequests []*FailedCreateWorkspaceRequest `type:"list"`

	// An array of structures that represent the WorkSpaces that were created.
	//
	// Because this operation is asynchronous, the identifier in WorkspaceId is
	// not immediately available. If you immediately call DescribeWorkspaces with
	// this identifier, no information will be returned.
	PendingRequests []*Workspace `type:"list"`
	// contains filtered or unexported fields
}

Contains the result of the CreateWorkspaces operation.

type DefaultWorkspaceCreationProperties

type DefaultWorkspaceCreationProperties struct {
	// The identifier of any custom security groups that are applied to the WorkSpaces
	// when they are created.
	CustomSecurityGroupID *string `locationName:"CustomSecurityGroupId" type:"string"`

	// The organizational unit (OU) in the directory that the WorkSpace machine
	// accounts are placed in.
	DefaultOU *string `locationName:"DefaultOu" type:"string"`

	// A public IP address will be attached to all WorkSpaces that are created or
	// rebuilt.
	EnableInternetAccess *bool `type:"boolean"`

	// Specifies if the directory is enabled for Amazon WorkDocs.
	EnableWorkDocs *bool `type:"boolean"`

	// The WorkSpace user is an administrator on the WorkSpace.
	UserEnabledAsLocalAdministrator *bool `type:"boolean"`
	// contains filtered or unexported fields
}

Contains default WorkSpace creation information.

type DescribeWorkspaceBundlesInput

type DescribeWorkspaceBundlesInput struct {
	// An array of strings that contains the identifiers of the bundles to retrieve.
	// This parameter cannot be combined with any other filter parameter.
	BundleIDs []*string `locationName:"BundleIds" type:"list"`

	// The NextToken value from a previous call to this operation. Pass null if
	// this is the first call.
	NextToken *string `type:"string"`

	// The owner of the bundles to retrieve. This parameter cannot be combined with
	// any other filter parameter.
	//
	// This contains one of the following values:
	//
	//  null - Retrieves the bundles that belong to the account making the call.
	//  AMAZON - Retrieves the bundles that are provided by AWS.
	Owner *string `type:"string"`
	// contains filtered or unexported fields
}

Contains the inputs for the DescribeWorkspaceBundles operation.

type DescribeWorkspaceBundlesOutput

type DescribeWorkspaceBundlesOutput struct {
	// An array of structures that contain information about the bundles.
	Bundles []*WorkspaceBundle `type:"list"`

	// If not null, more results are available. Pass this value for the NextToken
	// parameter in a subsequent call to this operation to retrieve the next set
	// of items. This token is valid for one day and must be used within that timeframe.
	NextToken *string `type:"string"`
	// contains filtered or unexported fields
}

Contains the results of the DescribeWorkspaceBundles operation.

type DescribeWorkspaceDirectoriesInput

type DescribeWorkspaceDirectoriesInput struct {
	// An array of strings that contains the directory identifiers to retrieve information
	// for. If this member is null, all directories are retrieved.
	DirectoryIDs []*string `locationName:"DirectoryIds" type:"list"`

	// The NextToken value from a previous call to this operation. Pass null if
	// this is the first call.
	NextToken *string `type:"string"`
	// contains filtered or unexported fields
}

Contains the inputs for the DescribeWorkspaceDirectories operation.

type DescribeWorkspaceDirectoriesOutput

type DescribeWorkspaceDirectoriesOutput struct {
	// An array of structures that contain information about the directories.
	Directories []*WorkspaceDirectory `type:"list"`

	// If not null, more results are available. Pass this value for the NextToken
	// parameter in a subsequent call to this operation to retrieve the next set
	// of items. This token is valid for one day and must be used within that timeframe.
	NextToken *string `type:"string"`
	// contains filtered or unexported fields
}

Contains the results of the DescribeWorkspaceDirectories operation.

type DescribeWorkspacesInput

type DescribeWorkspacesInput struct {
	// The identifier of a bundle to obtain the WorkSpaces for. All WorkSpaces that
	// are created from this bundle will be retrieved. This parameter cannot be
	// combined with any other filter parameter.
	BundleID *string `locationName:"BundleId" type:"string"`

	// Specifies the directory identifier to which to limit the WorkSpaces. Optionally,
	// you can specify a specific directory user with the UserName parameter. This
	// parameter cannot be combined with any other filter parameter.
	DirectoryID *string `locationName:"DirectoryId" type:"string"`

	// The maximum number of items to return.
	Limit *int64 `type:"integer"`

	// The NextToken value from a previous call to this operation. Pass null if
	// this is the first call.
	NextToken *string `type:"string"`

	// Used with the DirectoryId parameter to specify the directory user for which
	// to obtain the WorkSpace.
	UserName *string `type:"string"`

	// An array of strings that contain the identifiers of the WorkSpaces for which
	// to retrieve information. This parameter cannot be combined with any other
	// filter parameter.
	//
	// Because the CreateWorkspaces operation is asynchronous, the identifier returned
	// by CreateWorkspaces is not immediately available. If you immediately call
	// DescribeWorkspaces with this identifier, no information will be returned.
	WorkspaceIDs []*string `locationName:"WorkspaceIds" type:"list"`
	// contains filtered or unexported fields
}

Contains the inputs for the DescribeWorkspaces operation.

type DescribeWorkspacesOutput

type DescribeWorkspacesOutput struct {
	// If not null, more results are available. Pass this value for the NextToken
	// parameter in a subsequent call to this operation to retrieve the next set
	// of items. This token is valid for one day and must be used within that timeframe.
	NextToken *string `type:"string"`

	// An array of structures that contain the information about the WorkSpaces.
	//
	// Because the CreateWorkspaces operation is asynchronous, some of this information
	// may be incomplete for a newly-created WorkSpace.
	Workspaces []*Workspace `type:"list"`
	// contains filtered or unexported fields
}

Contains the results for the DescribeWorkspaces operation.

type FailedCreateWorkspaceRequest

type FailedCreateWorkspaceRequest struct {
	// The error code.
	ErrorCode *string `type:"string"`

	// The textual error message.
	ErrorMessage *string `type:"string"`

	// A WorkspaceRequest object that contains the information about the WorkSpace
	// that could not be created.
	WorkspaceRequest *WorkspaceRequest `type:"structure"`
	// contains filtered or unexported fields
}

Contains information about a WorkSpace that could not be created.

type FailedWorkspaceChangeRequest

type FailedWorkspaceChangeRequest struct {
	// The error code.
	ErrorCode *string `type:"string"`

	// The textual error message.
	ErrorMessage *string `type:"string"`

	// The identifier of the WorkSpace.
	WorkspaceID *string `locationName:"WorkspaceId" type:"string"`
	// contains filtered or unexported fields
}

Contains information about a WorkSpace that could not be rebooted (RebootWorkspaces), rebuilt (RebuildWorkspaces), or terminated (TerminateWorkspaces).

type RebootRequest

type RebootRequest struct {
	// The identifier of the WorkSpace to reboot.
	WorkspaceID *string `locationName:"WorkspaceId" type:"string" required:"true"`
	// contains filtered or unexported fields
}

Contains information used with the RebootWorkspaces operation to reboot a WorkSpace.

type RebootWorkspacesInput

type RebootWorkspacesInput struct {
	// An array of structures that specify the WorkSpaces to reboot.
	RebootWorkspaceRequests []*RebootRequest `type:"list" required:"true"`
	// contains filtered or unexported fields
}

Contains the inputs for the RebootWorkspaces operation.

type RebootWorkspacesOutput

type RebootWorkspacesOutput struct {
	// An array of structures that represent any WorkSpaces that could not be rebooted.
	FailedRequests []*FailedWorkspaceChangeRequest `type:"list"`
	// contains filtered or unexported fields
}

Contains the results of the RebootWorkspaces operation.

type RebuildRequest

type RebuildRequest struct {
	// The identifier of the WorkSpace to rebuild.
	WorkspaceID *string `locationName:"WorkspaceId" type:"string" required:"true"`
	// contains filtered or unexported fields
}

Contains information used with the RebuildWorkspaces operation to rebuild a WorkSpace.

type RebuildWorkspacesInput

type RebuildWorkspacesInput struct {
	// An array of structures that specify the WorkSpaces to rebuild.
	RebuildWorkspaceRequests []*RebuildRequest `type:"list" required:"true"`
	// contains filtered or unexported fields
}

Contains the inputs for the RebuildWorkspaces operation.

type RebuildWorkspacesOutput

type RebuildWorkspacesOutput struct {
	// An array of structures that represent any WorkSpaces that could not be rebuilt.
	FailedRequests []*FailedWorkspaceChangeRequest `type:"list"`
	// contains filtered or unexported fields
}

Contains the results of the RebuildWorkspaces operation.

type TerminateRequest

type TerminateRequest struct {
	// The identifier of the WorkSpace to terminate.
	WorkspaceID *string `locationName:"WorkspaceId" type:"string" required:"true"`
	// contains filtered or unexported fields
}

Contains information used with the TerminateWorkspaces operation to terminate a WorkSpace.

type TerminateWorkspacesInput

type TerminateWorkspacesInput struct {
	// An array of structures that specify the WorkSpaces to terminate.
	TerminateWorkspaceRequests []*TerminateRequest `type:"list" required:"true"`
	// contains filtered or unexported fields
}

Contains the inputs for the TerminateWorkspaces operation.

type TerminateWorkspacesOutput

type TerminateWorkspacesOutput struct {
	// An array of structures that represent any WorkSpaces that could not be terminated.
	FailedRequests []*FailedWorkspaceChangeRequest `type:"list"`
	// contains filtered or unexported fields
}

Contains the results of the TerminateWorkspaces operation.

type UserStorage

type UserStorage struct {
	// The amount of user storage for the bundle.
	Capacity *string `type:"string"`
	// contains filtered or unexported fields
}

Contains information about the user storage for a WorkSpace bundle.

type WorkSpaces

type WorkSpaces struct {
	*aws.Service
}

WorkSpaces is a client for Amazon WorkSpaces.

func New

func New(config *aws.Config) *WorkSpaces

New returns a new WorkSpaces client.

func (*WorkSpaces) CreateWorkspaces

func (c *WorkSpaces) CreateWorkspaces(input *CreateWorkspacesInput) (*CreateWorkspacesOutput, error)

Creates one or more WorkSpaces.

This operation is asynchronous and returns before the WorkSpaces are created.
Example
package main

import (
	"fmt"

	"github.com/aws/aws-sdk-go/aws"
	"github.com/aws/aws-sdk-go/aws/awserr"
	"github.com/aws/aws-sdk-go/aws/awsutil"
	"github.com/aws/aws-sdk-go/service/workspaces"
)

func main() {
	svc := workspaces.New(nil)

	params := &workspaces.CreateWorkspacesInput{
		Workspaces: []*workspaces.WorkspaceRequest{ // Required
			&workspaces.WorkspaceRequest{ // Required
				BundleID:    aws.String("BundleId"),    // Required
				DirectoryID: aws.String("DirectoryId"), // Required
				UserName:    aws.String("UserName"),    // Required
			},
			// More values...
		},
	}
	resp, err := svc.CreateWorkspaces(params)

	if err != nil {
		if awsErr, ok := err.(awserr.Error); ok {
			// Generic AWS Error with Code, Message, and original error (if any)
			fmt.Println(awsErr.Code(), awsErr.Message(), awsErr.OrigErr())
			if reqErr, ok := err.(awserr.RequestFailure); ok {
				// A service error occurred
				fmt.Println(reqErr.Code(), reqErr.Message(), reqErr.StatusCode(), reqErr.RequestID())
			}
		} else {
			// This case should never be hit, The SDK should alwsy return an
			// error which satisfies the awserr.Error interface.
			fmt.Println(err.Error())
		}
	}

	// Pretty-print the response data.
	fmt.Println(awsutil.StringValue(resp))
}
Output:

func (*WorkSpaces) CreateWorkspacesRequest

func (c *WorkSpaces) CreateWorkspacesRequest(input *CreateWorkspacesInput) (req *aws.Request, output *CreateWorkspacesOutput)

CreateWorkspacesRequest generates a request for the CreateWorkspaces operation.

func (*WorkSpaces) DescribeWorkspaceBundles

func (c *WorkSpaces) DescribeWorkspaceBundles(input *DescribeWorkspaceBundlesInput) (*DescribeWorkspaceBundlesOutput, error)

Obtains information about the WorkSpace bundles that are available to your account in the specified region.

You can filter the results with either the BundleIds parameter, or the Owner parameter, but not both.

This operation supports pagination with the use of the NextToken request and response parameters. If more results are available, the NextToken response member contains a token that you pass in the next call to this operation to retrieve the next set of items.

Example
package main

import (
	"fmt"

	"github.com/aws/aws-sdk-go/aws"
	"github.com/aws/aws-sdk-go/aws/awserr"
	"github.com/aws/aws-sdk-go/aws/awsutil"
	"github.com/aws/aws-sdk-go/service/workspaces"
)

func main() {
	svc := workspaces.New(nil)

	params := &workspaces.DescribeWorkspaceBundlesInput{
		BundleIDs: []*string{
			aws.String("BundleId"), // Required
			// More values...
		},
		NextToken: aws.String("PaginationToken"),
		Owner:     aws.String("BundleOwner"),
	}
	resp, err := svc.DescribeWorkspaceBundles(params)

	if err != nil {
		if awsErr, ok := err.(awserr.Error); ok {
			// Generic AWS Error with Code, Message, and original error (if any)
			fmt.Println(awsErr.Code(), awsErr.Message(), awsErr.OrigErr())
			if reqErr, ok := err.(awserr.RequestFailure); ok {
				// A service error occurred
				fmt.Println(reqErr.Code(), reqErr.Message(), reqErr.StatusCode(), reqErr.RequestID())
			}
		} else {
			// This case should never be hit, The SDK should alwsy return an
			// error which satisfies the awserr.Error interface.
			fmt.Println(err.Error())
		}
	}

	// Pretty-print the response data.
	fmt.Println(awsutil.StringValue(resp))
}
Output:

func (*WorkSpaces) DescribeWorkspaceBundlesRequest

func (c *WorkSpaces) DescribeWorkspaceBundlesRequest(input *DescribeWorkspaceBundlesInput) (req *aws.Request, output *DescribeWorkspaceBundlesOutput)

DescribeWorkspaceBundlesRequest generates a request for the DescribeWorkspaceBundles operation.

func (*WorkSpaces) DescribeWorkspaceDirectories

func (c *WorkSpaces) DescribeWorkspaceDirectories(input *DescribeWorkspaceDirectoriesInput) (*DescribeWorkspaceDirectoriesOutput, error)

Retrieves information about the AWS Directory Service directories in the region that are registered with Amazon WorkSpaces and are available to your account.

This operation supports pagination with the use of the NextToken request and response parameters. If more results are available, the NextToken response member contains a token that you pass in the next call to this operation to retrieve the next set of items.

Example
package main

import (
	"fmt"

	"github.com/aws/aws-sdk-go/aws"
	"github.com/aws/aws-sdk-go/aws/awserr"
	"github.com/aws/aws-sdk-go/aws/awsutil"
	"github.com/aws/aws-sdk-go/service/workspaces"
)

func main() {
	svc := workspaces.New(nil)

	params := &workspaces.DescribeWorkspaceDirectoriesInput{
		DirectoryIDs: []*string{
			aws.String("DirectoryId"), // Required
			// More values...
		},
		NextToken: aws.String("PaginationToken"),
	}
	resp, err := svc.DescribeWorkspaceDirectories(params)

	if err != nil {
		if awsErr, ok := err.(awserr.Error); ok {
			// Generic AWS Error with Code, Message, and original error (if any)
			fmt.Println(awsErr.Code(), awsErr.Message(), awsErr.OrigErr())
			if reqErr, ok := err.(awserr.RequestFailure); ok {
				// A service error occurred
				fmt.Println(reqErr.Code(), reqErr.Message(), reqErr.StatusCode(), reqErr.RequestID())
			}
		} else {
			// This case should never be hit, The SDK should alwsy return an
			// error which satisfies the awserr.Error interface.
			fmt.Println(err.Error())
		}
	}

	// Pretty-print the response data.
	fmt.Println(awsutil.StringValue(resp))
}
Output:

func (*WorkSpaces) DescribeWorkspaceDirectoriesRequest

func (c *WorkSpaces) DescribeWorkspaceDirectoriesRequest(input *DescribeWorkspaceDirectoriesInput) (req *aws.Request, output *DescribeWorkspaceDirectoriesOutput)

DescribeWorkspaceDirectoriesRequest generates a request for the DescribeWorkspaceDirectories operation.

func (*WorkSpaces) DescribeWorkspaces

func (c *WorkSpaces) DescribeWorkspaces(input *DescribeWorkspacesInput) (*DescribeWorkspacesOutput, error)

Obtains information about the specified WorkSpaces.

Only one of the filter parameters, such as BundleId, DirectoryId, or WorkspaceIds, can be specified at a time.

This operation supports pagination with the use of the NextToken request and response parameters. If more results are available, the NextToken response member contains a token that you pass in the next call to this operation to retrieve the next set of items.

Example
package main

import (
	"fmt"

	"github.com/aws/aws-sdk-go/aws"
	"github.com/aws/aws-sdk-go/aws/awserr"
	"github.com/aws/aws-sdk-go/aws/awsutil"
	"github.com/aws/aws-sdk-go/service/workspaces"
)

func main() {
	svc := workspaces.New(nil)

	params := &workspaces.DescribeWorkspacesInput{
		BundleID:    aws.String("BundleId"),
		DirectoryID: aws.String("DirectoryId"),
		Limit:       aws.Long(1),
		NextToken:   aws.String("PaginationToken"),
		UserName:    aws.String("UserName"),
		WorkspaceIDs: []*string{
			aws.String("WorkspaceId"), // Required
			// More values...
		},
	}
	resp, err := svc.DescribeWorkspaces(params)

	if err != nil {
		if awsErr, ok := err.(awserr.Error); ok {
			// Generic AWS Error with Code, Message, and original error (if any)
			fmt.Println(awsErr.Code(), awsErr.Message(), awsErr.OrigErr())
			if reqErr, ok := err.(awserr.RequestFailure); ok {
				// A service error occurred
				fmt.Println(reqErr.Code(), reqErr.Message(), reqErr.StatusCode(), reqErr.RequestID())
			}
		} else {
			// This case should never be hit, The SDK should alwsy return an
			// error which satisfies the awserr.Error interface.
			fmt.Println(err.Error())
		}
	}

	// Pretty-print the response data.
	fmt.Println(awsutil.StringValue(resp))
}
Output:

func (*WorkSpaces) DescribeWorkspacesRequest

func (c *WorkSpaces) DescribeWorkspacesRequest(input *DescribeWorkspacesInput) (req *aws.Request, output *DescribeWorkspacesOutput)

DescribeWorkspacesRequest generates a request for the DescribeWorkspaces operation.

func (*WorkSpaces) RebootWorkspaces

func (c *WorkSpaces) RebootWorkspaces(input *RebootWorkspacesInput) (*RebootWorkspacesOutput, error)

Reboots the specified WorkSpaces.

To be able to reboot a WorkSpace, the WorkSpace must have a State of AVAILABLE, IMPAIRED, or INOPERABLE.

This operation is asynchronous and will return before the WorkSpaces have

rebooted.

Example
package main

import (
	"fmt"

	"github.com/aws/aws-sdk-go/aws"
	"github.com/aws/aws-sdk-go/aws/awserr"
	"github.com/aws/aws-sdk-go/aws/awsutil"
	"github.com/aws/aws-sdk-go/service/workspaces"
)

func main() {
	svc := workspaces.New(nil)

	params := &workspaces.RebootWorkspacesInput{
		RebootWorkspaceRequests: []*workspaces.RebootRequest{ // Required
			&workspaces.RebootRequest{ // Required
				WorkspaceID: aws.String("WorkspaceId"), // Required
			},
			// More values...
		},
	}
	resp, err := svc.RebootWorkspaces(params)

	if err != nil {
		if awsErr, ok := err.(awserr.Error); ok {
			// Generic AWS Error with Code, Message, and original error (if any)
			fmt.Println(awsErr.Code(), awsErr.Message(), awsErr.OrigErr())
			if reqErr, ok := err.(awserr.RequestFailure); ok {
				// A service error occurred
				fmt.Println(reqErr.Code(), reqErr.Message(), reqErr.StatusCode(), reqErr.RequestID())
			}
		} else {
			// This case should never be hit, The SDK should alwsy return an
			// error which satisfies the awserr.Error interface.
			fmt.Println(err.Error())
		}
	}

	// Pretty-print the response data.
	fmt.Println(awsutil.StringValue(resp))
}
Output:

func (*WorkSpaces) RebootWorkspacesRequest

func (c *WorkSpaces) RebootWorkspacesRequest(input *RebootWorkspacesInput) (req *aws.Request, output *RebootWorkspacesOutput)

RebootWorkspacesRequest generates a request for the RebootWorkspaces operation.

func (*WorkSpaces) RebuildWorkspaces

func (c *WorkSpaces) RebuildWorkspaces(input *RebuildWorkspacesInput) (*RebuildWorkspacesOutput, error)

Rebuilds the specified WorkSpaces.

Rebuilding a WorkSpace is a potentially destructive action that can result in the loss of data. Rebuilding a WorkSpace causes the following to occur:

The system is restored to the image of the bundle that the WorkSpace is

created from. Any applications that have been installed, or system settings that have been made since the WorkSpace was created will be lost. The data drive (D drive) is re-created from the last automatic snapshot taken of the data drive. The current contents of the data drive are overwritten. Automatic snapshots of the data drive are taken every 12 hours, so the snapshot can be as much as 12 hours old. To be able to rebuild a WorkSpace, the WorkSpace must have a State of AVAILABLE or ERROR.

This operation is asynchronous and will return before the WorkSpaces have

been completely rebuilt.

Example
package main

import (
	"fmt"

	"github.com/aws/aws-sdk-go/aws"
	"github.com/aws/aws-sdk-go/aws/awserr"
	"github.com/aws/aws-sdk-go/aws/awsutil"
	"github.com/aws/aws-sdk-go/service/workspaces"
)

func main() {
	svc := workspaces.New(nil)

	params := &workspaces.RebuildWorkspacesInput{
		RebuildWorkspaceRequests: []*workspaces.RebuildRequest{ // Required
			&workspaces.RebuildRequest{ // Required
				WorkspaceID: aws.String("WorkspaceId"), // Required
			},
			// More values...
		},
	}
	resp, err := svc.RebuildWorkspaces(params)

	if err != nil {
		if awsErr, ok := err.(awserr.Error); ok {
			// Generic AWS Error with Code, Message, and original error (if any)
			fmt.Println(awsErr.Code(), awsErr.Message(), awsErr.OrigErr())
			if reqErr, ok := err.(awserr.RequestFailure); ok {
				// A service error occurred
				fmt.Println(reqErr.Code(), reqErr.Message(), reqErr.StatusCode(), reqErr.RequestID())
			}
		} else {
			// This case should never be hit, The SDK should alwsy return an
			// error which satisfies the awserr.Error interface.
			fmt.Println(err.Error())
		}
	}

	// Pretty-print the response data.
	fmt.Println(awsutil.StringValue(resp))
}
Output:

func (*WorkSpaces) RebuildWorkspacesRequest

func (c *WorkSpaces) RebuildWorkspacesRequest(input *RebuildWorkspacesInput) (req *aws.Request, output *RebuildWorkspacesOutput)

RebuildWorkspacesRequest generates a request for the RebuildWorkspaces operation.

func (*WorkSpaces) TerminateWorkspaces

func (c *WorkSpaces) TerminateWorkspaces(input *TerminateWorkspacesInput) (*TerminateWorkspacesOutput, error)

Terminates the specified WorkSpaces.

Terminating a WorkSpace is a permanent action and cannot be undone. The user's data is not maintained and will be 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 will return before the WorkSpaces have

been completely terminated.

Example
package main

import (
	"fmt"

	"github.com/aws/aws-sdk-go/aws"
	"github.com/aws/aws-sdk-go/aws/awserr"
	"github.com/aws/aws-sdk-go/aws/awsutil"
	"github.com/aws/aws-sdk-go/service/workspaces"
)

func main() {
	svc := workspaces.New(nil)

	params := &workspaces.TerminateWorkspacesInput{
		TerminateWorkspaceRequests: []*workspaces.TerminateRequest{ // Required
			&workspaces.TerminateRequest{ // Required
				WorkspaceID: aws.String("WorkspaceId"), // Required
			},
			// More values...
		},
	}
	resp, err := svc.TerminateWorkspaces(params)

	if err != nil {
		if awsErr, ok := err.(awserr.Error); ok {
			// Generic AWS Error with Code, Message, and original error (if any)
			fmt.Println(awsErr.Code(), awsErr.Message(), awsErr.OrigErr())
			if reqErr, ok := err.(awserr.RequestFailure); ok {
				// A service error occurred
				fmt.Println(reqErr.Code(), reqErr.Message(), reqErr.StatusCode(), reqErr.RequestID())
			}
		} else {
			// This case should never be hit, The SDK should alwsy return an
			// error which satisfies the awserr.Error interface.
			fmt.Println(err.Error())
		}
	}

	// Pretty-print the response data.
	fmt.Println(awsutil.StringValue(resp))
}
Output:

func (*WorkSpaces) TerminateWorkspacesRequest

func (c *WorkSpaces) TerminateWorkspacesRequest(input *TerminateWorkspacesInput) (req *aws.Request, output *TerminateWorkspacesOutput)

TerminateWorkspacesRequest generates a request for the TerminateWorkspaces operation.

type Workspace

type Workspace struct {
	// The identifier of the bundle that the WorkSpace was created from.
	BundleID *string `locationName:"BundleId" type:"string"`

	// The identifier of the AWS Directory Service directory that the WorkSpace
	// belongs to.
	DirectoryID *string `locationName:"DirectoryId" type:"string"`

	// If the WorkSpace could not be created, this contains the error code.
	ErrorCode *string `type:"string"`

	// If the WorkSpace could not be created, this contains a textual error message
	// that describes the failure.
	ErrorMessage *string `type:"string"`

	// The IP address of the WorkSpace.
	IPAddress *string `locationName:"IpAddress" type:"string"`

	// The operational state of the WorkSpace.
	State *string `type:"string"`

	// The identifier of the subnet that the WorkSpace is in.
	SubnetID *string `locationName:"SubnetId" type:"string"`

	// The user that the WorkSpace is assigned to.
	UserName *string `type:"string"`

	// The identifier of the WorkSpace.
	WorkspaceID *string `locationName:"WorkspaceId" type:"string"`
	// contains filtered or unexported fields
}

Contains information about a WorkSpace.

type WorkspaceBundle

type WorkspaceBundle struct {
	// The bundle identifier.
	BundleID *string `locationName:"BundleId" type:"string"`

	// A ComputeType object that specifies the compute type for the bundle.
	ComputeType *ComputeType `type:"structure"`

	// The bundle description.
	Description *string `type:"string"`

	// The name of the bundle.
	Name *string `type:"string"`

	// The owner of the bundle. This contains the owner's account identifier, or
	// AMAZON if the bundle is provided by AWS.
	Owner *string `type:"string"`

	// A UserStorage object that specifies the amount of user storage that the bundle
	// contains.
	UserStorage *UserStorage `type:"structure"`
	// contains filtered or unexported fields
}

Contains information about a WorkSpace bundle.

type WorkspaceDirectory

type WorkspaceDirectory struct {
	// The directory alias.
	Alias *string `type:"string"`

	// The user name for the service account.
	CustomerUserName *string `type:"string"`

	// An array of strings that contains the IP addresses of the DNS servers for
	// the directory.
	DNSIPAddresses []*string `locationName:"DnsIpAddresses" type:"list"`

	// The directory identifier.
	DirectoryID *string `locationName:"DirectoryId" type:"string"`

	// The name of the directory.
	DirectoryName *string `type:"string"`

	// The directory type.
	DirectoryType *string `type:"string"`

	// 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 `locationName:"IamRoleId" type:"string"`

	// 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 `type:"string"`

	// The state of the directory's registration with Amazon WorkSpaces
	State *string `type:"string"`

	// An array of strings that contains the identifiers of the subnets used with
	// the directory.
	SubnetIDs []*string `locationName:"SubnetIds" type:"list"`

	// A structure that specifies 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 `locationName:"WorkspaceSecurityGroupId" type:"string"`
	// contains filtered or unexported fields
}

Contains information about an AWS Directory Service directory for use with Amazon WorkSpaces.

type WorkspaceRequest

type WorkspaceRequest struct {
	// The identifier of the bundle to create the WorkSpace from. You can use the
	// DescribeWorkspaceBundles operation to obtain a list of the bundles that are
	// available.
	BundleID *string `locationName:"BundleId" type:"string" required:"true"`

	// The identifier of the AWS Directory Service directory to create the WorkSpace
	// in. You can use the DescribeWorkspaceDirectories operation to obtain a list
	// of the directories that are available.
	DirectoryID *string `locationName:"DirectoryId" type:"string" required:"true"`

	// The username that the WorkSpace is assigned to. This username must exist
	// in the AWS Directory Service directory specified by the DirectoryId member.
	UserName *string `type:"string" required:"true"`
	// contains filtered or unexported fields
}

Contains information about a WorkSpace creation request.

Directories

Path Synopsis
Package workspacesiface provides an interface for the Amazon WorkSpaces.
Package workspacesiface provides an interface for the Amazon WorkSpaces.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL