1// Code generated by private/model/cli/gen-api/main.go. DO NOT EDIT. 2 3package workspaces 4 5import ( 6 "fmt" 7 "time" 8 9 "github.com/aws/aws-sdk-go/aws" 10 "github.com/aws/aws-sdk-go/aws/awsutil" 11 "github.com/aws/aws-sdk-go/aws/request" 12) 13 14const opAssociateIpGroups = "AssociateIpGroups" 15 16// AssociateIpGroupsRequest generates a "aws/request.Request" representing the 17// client's request for the AssociateIpGroups operation. The "output" return 18// value will be populated with the request's response once the request completes 19// successfuly. 20// 21// Use "Send" method on the returned Request to send the API call to the service. 22// the "output" return value is not valid until after Send returns without error. 23// 24// See AssociateIpGroups for more information on using the AssociateIpGroups 25// API call, and error handling. 26// 27// This method is useful when you want to inject custom logic or configuration 28// into the SDK's request lifecycle. Such as custom headers, or retry logic. 29// 30// 31// // Example sending a request using the AssociateIpGroupsRequest method. 32// req, resp := client.AssociateIpGroupsRequest(params) 33// 34// err := req.Send() 35// if err == nil { // resp is now filled 36// fmt.Println(resp) 37// } 38// 39// See also, https://docs.aws.amazon.com/goto/WebAPI/workspaces-2015-04-08/AssociateIpGroups 40func (c *WorkSpaces) AssociateIpGroupsRequest(input *AssociateIpGroupsInput) (req *request.Request, output *AssociateIpGroupsOutput) { 41 op := &request.Operation{ 42 Name: opAssociateIpGroups, 43 HTTPMethod: "POST", 44 HTTPPath: "/", 45 } 46 47 if input == nil { 48 input = &AssociateIpGroupsInput{} 49 } 50 51 output = &AssociateIpGroupsOutput{} 52 req = c.newRequest(op, input, output) 53 return 54} 55 56// AssociateIpGroups API operation for Amazon WorkSpaces. 57// 58// Associates the specified IP access control group with the specified directory. 59// 60// Returns awserr.Error for service API and SDK errors. Use runtime type assertions 61// with awserr.Error's Code and Message methods to get detailed information about 62// the error. 63// 64// See the AWS API reference guide for Amazon WorkSpaces's 65// API operation AssociateIpGroups for usage and error information. 66// 67// Returned Error Codes: 68// * ErrCodeInvalidParameterValuesException "InvalidParameterValuesException" 69// One or more parameter values are not valid. 70// 71// * ErrCodeResourceNotFoundException "ResourceNotFoundException" 72// The resource could not be found. 73// 74// * ErrCodeResourceLimitExceededException "ResourceLimitExceededException" 75// Your resource limits have been exceeded. 76// 77// * ErrCodeInvalidResourceStateException "InvalidResourceStateException" 78// The state of the resource is not valid for this operation. 79// 80// * ErrCodeAccessDeniedException "AccessDeniedException" 81// The user is not authorized to access a resource. 82// 83// * ErrCodeOperationNotSupportedException "OperationNotSupportedException" 84// This operation is not supported. 85// 86// See also, https://docs.aws.amazon.com/goto/WebAPI/workspaces-2015-04-08/AssociateIpGroups 87func (c *WorkSpaces) AssociateIpGroups(input *AssociateIpGroupsInput) (*AssociateIpGroupsOutput, error) { 88 req, out := c.AssociateIpGroupsRequest(input) 89 return out, req.Send() 90} 91 92// AssociateIpGroupsWithContext is the same as AssociateIpGroups with the addition of 93// the ability to pass a context and additional request options. 94// 95// See AssociateIpGroups for details on how to use this API operation. 96// 97// The context must be non-nil and will be used for request cancellation. If 98// the context is nil a panic will occur. In the future the SDK may create 99// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 100// for more information on using Contexts. 101func (c *WorkSpaces) AssociateIpGroupsWithContext(ctx aws.Context, input *AssociateIpGroupsInput, opts ...request.Option) (*AssociateIpGroupsOutput, error) { 102 req, out := c.AssociateIpGroupsRequest(input) 103 req.SetContext(ctx) 104 req.ApplyOptions(opts...) 105 return out, req.Send() 106} 107 108const opAuthorizeIpRules = "AuthorizeIpRules" 109 110// AuthorizeIpRulesRequest generates a "aws/request.Request" representing the 111// client's request for the AuthorizeIpRules operation. The "output" return 112// value will be populated with the request's response once the request completes 113// successfuly. 114// 115// Use "Send" method on the returned Request to send the API call to the service. 116// the "output" return value is not valid until after Send returns without error. 117// 118// See AuthorizeIpRules for more information on using the AuthorizeIpRules 119// API call, and error handling. 120// 121// This method is useful when you want to inject custom logic or configuration 122// into the SDK's request lifecycle. Such as custom headers, or retry logic. 123// 124// 125// // Example sending a request using the AuthorizeIpRulesRequest method. 126// req, resp := client.AuthorizeIpRulesRequest(params) 127// 128// err := req.Send() 129// if err == nil { // resp is now filled 130// fmt.Println(resp) 131// } 132// 133// See also, https://docs.aws.amazon.com/goto/WebAPI/workspaces-2015-04-08/AuthorizeIpRules 134func (c *WorkSpaces) AuthorizeIpRulesRequest(input *AuthorizeIpRulesInput) (req *request.Request, output *AuthorizeIpRulesOutput) { 135 op := &request.Operation{ 136 Name: opAuthorizeIpRules, 137 HTTPMethod: "POST", 138 HTTPPath: "/", 139 } 140 141 if input == nil { 142 input = &AuthorizeIpRulesInput{} 143 } 144 145 output = &AuthorizeIpRulesOutput{} 146 req = c.newRequest(op, input, output) 147 return 148} 149 150// AuthorizeIpRules API operation for Amazon WorkSpaces. 151// 152// Adds one or more rules to the specified IP access control group. 153// 154// This action gives users permission to access their WorkSpaces from the CIDR 155// address ranges specified in the rules. 156// 157// Returns awserr.Error for service API and SDK errors. Use runtime type assertions 158// with awserr.Error's Code and Message methods to get detailed information about 159// the error. 160// 161// See the AWS API reference guide for Amazon WorkSpaces's 162// API operation AuthorizeIpRules for usage and error information. 163// 164// Returned Error Codes: 165// * ErrCodeInvalidParameterValuesException "InvalidParameterValuesException" 166// One or more parameter values are not valid. 167// 168// * ErrCodeResourceNotFoundException "ResourceNotFoundException" 169// The resource could not be found. 170// 171// * ErrCodeResourceLimitExceededException "ResourceLimitExceededException" 172// Your resource limits have been exceeded. 173// 174// * ErrCodeInvalidResourceStateException "InvalidResourceStateException" 175// The state of the resource is not valid for this operation. 176// 177// * ErrCodeAccessDeniedException "AccessDeniedException" 178// The user is not authorized to access a resource. 179// 180// See also, https://docs.aws.amazon.com/goto/WebAPI/workspaces-2015-04-08/AuthorizeIpRules 181func (c *WorkSpaces) AuthorizeIpRules(input *AuthorizeIpRulesInput) (*AuthorizeIpRulesOutput, error) { 182 req, out := c.AuthorizeIpRulesRequest(input) 183 return out, req.Send() 184} 185 186// AuthorizeIpRulesWithContext is the same as AuthorizeIpRules with the addition of 187// the ability to pass a context and additional request options. 188// 189// See AuthorizeIpRules for details on how to use this API operation. 190// 191// The context must be non-nil and will be used for request cancellation. If 192// the context is nil a panic will occur. In the future the SDK may create 193// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 194// for more information on using Contexts. 195func (c *WorkSpaces) AuthorizeIpRulesWithContext(ctx aws.Context, input *AuthorizeIpRulesInput, opts ...request.Option) (*AuthorizeIpRulesOutput, error) { 196 req, out := c.AuthorizeIpRulesRequest(input) 197 req.SetContext(ctx) 198 req.ApplyOptions(opts...) 199 return out, req.Send() 200} 201 202const opCreateIpGroup = "CreateIpGroup" 203 204// CreateIpGroupRequest generates a "aws/request.Request" representing the 205// client's request for the CreateIpGroup operation. The "output" return 206// value will be populated with the request's response once the request completes 207// successfuly. 208// 209// Use "Send" method on the returned Request to send the API call to the service. 210// the "output" return value is not valid until after Send returns without error. 211// 212// See CreateIpGroup for more information on using the CreateIpGroup 213// API call, and error handling. 214// 215// This method is useful when you want to inject custom logic or configuration 216// into the SDK's request lifecycle. Such as custom headers, or retry logic. 217// 218// 219// // Example sending a request using the CreateIpGroupRequest method. 220// req, resp := client.CreateIpGroupRequest(params) 221// 222// err := req.Send() 223// if err == nil { // resp is now filled 224// fmt.Println(resp) 225// } 226// 227// See also, https://docs.aws.amazon.com/goto/WebAPI/workspaces-2015-04-08/CreateIpGroup 228func (c *WorkSpaces) CreateIpGroupRequest(input *CreateIpGroupInput) (req *request.Request, output *CreateIpGroupOutput) { 229 op := &request.Operation{ 230 Name: opCreateIpGroup, 231 HTTPMethod: "POST", 232 HTTPPath: "/", 233 } 234 235 if input == nil { 236 input = &CreateIpGroupInput{} 237 } 238 239 output = &CreateIpGroupOutput{} 240 req = c.newRequest(op, input, output) 241 return 242} 243 244// CreateIpGroup API operation for Amazon WorkSpaces. 245// 246// Creates an IP access control group. 247// 248// An IP access control group provides you with the ability to control the IP 249// addresses from which users are allowed to access their WorkSpaces. To specify 250// the CIDR address ranges, add rules to your IP access control group and then 251// associate the group with your directory. You can add rules when you create 252// the group or at any time using AuthorizeIpRules. 253// 254// There is a default IP access control group associated with your directory. 255// If you don't associate an IP access control group with your directory, the 256// default group is used. The default group includes a default rule that allows 257// users to access their WorkSpaces from anywhere. You cannot modify the default 258// IP access control group for your directory. 259// 260// Returns awserr.Error for service API and SDK errors. Use runtime type assertions 261// with awserr.Error's Code and Message methods to get detailed information about 262// the error. 263// 264// See the AWS API reference guide for Amazon WorkSpaces's 265// API operation CreateIpGroup for usage and error information. 266// 267// Returned Error Codes: 268// * ErrCodeInvalidParameterValuesException "InvalidParameterValuesException" 269// One or more parameter values are not valid. 270// 271// * ErrCodeResourceLimitExceededException "ResourceLimitExceededException" 272// Your resource limits have been exceeded. 273// 274// * ErrCodeResourceAlreadyExistsException "ResourceAlreadyExistsException" 275// The specified resource already exists. 276// 277// * ErrCodeResourceCreationFailedException "ResourceCreationFailedException" 278// The resource could not be created. 279// 280// * ErrCodeAccessDeniedException "AccessDeniedException" 281// The user is not authorized to access a resource. 282// 283// See also, https://docs.aws.amazon.com/goto/WebAPI/workspaces-2015-04-08/CreateIpGroup 284func (c *WorkSpaces) CreateIpGroup(input *CreateIpGroupInput) (*CreateIpGroupOutput, error) { 285 req, out := c.CreateIpGroupRequest(input) 286 return out, req.Send() 287} 288 289// CreateIpGroupWithContext is the same as CreateIpGroup with the addition of 290// the ability to pass a context and additional request options. 291// 292// See CreateIpGroup for details on how to use this API operation. 293// 294// The context must be non-nil and will be used for request cancellation. If 295// the context is nil a panic will occur. In the future the SDK may create 296// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 297// for more information on using Contexts. 298func (c *WorkSpaces) CreateIpGroupWithContext(ctx aws.Context, input *CreateIpGroupInput, opts ...request.Option) (*CreateIpGroupOutput, error) { 299 req, out := c.CreateIpGroupRequest(input) 300 req.SetContext(ctx) 301 req.ApplyOptions(opts...) 302 return out, req.Send() 303} 304 305const opCreateTags = "CreateTags" 306 307// CreateTagsRequest generates a "aws/request.Request" representing the 308// client's request for the CreateTags operation. The "output" return 309// value will be populated with the request's response once the request completes 310// successfuly. 311// 312// Use "Send" method on the returned Request to send the API call to the service. 313// the "output" return value is not valid until after Send returns without error. 314// 315// See CreateTags for more information on using the CreateTags 316// API call, and error handling. 317// 318// This method is useful when you want to inject custom logic or configuration 319// into the SDK's request lifecycle. Such as custom headers, or retry logic. 320// 321// 322// // Example sending a request using the CreateTagsRequest method. 323// req, resp := client.CreateTagsRequest(params) 324// 325// err := req.Send() 326// if err == nil { // resp is now filled 327// fmt.Println(resp) 328// } 329// 330// See also, https://docs.aws.amazon.com/goto/WebAPI/workspaces-2015-04-08/CreateTags 331func (c *WorkSpaces) CreateTagsRequest(input *CreateTagsInput) (req *request.Request, output *CreateTagsOutput) { 332 op := &request.Operation{ 333 Name: opCreateTags, 334 HTTPMethod: "POST", 335 HTTPPath: "/", 336 } 337 338 if input == nil { 339 input = &CreateTagsInput{} 340 } 341 342 output = &CreateTagsOutput{} 343 req = c.newRequest(op, input, output) 344 return 345} 346 347// CreateTags API operation for Amazon WorkSpaces. 348// 349// Creates the specified tags for the specified WorkSpace. 350// 351// Returns awserr.Error for service API and SDK errors. Use runtime type assertions 352// with awserr.Error's Code and Message methods to get detailed information about 353// the error. 354// 355// See the AWS API reference guide for Amazon WorkSpaces's 356// API operation CreateTags for usage and error information. 357// 358// Returned Error Codes: 359// * ErrCodeResourceNotFoundException "ResourceNotFoundException" 360// The resource could not be found. 361// 362// * ErrCodeInvalidParameterValuesException "InvalidParameterValuesException" 363// One or more parameter values are not valid. 364// 365// * ErrCodeResourceLimitExceededException "ResourceLimitExceededException" 366// Your resource limits have been exceeded. 367// 368// See also, https://docs.aws.amazon.com/goto/WebAPI/workspaces-2015-04-08/CreateTags 369func (c *WorkSpaces) CreateTags(input *CreateTagsInput) (*CreateTagsOutput, error) { 370 req, out := c.CreateTagsRequest(input) 371 return out, req.Send() 372} 373 374// CreateTagsWithContext is the same as CreateTags with the addition of 375// the ability to pass a context and additional request options. 376// 377// See CreateTags for details on how to use this API operation. 378// 379// The context must be non-nil and will be used for request cancellation. If 380// the context is nil a panic will occur. In the future the SDK may create 381// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 382// for more information on using Contexts. 383func (c *WorkSpaces) CreateTagsWithContext(ctx aws.Context, input *CreateTagsInput, opts ...request.Option) (*CreateTagsOutput, error) { 384 req, out := c.CreateTagsRequest(input) 385 req.SetContext(ctx) 386 req.ApplyOptions(opts...) 387 return out, req.Send() 388} 389 390const opCreateWorkspaces = "CreateWorkspaces" 391 392// CreateWorkspacesRequest generates a "aws/request.Request" representing the 393// client's request for the CreateWorkspaces operation. The "output" return 394// value will be populated with the request's response once the request completes 395// successfuly. 396// 397// Use "Send" method on the returned Request to send the API call to the service. 398// the "output" return value is not valid until after Send returns without error. 399// 400// See CreateWorkspaces for more information on using the CreateWorkspaces 401// API call, and error handling. 402// 403// This method is useful when you want to inject custom logic or configuration 404// into the SDK's request lifecycle. Such as custom headers, or retry logic. 405// 406// 407// // Example sending a request using the CreateWorkspacesRequest method. 408// req, resp := client.CreateWorkspacesRequest(params) 409// 410// err := req.Send() 411// if err == nil { // resp is now filled 412// fmt.Println(resp) 413// } 414// 415// See also, https://docs.aws.amazon.com/goto/WebAPI/workspaces-2015-04-08/CreateWorkspaces 416func (c *WorkSpaces) CreateWorkspacesRequest(input *CreateWorkspacesInput) (req *request.Request, output *CreateWorkspacesOutput) { 417 op := &request.Operation{ 418 Name: opCreateWorkspaces, 419 HTTPMethod: "POST", 420 HTTPPath: "/", 421 } 422 423 if input == nil { 424 input = &CreateWorkspacesInput{} 425 } 426 427 output = &CreateWorkspacesOutput{} 428 req = c.newRequest(op, input, output) 429 return 430} 431 432// CreateWorkspaces API operation for Amazon WorkSpaces. 433// 434// Creates one or more WorkSpaces. 435// 436// This operation is asynchronous and returns before the WorkSpaces are created. 437// 438// Returns awserr.Error for service API and SDK errors. Use runtime type assertions 439// with awserr.Error's Code and Message methods to get detailed information about 440// the error. 441// 442// See the AWS API reference guide for Amazon WorkSpaces's 443// API operation CreateWorkspaces for usage and error information. 444// 445// Returned Error Codes: 446// * ErrCodeResourceLimitExceededException "ResourceLimitExceededException" 447// Your resource limits have been exceeded. 448// 449// * ErrCodeInvalidParameterValuesException "InvalidParameterValuesException" 450// One or more parameter values are not valid. 451// 452// See also, https://docs.aws.amazon.com/goto/WebAPI/workspaces-2015-04-08/CreateWorkspaces 453func (c *WorkSpaces) CreateWorkspaces(input *CreateWorkspacesInput) (*CreateWorkspacesOutput, error) { 454 req, out := c.CreateWorkspacesRequest(input) 455 return out, req.Send() 456} 457 458// CreateWorkspacesWithContext is the same as CreateWorkspaces with the addition of 459// the ability to pass a context and additional request options. 460// 461// See CreateWorkspaces for details on how to use this API operation. 462// 463// The context must be non-nil and will be used for request cancellation. If 464// the context is nil a panic will occur. In the future the SDK may create 465// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 466// for more information on using Contexts. 467func (c *WorkSpaces) CreateWorkspacesWithContext(ctx aws.Context, input *CreateWorkspacesInput, opts ...request.Option) (*CreateWorkspacesOutput, error) { 468 req, out := c.CreateWorkspacesRequest(input) 469 req.SetContext(ctx) 470 req.ApplyOptions(opts...) 471 return out, req.Send() 472} 473 474const opDeleteIpGroup = "DeleteIpGroup" 475 476// DeleteIpGroupRequest generates a "aws/request.Request" representing the 477// client's request for the DeleteIpGroup operation. The "output" return 478// value will be populated with the request's response once the request completes 479// successfuly. 480// 481// Use "Send" method on the returned Request to send the API call to the service. 482// the "output" return value is not valid until after Send returns without error. 483// 484// See DeleteIpGroup for more information on using the DeleteIpGroup 485// API call, and error handling. 486// 487// This method is useful when you want to inject custom logic or configuration 488// into the SDK's request lifecycle. Such as custom headers, or retry logic. 489// 490// 491// // Example sending a request using the DeleteIpGroupRequest method. 492// req, resp := client.DeleteIpGroupRequest(params) 493// 494// err := req.Send() 495// if err == nil { // resp is now filled 496// fmt.Println(resp) 497// } 498// 499// See also, https://docs.aws.amazon.com/goto/WebAPI/workspaces-2015-04-08/DeleteIpGroup 500func (c *WorkSpaces) DeleteIpGroupRequest(input *DeleteIpGroupInput) (req *request.Request, output *DeleteIpGroupOutput) { 501 op := &request.Operation{ 502 Name: opDeleteIpGroup, 503 HTTPMethod: "POST", 504 HTTPPath: "/", 505 } 506 507 if input == nil { 508 input = &DeleteIpGroupInput{} 509 } 510 511 output = &DeleteIpGroupOutput{} 512 req = c.newRequest(op, input, output) 513 return 514} 515 516// DeleteIpGroup API operation for Amazon WorkSpaces. 517// 518// Deletes the specified IP access control group. 519// 520// You cannot delete an IP access control group that is associated with a directory. 521// 522// Returns awserr.Error for service API and SDK errors. Use runtime type assertions 523// with awserr.Error's Code and Message methods to get detailed information about 524// the error. 525// 526// See the AWS API reference guide for Amazon WorkSpaces's 527// API operation DeleteIpGroup for usage and error information. 528// 529// Returned Error Codes: 530// * ErrCodeInvalidParameterValuesException "InvalidParameterValuesException" 531// One or more parameter values are not valid. 532// 533// * ErrCodeResourceNotFoundException "ResourceNotFoundException" 534// The resource could not be found. 535// 536// * ErrCodeResourceAssociatedException "ResourceAssociatedException" 537// The resource is associated with a directory. 538// 539// * ErrCodeAccessDeniedException "AccessDeniedException" 540// The user is not authorized to access a resource. 541// 542// See also, https://docs.aws.amazon.com/goto/WebAPI/workspaces-2015-04-08/DeleteIpGroup 543func (c *WorkSpaces) DeleteIpGroup(input *DeleteIpGroupInput) (*DeleteIpGroupOutput, error) { 544 req, out := c.DeleteIpGroupRequest(input) 545 return out, req.Send() 546} 547 548// DeleteIpGroupWithContext is the same as DeleteIpGroup with the addition of 549// the ability to pass a context and additional request options. 550// 551// See DeleteIpGroup for details on how to use this API operation. 552// 553// The context must be non-nil and will be used for request cancellation. If 554// the context is nil a panic will occur. In the future the SDK may create 555// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 556// for more information on using Contexts. 557func (c *WorkSpaces) DeleteIpGroupWithContext(ctx aws.Context, input *DeleteIpGroupInput, opts ...request.Option) (*DeleteIpGroupOutput, error) { 558 req, out := c.DeleteIpGroupRequest(input) 559 req.SetContext(ctx) 560 req.ApplyOptions(opts...) 561 return out, req.Send() 562} 563 564const opDeleteTags = "DeleteTags" 565 566// DeleteTagsRequest generates a "aws/request.Request" representing the 567// client's request for the DeleteTags operation. The "output" return 568// value will be populated with the request's response once the request completes 569// successfuly. 570// 571// Use "Send" method on the returned Request to send the API call to the service. 572// the "output" return value is not valid until after Send returns without error. 573// 574// See DeleteTags for more information on using the DeleteTags 575// API call, and error handling. 576// 577// This method is useful when you want to inject custom logic or configuration 578// into the SDK's request lifecycle. Such as custom headers, or retry logic. 579// 580// 581// // Example sending a request using the DeleteTagsRequest method. 582// req, resp := client.DeleteTagsRequest(params) 583// 584// err := req.Send() 585// if err == nil { // resp is now filled 586// fmt.Println(resp) 587// } 588// 589// See also, https://docs.aws.amazon.com/goto/WebAPI/workspaces-2015-04-08/DeleteTags 590func (c *WorkSpaces) DeleteTagsRequest(input *DeleteTagsInput) (req *request.Request, output *DeleteTagsOutput) { 591 op := &request.Operation{ 592 Name: opDeleteTags, 593 HTTPMethod: "POST", 594 HTTPPath: "/", 595 } 596 597 if input == nil { 598 input = &DeleteTagsInput{} 599 } 600 601 output = &DeleteTagsOutput{} 602 req = c.newRequest(op, input, output) 603 return 604} 605 606// DeleteTags API operation for Amazon WorkSpaces. 607// 608// Deletes the specified tags from the specified WorkSpace. 609// 610// Returns awserr.Error for service API and SDK errors. Use runtime type assertions 611// with awserr.Error's Code and Message methods to get detailed information about 612// the error. 613// 614// See the AWS API reference guide for Amazon WorkSpaces's 615// API operation DeleteTags for usage and error information. 616// 617// Returned Error Codes: 618// * ErrCodeResourceNotFoundException "ResourceNotFoundException" 619// The resource could not be found. 620// 621// * ErrCodeInvalidParameterValuesException "InvalidParameterValuesException" 622// One or more parameter values are not valid. 623// 624// See also, https://docs.aws.amazon.com/goto/WebAPI/workspaces-2015-04-08/DeleteTags 625func (c *WorkSpaces) DeleteTags(input *DeleteTagsInput) (*DeleteTagsOutput, error) { 626 req, out := c.DeleteTagsRequest(input) 627 return out, req.Send() 628} 629 630// DeleteTagsWithContext is the same as DeleteTags with the addition of 631// the ability to pass a context and additional request options. 632// 633// See DeleteTags for details on how to use this API operation. 634// 635// The context must be non-nil and will be used for request cancellation. If 636// the context is nil a panic will occur. In the future the SDK may create 637// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 638// for more information on using Contexts. 639func (c *WorkSpaces) DeleteTagsWithContext(ctx aws.Context, input *DeleteTagsInput, opts ...request.Option) (*DeleteTagsOutput, error) { 640 req, out := c.DeleteTagsRequest(input) 641 req.SetContext(ctx) 642 req.ApplyOptions(opts...) 643 return out, req.Send() 644} 645 646const opDescribeIpGroups = "DescribeIpGroups" 647 648// DescribeIpGroupsRequest generates a "aws/request.Request" representing the 649// client's request for the DescribeIpGroups operation. The "output" return 650// value will be populated with the request's response once the request completes 651// successfuly. 652// 653// Use "Send" method on the returned Request to send the API call to the service. 654// the "output" return value is not valid until after Send returns without error. 655// 656// See DescribeIpGroups for more information on using the DescribeIpGroups 657// API call, and error handling. 658// 659// This method is useful when you want to inject custom logic or configuration 660// into the SDK's request lifecycle. Such as custom headers, or retry logic. 661// 662// 663// // Example sending a request using the DescribeIpGroupsRequest method. 664// req, resp := client.DescribeIpGroupsRequest(params) 665// 666// err := req.Send() 667// if err == nil { // resp is now filled 668// fmt.Println(resp) 669// } 670// 671// See also, https://docs.aws.amazon.com/goto/WebAPI/workspaces-2015-04-08/DescribeIpGroups 672func (c *WorkSpaces) DescribeIpGroupsRequest(input *DescribeIpGroupsInput) (req *request.Request, output *DescribeIpGroupsOutput) { 673 op := &request.Operation{ 674 Name: opDescribeIpGroups, 675 HTTPMethod: "POST", 676 HTTPPath: "/", 677 } 678 679 if input == nil { 680 input = &DescribeIpGroupsInput{} 681 } 682 683 output = &DescribeIpGroupsOutput{} 684 req = c.newRequest(op, input, output) 685 return 686} 687 688// DescribeIpGroups API operation for Amazon WorkSpaces. 689// 690// Describes one or more of your IP access control groups. 691// 692// Returns awserr.Error for service API and SDK errors. Use runtime type assertions 693// with awserr.Error's Code and Message methods to get detailed information about 694// the error. 695// 696// See the AWS API reference guide for Amazon WorkSpaces's 697// API operation DescribeIpGroups for usage and error information. 698// 699// Returned Error Codes: 700// * ErrCodeInvalidParameterValuesException "InvalidParameterValuesException" 701// One or more parameter values are not valid. 702// 703// * ErrCodeAccessDeniedException "AccessDeniedException" 704// The user is not authorized to access a resource. 705// 706// See also, https://docs.aws.amazon.com/goto/WebAPI/workspaces-2015-04-08/DescribeIpGroups 707func (c *WorkSpaces) DescribeIpGroups(input *DescribeIpGroupsInput) (*DescribeIpGroupsOutput, error) { 708 req, out := c.DescribeIpGroupsRequest(input) 709 return out, req.Send() 710} 711 712// DescribeIpGroupsWithContext is the same as DescribeIpGroups with the addition of 713// the ability to pass a context and additional request options. 714// 715// See DescribeIpGroups for details on how to use this API operation. 716// 717// The context must be non-nil and will be used for request cancellation. If 718// the context is nil a panic will occur. In the future the SDK may create 719// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 720// for more information on using Contexts. 721func (c *WorkSpaces) DescribeIpGroupsWithContext(ctx aws.Context, input *DescribeIpGroupsInput, opts ...request.Option) (*DescribeIpGroupsOutput, error) { 722 req, out := c.DescribeIpGroupsRequest(input) 723 req.SetContext(ctx) 724 req.ApplyOptions(opts...) 725 return out, req.Send() 726} 727 728const opDescribeTags = "DescribeTags" 729 730// DescribeTagsRequest generates a "aws/request.Request" representing the 731// client's request for the DescribeTags operation. The "output" return 732// value will be populated with the request's response once the request completes 733// successfuly. 734// 735// Use "Send" method on the returned Request to send the API call to the service. 736// the "output" return value is not valid until after Send returns without error. 737// 738// See DescribeTags for more information on using the DescribeTags 739// API call, and error handling. 740// 741// This method is useful when you want to inject custom logic or configuration 742// into the SDK's request lifecycle. Such as custom headers, or retry logic. 743// 744// 745// // Example sending a request using the DescribeTagsRequest method. 746// req, resp := client.DescribeTagsRequest(params) 747// 748// err := req.Send() 749// if err == nil { // resp is now filled 750// fmt.Println(resp) 751// } 752// 753// See also, https://docs.aws.amazon.com/goto/WebAPI/workspaces-2015-04-08/DescribeTags 754func (c *WorkSpaces) DescribeTagsRequest(input *DescribeTagsInput) (req *request.Request, output *DescribeTagsOutput) { 755 op := &request.Operation{ 756 Name: opDescribeTags, 757 HTTPMethod: "POST", 758 HTTPPath: "/", 759 } 760 761 if input == nil { 762 input = &DescribeTagsInput{} 763 } 764 765 output = &DescribeTagsOutput{} 766 req = c.newRequest(op, input, output) 767 return 768} 769 770// DescribeTags API operation for Amazon WorkSpaces. 771// 772// Describes the specified tags for the specified WorkSpace. 773// 774// Returns awserr.Error for service API and SDK errors. Use runtime type assertions 775// with awserr.Error's Code and Message methods to get detailed information about 776// the error. 777// 778// See the AWS API reference guide for Amazon WorkSpaces's 779// API operation DescribeTags for usage and error information. 780// 781// Returned Error Codes: 782// * ErrCodeResourceNotFoundException "ResourceNotFoundException" 783// The resource could not be found. 784// 785// See also, https://docs.aws.amazon.com/goto/WebAPI/workspaces-2015-04-08/DescribeTags 786func (c *WorkSpaces) DescribeTags(input *DescribeTagsInput) (*DescribeTagsOutput, error) { 787 req, out := c.DescribeTagsRequest(input) 788 return out, req.Send() 789} 790 791// DescribeTagsWithContext is the same as DescribeTags with the addition of 792// the ability to pass a context and additional request options. 793// 794// See DescribeTags for details on how to use this API operation. 795// 796// The context must be non-nil and will be used for request cancellation. If 797// the context is nil a panic will occur. In the future the SDK may create 798// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 799// for more information on using Contexts. 800func (c *WorkSpaces) DescribeTagsWithContext(ctx aws.Context, input *DescribeTagsInput, opts ...request.Option) (*DescribeTagsOutput, error) { 801 req, out := c.DescribeTagsRequest(input) 802 req.SetContext(ctx) 803 req.ApplyOptions(opts...) 804 return out, req.Send() 805} 806 807const opDescribeWorkspaceBundles = "DescribeWorkspaceBundles" 808 809// DescribeWorkspaceBundlesRequest generates a "aws/request.Request" representing the 810// client's request for the DescribeWorkspaceBundles operation. The "output" return 811// value will be populated with the request's response once the request completes 812// successfuly. 813// 814// Use "Send" method on the returned Request to send the API call to the service. 815// the "output" return value is not valid until after Send returns without error. 816// 817// See DescribeWorkspaceBundles for more information on using the DescribeWorkspaceBundles 818// API call, and error handling. 819// 820// This method is useful when you want to inject custom logic or configuration 821// into the SDK's request lifecycle. Such as custom headers, or retry logic. 822// 823// 824// // Example sending a request using the DescribeWorkspaceBundlesRequest method. 825// req, resp := client.DescribeWorkspaceBundlesRequest(params) 826// 827// err := req.Send() 828// if err == nil { // resp is now filled 829// fmt.Println(resp) 830// } 831// 832// See also, https://docs.aws.amazon.com/goto/WebAPI/workspaces-2015-04-08/DescribeWorkspaceBundles 833func (c *WorkSpaces) DescribeWorkspaceBundlesRequest(input *DescribeWorkspaceBundlesInput) (req *request.Request, output *DescribeWorkspaceBundlesOutput) { 834 op := &request.Operation{ 835 Name: opDescribeWorkspaceBundles, 836 HTTPMethod: "POST", 837 HTTPPath: "/", 838 Paginator: &request.Paginator{ 839 InputTokens: []string{"NextToken"}, 840 OutputTokens: []string{"NextToken"}, 841 LimitToken: "", 842 TruncationToken: "", 843 }, 844 } 845 846 if input == nil { 847 input = &DescribeWorkspaceBundlesInput{} 848 } 849 850 output = &DescribeWorkspaceBundlesOutput{} 851 req = c.newRequest(op, input, output) 852 return 853} 854 855// DescribeWorkspaceBundles API operation for Amazon WorkSpaces. 856// 857// Describes the available WorkSpace bundles. 858// 859// You can filter the results using either bundle ID or owner, but not both. 860// 861// Returns awserr.Error for service API and SDK errors. Use runtime type assertions 862// with awserr.Error's Code and Message methods to get detailed information about 863// the error. 864// 865// See the AWS API reference guide for Amazon WorkSpaces's 866// API operation DescribeWorkspaceBundles for usage and error information. 867// 868// Returned Error Codes: 869// * ErrCodeInvalidParameterValuesException "InvalidParameterValuesException" 870// One or more parameter values are not valid. 871// 872// See also, https://docs.aws.amazon.com/goto/WebAPI/workspaces-2015-04-08/DescribeWorkspaceBundles 873func (c *WorkSpaces) DescribeWorkspaceBundles(input *DescribeWorkspaceBundlesInput) (*DescribeWorkspaceBundlesOutput, error) { 874 req, out := c.DescribeWorkspaceBundlesRequest(input) 875 return out, req.Send() 876} 877 878// DescribeWorkspaceBundlesWithContext is the same as DescribeWorkspaceBundles with the addition of 879// the ability to pass a context and additional request options. 880// 881// See DescribeWorkspaceBundles for details on how to use this API operation. 882// 883// The context must be non-nil and will be used for request cancellation. If 884// the context is nil a panic will occur. In the future the SDK may create 885// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 886// for more information on using Contexts. 887func (c *WorkSpaces) DescribeWorkspaceBundlesWithContext(ctx aws.Context, input *DescribeWorkspaceBundlesInput, opts ...request.Option) (*DescribeWorkspaceBundlesOutput, error) { 888 req, out := c.DescribeWorkspaceBundlesRequest(input) 889 req.SetContext(ctx) 890 req.ApplyOptions(opts...) 891 return out, req.Send() 892} 893 894// DescribeWorkspaceBundlesPages iterates over the pages of a DescribeWorkspaceBundles operation, 895// calling the "fn" function with the response data for each page. To stop 896// iterating, return false from the fn function. 897// 898// See DescribeWorkspaceBundles method for more information on how to use this operation. 899// 900// Note: This operation can generate multiple requests to a service. 901// 902// // Example iterating over at most 3 pages of a DescribeWorkspaceBundles operation. 903// pageNum := 0 904// err := client.DescribeWorkspaceBundlesPages(params, 905// func(page *DescribeWorkspaceBundlesOutput, lastPage bool) bool { 906// pageNum++ 907// fmt.Println(page) 908// return pageNum <= 3 909// }) 910// 911func (c *WorkSpaces) DescribeWorkspaceBundlesPages(input *DescribeWorkspaceBundlesInput, fn func(*DescribeWorkspaceBundlesOutput, bool) bool) error { 912 return c.DescribeWorkspaceBundlesPagesWithContext(aws.BackgroundContext(), input, fn) 913} 914 915// DescribeWorkspaceBundlesPagesWithContext same as DescribeWorkspaceBundlesPages except 916// it takes a Context and allows setting request options on the pages. 917// 918// The context must be non-nil and will be used for request cancellation. If 919// the context is nil a panic will occur. In the future the SDK may create 920// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 921// for more information on using Contexts. 922func (c *WorkSpaces) DescribeWorkspaceBundlesPagesWithContext(ctx aws.Context, input *DescribeWorkspaceBundlesInput, fn func(*DescribeWorkspaceBundlesOutput, bool) bool, opts ...request.Option) error { 923 p := request.Pagination{ 924 NewRequest: func() (*request.Request, error) { 925 var inCpy *DescribeWorkspaceBundlesInput 926 if input != nil { 927 tmp := *input 928 inCpy = &tmp 929 } 930 req, _ := c.DescribeWorkspaceBundlesRequest(inCpy) 931 req.SetContext(ctx) 932 req.ApplyOptions(opts...) 933 return req, nil 934 }, 935 } 936 937 cont := true 938 for p.Next() && cont { 939 cont = fn(p.Page().(*DescribeWorkspaceBundlesOutput), !p.HasNextPage()) 940 } 941 return p.Err() 942} 943 944const opDescribeWorkspaceDirectories = "DescribeWorkspaceDirectories" 945 946// DescribeWorkspaceDirectoriesRequest generates a "aws/request.Request" representing the 947// client's request for the DescribeWorkspaceDirectories operation. The "output" return 948// value will be populated with the request's response once the request completes 949// successfuly. 950// 951// Use "Send" method on the returned Request to send the API call to the service. 952// the "output" return value is not valid until after Send returns without error. 953// 954// See DescribeWorkspaceDirectories for more information on using the DescribeWorkspaceDirectories 955// API call, and error handling. 956// 957// This method is useful when you want to inject custom logic or configuration 958// into the SDK's request lifecycle. Such as custom headers, or retry logic. 959// 960// 961// // Example sending a request using the DescribeWorkspaceDirectoriesRequest method. 962// req, resp := client.DescribeWorkspaceDirectoriesRequest(params) 963// 964// err := req.Send() 965// if err == nil { // resp is now filled 966// fmt.Println(resp) 967// } 968// 969// See also, https://docs.aws.amazon.com/goto/WebAPI/workspaces-2015-04-08/DescribeWorkspaceDirectories 970func (c *WorkSpaces) DescribeWorkspaceDirectoriesRequest(input *DescribeWorkspaceDirectoriesInput) (req *request.Request, output *DescribeWorkspaceDirectoriesOutput) { 971 op := &request.Operation{ 972 Name: opDescribeWorkspaceDirectories, 973 HTTPMethod: "POST", 974 HTTPPath: "/", 975 Paginator: &request.Paginator{ 976 InputTokens: []string{"NextToken"}, 977 OutputTokens: []string{"NextToken"}, 978 LimitToken: "", 979 TruncationToken: "", 980 }, 981 } 982 983 if input == nil { 984 input = &DescribeWorkspaceDirectoriesInput{} 985 } 986 987 output = &DescribeWorkspaceDirectoriesOutput{} 988 req = c.newRequest(op, input, output) 989 return 990} 991 992// DescribeWorkspaceDirectories API operation for Amazon WorkSpaces. 993// 994// Describes the available AWS Directory Service directories that are registered 995// with Amazon WorkSpaces. 996// 997// Returns awserr.Error for service API and SDK errors. Use runtime type assertions 998// with awserr.Error's Code and Message methods to get detailed information about 999// the error. 1000// 1001// See the AWS API reference guide for Amazon WorkSpaces's 1002// API operation DescribeWorkspaceDirectories for usage and error information. 1003// 1004// Returned Error Codes: 1005// * ErrCodeInvalidParameterValuesException "InvalidParameterValuesException" 1006// One or more parameter values are not valid. 1007// 1008// See also, https://docs.aws.amazon.com/goto/WebAPI/workspaces-2015-04-08/DescribeWorkspaceDirectories 1009func (c *WorkSpaces) DescribeWorkspaceDirectories(input *DescribeWorkspaceDirectoriesInput) (*DescribeWorkspaceDirectoriesOutput, error) { 1010 req, out := c.DescribeWorkspaceDirectoriesRequest(input) 1011 return out, req.Send() 1012} 1013 1014// DescribeWorkspaceDirectoriesWithContext is the same as DescribeWorkspaceDirectories with the addition of 1015// the ability to pass a context and additional request options. 1016// 1017// See DescribeWorkspaceDirectories for details on how to use this API operation. 1018// 1019// The context must be non-nil and will be used for request cancellation. If 1020// the context is nil a panic will occur. In the future the SDK may create 1021// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 1022// for more information on using Contexts. 1023func (c *WorkSpaces) DescribeWorkspaceDirectoriesWithContext(ctx aws.Context, input *DescribeWorkspaceDirectoriesInput, opts ...request.Option) (*DescribeWorkspaceDirectoriesOutput, error) { 1024 req, out := c.DescribeWorkspaceDirectoriesRequest(input) 1025 req.SetContext(ctx) 1026 req.ApplyOptions(opts...) 1027 return out, req.Send() 1028} 1029 1030// DescribeWorkspaceDirectoriesPages iterates over the pages of a DescribeWorkspaceDirectories operation, 1031// calling the "fn" function with the response data for each page. To stop 1032// iterating, return false from the fn function. 1033// 1034// See DescribeWorkspaceDirectories method for more information on how to use this operation. 1035// 1036// Note: This operation can generate multiple requests to a service. 1037// 1038// // Example iterating over at most 3 pages of a DescribeWorkspaceDirectories operation. 1039// pageNum := 0 1040// err := client.DescribeWorkspaceDirectoriesPages(params, 1041// func(page *DescribeWorkspaceDirectoriesOutput, lastPage bool) bool { 1042// pageNum++ 1043// fmt.Println(page) 1044// return pageNum <= 3 1045// }) 1046// 1047func (c *WorkSpaces) DescribeWorkspaceDirectoriesPages(input *DescribeWorkspaceDirectoriesInput, fn func(*DescribeWorkspaceDirectoriesOutput, bool) bool) error { 1048 return c.DescribeWorkspaceDirectoriesPagesWithContext(aws.BackgroundContext(), input, fn) 1049} 1050 1051// DescribeWorkspaceDirectoriesPagesWithContext same as DescribeWorkspaceDirectoriesPages except 1052// it takes a Context and allows setting request options on the pages. 1053// 1054// The context must be non-nil and will be used for request cancellation. If 1055// the context is nil a panic will occur. In the future the SDK may create 1056// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 1057// for more information on using Contexts. 1058func (c *WorkSpaces) DescribeWorkspaceDirectoriesPagesWithContext(ctx aws.Context, input *DescribeWorkspaceDirectoriesInput, fn func(*DescribeWorkspaceDirectoriesOutput, bool) bool, opts ...request.Option) error { 1059 p := request.Pagination{ 1060 NewRequest: func() (*request.Request, error) { 1061 var inCpy *DescribeWorkspaceDirectoriesInput 1062 if input != nil { 1063 tmp := *input 1064 inCpy = &tmp 1065 } 1066 req, _ := c.DescribeWorkspaceDirectoriesRequest(inCpy) 1067 req.SetContext(ctx) 1068 req.ApplyOptions(opts...) 1069 return req, nil 1070 }, 1071 } 1072 1073 cont := true 1074 for p.Next() && cont { 1075 cont = fn(p.Page().(*DescribeWorkspaceDirectoriesOutput), !p.HasNextPage()) 1076 } 1077 return p.Err() 1078} 1079 1080const opDescribeWorkspaces = "DescribeWorkspaces" 1081 1082// DescribeWorkspacesRequest generates a "aws/request.Request" representing the 1083// client's request for the DescribeWorkspaces operation. The "output" return 1084// value will be populated with the request's response once the request completes 1085// successfuly. 1086// 1087// Use "Send" method on the returned Request to send the API call to the service. 1088// the "output" return value is not valid until after Send returns without error. 1089// 1090// See DescribeWorkspaces for more information on using the DescribeWorkspaces 1091// API call, and error handling. 1092// 1093// This method is useful when you want to inject custom logic or configuration 1094// into the SDK's request lifecycle. Such as custom headers, or retry logic. 1095// 1096// 1097// // Example sending a request using the DescribeWorkspacesRequest method. 1098// req, resp := client.DescribeWorkspacesRequest(params) 1099// 1100// err := req.Send() 1101// if err == nil { // resp is now filled 1102// fmt.Println(resp) 1103// } 1104// 1105// See also, https://docs.aws.amazon.com/goto/WebAPI/workspaces-2015-04-08/DescribeWorkspaces 1106func (c *WorkSpaces) DescribeWorkspacesRequest(input *DescribeWorkspacesInput) (req *request.Request, output *DescribeWorkspacesOutput) { 1107 op := &request.Operation{ 1108 Name: opDescribeWorkspaces, 1109 HTTPMethod: "POST", 1110 HTTPPath: "/", 1111 Paginator: &request.Paginator{ 1112 InputTokens: []string{"NextToken"}, 1113 OutputTokens: []string{"NextToken"}, 1114 LimitToken: "Limit", 1115 TruncationToken: "", 1116 }, 1117 } 1118 1119 if input == nil { 1120 input = &DescribeWorkspacesInput{} 1121 } 1122 1123 output = &DescribeWorkspacesOutput{} 1124 req = c.newRequest(op, input, output) 1125 return 1126} 1127 1128// DescribeWorkspaces API operation for Amazon WorkSpaces. 1129// 1130// Describes the specified WorkSpaces. 1131// 1132// You can filter the results using bundle ID, directory ID, or owner, but you 1133// can specify only one filter at a time. 1134// 1135// Returns awserr.Error for service API and SDK errors. Use runtime type assertions 1136// with awserr.Error's Code and Message methods to get detailed information about 1137// the error. 1138// 1139// See the AWS API reference guide for Amazon WorkSpaces's 1140// API operation DescribeWorkspaces for usage and error information. 1141// 1142// Returned Error Codes: 1143// * ErrCodeInvalidParameterValuesException "InvalidParameterValuesException" 1144// One or more parameter values are not valid. 1145// 1146// * ErrCodeResourceUnavailableException "ResourceUnavailableException" 1147// The specified resource is not available. 1148// 1149// See also, https://docs.aws.amazon.com/goto/WebAPI/workspaces-2015-04-08/DescribeWorkspaces 1150func (c *WorkSpaces) DescribeWorkspaces(input *DescribeWorkspacesInput) (*DescribeWorkspacesOutput, error) { 1151 req, out := c.DescribeWorkspacesRequest(input) 1152 return out, req.Send() 1153} 1154 1155// DescribeWorkspacesWithContext is the same as DescribeWorkspaces with the addition of 1156// the ability to pass a context and additional request options. 1157// 1158// See DescribeWorkspaces for details on how to use this API operation. 1159// 1160// The context must be non-nil and will be used for request cancellation. If 1161// the context is nil a panic will occur. In the future the SDK may create 1162// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 1163// for more information on using Contexts. 1164func (c *WorkSpaces) DescribeWorkspacesWithContext(ctx aws.Context, input *DescribeWorkspacesInput, opts ...request.Option) (*DescribeWorkspacesOutput, error) { 1165 req, out := c.DescribeWorkspacesRequest(input) 1166 req.SetContext(ctx) 1167 req.ApplyOptions(opts...) 1168 return out, req.Send() 1169} 1170 1171// DescribeWorkspacesPages iterates over the pages of a DescribeWorkspaces operation, 1172// calling the "fn" function with the response data for each page. To stop 1173// iterating, return false from the fn function. 1174// 1175// See DescribeWorkspaces method for more information on how to use this operation. 1176// 1177// Note: This operation can generate multiple requests to a service. 1178// 1179// // Example iterating over at most 3 pages of a DescribeWorkspaces operation. 1180// pageNum := 0 1181// err := client.DescribeWorkspacesPages(params, 1182// func(page *DescribeWorkspacesOutput, lastPage bool) bool { 1183// pageNum++ 1184// fmt.Println(page) 1185// return pageNum <= 3 1186// }) 1187// 1188func (c *WorkSpaces) DescribeWorkspacesPages(input *DescribeWorkspacesInput, fn func(*DescribeWorkspacesOutput, bool) bool) error { 1189 return c.DescribeWorkspacesPagesWithContext(aws.BackgroundContext(), input, fn) 1190} 1191 1192// DescribeWorkspacesPagesWithContext same as DescribeWorkspacesPages except 1193// it takes a Context and allows setting request options on the pages. 1194// 1195// The context must be non-nil and will be used for request cancellation. If 1196// the context is nil a panic will occur. In the future the SDK may create 1197// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 1198// for more information on using Contexts. 1199func (c *WorkSpaces) DescribeWorkspacesPagesWithContext(ctx aws.Context, input *DescribeWorkspacesInput, fn func(*DescribeWorkspacesOutput, bool) bool, opts ...request.Option) error { 1200 p := request.Pagination{ 1201 NewRequest: func() (*request.Request, error) { 1202 var inCpy *DescribeWorkspacesInput 1203 if input != nil { 1204 tmp := *input 1205 inCpy = &tmp 1206 } 1207 req, _ := c.DescribeWorkspacesRequest(inCpy) 1208 req.SetContext(ctx) 1209 req.ApplyOptions(opts...) 1210 return req, nil 1211 }, 1212 } 1213 1214 cont := true 1215 for p.Next() && cont { 1216 cont = fn(p.Page().(*DescribeWorkspacesOutput), !p.HasNextPage()) 1217 } 1218 return p.Err() 1219} 1220 1221const opDescribeWorkspacesConnectionStatus = "DescribeWorkspacesConnectionStatus" 1222 1223// DescribeWorkspacesConnectionStatusRequest generates a "aws/request.Request" representing the 1224// client's request for the DescribeWorkspacesConnectionStatus operation. The "output" return 1225// value will be populated with the request's response once the request completes 1226// successfuly. 1227// 1228// Use "Send" method on the returned Request to send the API call to the service. 1229// the "output" return value is not valid until after Send returns without error. 1230// 1231// See DescribeWorkspacesConnectionStatus for more information on using the DescribeWorkspacesConnectionStatus 1232// API call, and error handling. 1233// 1234// This method is useful when you want to inject custom logic or configuration 1235// into the SDK's request lifecycle. Such as custom headers, or retry logic. 1236// 1237// 1238// // Example sending a request using the DescribeWorkspacesConnectionStatusRequest method. 1239// req, resp := client.DescribeWorkspacesConnectionStatusRequest(params) 1240// 1241// err := req.Send() 1242// if err == nil { // resp is now filled 1243// fmt.Println(resp) 1244// } 1245// 1246// See also, https://docs.aws.amazon.com/goto/WebAPI/workspaces-2015-04-08/DescribeWorkspacesConnectionStatus 1247func (c *WorkSpaces) DescribeWorkspacesConnectionStatusRequest(input *DescribeWorkspacesConnectionStatusInput) (req *request.Request, output *DescribeWorkspacesConnectionStatusOutput) { 1248 op := &request.Operation{ 1249 Name: opDescribeWorkspacesConnectionStatus, 1250 HTTPMethod: "POST", 1251 HTTPPath: "/", 1252 } 1253 1254 if input == nil { 1255 input = &DescribeWorkspacesConnectionStatusInput{} 1256 } 1257 1258 output = &DescribeWorkspacesConnectionStatusOutput{} 1259 req = c.newRequest(op, input, output) 1260 return 1261} 1262 1263// DescribeWorkspacesConnectionStatus API operation for Amazon WorkSpaces. 1264// 1265// Describes the connection status of the specified WorkSpaces. 1266// 1267// Returns awserr.Error for service API and SDK errors. Use runtime type assertions 1268// with awserr.Error's Code and Message methods to get detailed information about 1269// the error. 1270// 1271// See the AWS API reference guide for Amazon WorkSpaces's 1272// API operation DescribeWorkspacesConnectionStatus for usage and error information. 1273// 1274// Returned Error Codes: 1275// * ErrCodeInvalidParameterValuesException "InvalidParameterValuesException" 1276// One or more parameter values are not valid. 1277// 1278// See also, https://docs.aws.amazon.com/goto/WebAPI/workspaces-2015-04-08/DescribeWorkspacesConnectionStatus 1279func (c *WorkSpaces) DescribeWorkspacesConnectionStatus(input *DescribeWorkspacesConnectionStatusInput) (*DescribeWorkspacesConnectionStatusOutput, error) { 1280 req, out := c.DescribeWorkspacesConnectionStatusRequest(input) 1281 return out, req.Send() 1282} 1283 1284// DescribeWorkspacesConnectionStatusWithContext is the same as DescribeWorkspacesConnectionStatus with the addition of 1285// the ability to pass a context and additional request options. 1286// 1287// See DescribeWorkspacesConnectionStatus for details on how to use this API operation. 1288// 1289// The context must be non-nil and will be used for request cancellation. If 1290// the context is nil a panic will occur. In the future the SDK may create 1291// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 1292// for more information on using Contexts. 1293func (c *WorkSpaces) DescribeWorkspacesConnectionStatusWithContext(ctx aws.Context, input *DescribeWorkspacesConnectionStatusInput, opts ...request.Option) (*DescribeWorkspacesConnectionStatusOutput, error) { 1294 req, out := c.DescribeWorkspacesConnectionStatusRequest(input) 1295 req.SetContext(ctx) 1296 req.ApplyOptions(opts...) 1297 return out, req.Send() 1298} 1299 1300const opDisassociateIpGroups = "DisassociateIpGroups" 1301 1302// DisassociateIpGroupsRequest generates a "aws/request.Request" representing the 1303// client's request for the DisassociateIpGroups operation. The "output" return 1304// value will be populated with the request's response once the request completes 1305// successfuly. 1306// 1307// Use "Send" method on the returned Request to send the API call to the service. 1308// the "output" return value is not valid until after Send returns without error. 1309// 1310// See DisassociateIpGroups for more information on using the DisassociateIpGroups 1311// API call, and error handling. 1312// 1313// This method is useful when you want to inject custom logic or configuration 1314// into the SDK's request lifecycle. Such as custom headers, or retry logic. 1315// 1316// 1317// // Example sending a request using the DisassociateIpGroupsRequest method. 1318// req, resp := client.DisassociateIpGroupsRequest(params) 1319// 1320// err := req.Send() 1321// if err == nil { // resp is now filled 1322// fmt.Println(resp) 1323// } 1324// 1325// See also, https://docs.aws.amazon.com/goto/WebAPI/workspaces-2015-04-08/DisassociateIpGroups 1326func (c *WorkSpaces) DisassociateIpGroupsRequest(input *DisassociateIpGroupsInput) (req *request.Request, output *DisassociateIpGroupsOutput) { 1327 op := &request.Operation{ 1328 Name: opDisassociateIpGroups, 1329 HTTPMethod: "POST", 1330 HTTPPath: "/", 1331 } 1332 1333 if input == nil { 1334 input = &DisassociateIpGroupsInput{} 1335 } 1336 1337 output = &DisassociateIpGroupsOutput{} 1338 req = c.newRequest(op, input, output) 1339 return 1340} 1341 1342// DisassociateIpGroups API operation for Amazon WorkSpaces. 1343// 1344// Disassociates the specified IP access control group from the specified directory. 1345// 1346// Returns awserr.Error for service API and SDK errors. Use runtime type assertions 1347// with awserr.Error's Code and Message methods to get detailed information about 1348// the error. 1349// 1350// See the AWS API reference guide for Amazon WorkSpaces's 1351// API operation DisassociateIpGroups for usage and error information. 1352// 1353// Returned Error Codes: 1354// * ErrCodeInvalidParameterValuesException "InvalidParameterValuesException" 1355// One or more parameter values are not valid. 1356// 1357// * ErrCodeResourceNotFoundException "ResourceNotFoundException" 1358// The resource could not be found. 1359// 1360// * ErrCodeInvalidResourceStateException "InvalidResourceStateException" 1361// The state of the resource is not valid for this operation. 1362// 1363// * ErrCodeAccessDeniedException "AccessDeniedException" 1364// The user is not authorized to access a resource. 1365// 1366// See also, https://docs.aws.amazon.com/goto/WebAPI/workspaces-2015-04-08/DisassociateIpGroups 1367func (c *WorkSpaces) DisassociateIpGroups(input *DisassociateIpGroupsInput) (*DisassociateIpGroupsOutput, error) { 1368 req, out := c.DisassociateIpGroupsRequest(input) 1369 return out, req.Send() 1370} 1371 1372// DisassociateIpGroupsWithContext is the same as DisassociateIpGroups with the addition of 1373// the ability to pass a context and additional request options. 1374// 1375// See DisassociateIpGroups for details on how to use this API operation. 1376// 1377// The context must be non-nil and will be used for request cancellation. If 1378// the context is nil a panic will occur. In the future the SDK may create 1379// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 1380// for more information on using Contexts. 1381func (c *WorkSpaces) DisassociateIpGroupsWithContext(ctx aws.Context, input *DisassociateIpGroupsInput, opts ...request.Option) (*DisassociateIpGroupsOutput, error) { 1382 req, out := c.DisassociateIpGroupsRequest(input) 1383 req.SetContext(ctx) 1384 req.ApplyOptions(opts...) 1385 return out, req.Send() 1386} 1387 1388const opModifyWorkspaceProperties = "ModifyWorkspaceProperties" 1389 1390// ModifyWorkspacePropertiesRequest generates a "aws/request.Request" representing the 1391// client's request for the ModifyWorkspaceProperties operation. The "output" return 1392// value will be populated with the request's response once the request completes 1393// successfuly. 1394// 1395// Use "Send" method on the returned Request to send the API call to the service. 1396// the "output" return value is not valid until after Send returns without error. 1397// 1398// See ModifyWorkspaceProperties for more information on using the ModifyWorkspaceProperties 1399// API call, and error handling. 1400// 1401// This method is useful when you want to inject custom logic or configuration 1402// into the SDK's request lifecycle. Such as custom headers, or retry logic. 1403// 1404// 1405// // Example sending a request using the ModifyWorkspacePropertiesRequest method. 1406// req, resp := client.ModifyWorkspacePropertiesRequest(params) 1407// 1408// err := req.Send() 1409// if err == nil { // resp is now filled 1410// fmt.Println(resp) 1411// } 1412// 1413// See also, https://docs.aws.amazon.com/goto/WebAPI/workspaces-2015-04-08/ModifyWorkspaceProperties 1414func (c *WorkSpaces) ModifyWorkspacePropertiesRequest(input *ModifyWorkspacePropertiesInput) (req *request.Request, output *ModifyWorkspacePropertiesOutput) { 1415 op := &request.Operation{ 1416 Name: opModifyWorkspaceProperties, 1417 HTTPMethod: "POST", 1418 HTTPPath: "/", 1419 } 1420 1421 if input == nil { 1422 input = &ModifyWorkspacePropertiesInput{} 1423 } 1424 1425 output = &ModifyWorkspacePropertiesOutput{} 1426 req = c.newRequest(op, input, output) 1427 return 1428} 1429 1430// ModifyWorkspaceProperties API operation for Amazon WorkSpaces. 1431// 1432// Modifies the specified WorkSpace properties. 1433// 1434// Returns awserr.Error for service API and SDK errors. Use runtime type assertions 1435// with awserr.Error's Code and Message methods to get detailed information about 1436// the error. 1437// 1438// See the AWS API reference guide for Amazon WorkSpaces's 1439// API operation ModifyWorkspaceProperties for usage and error information. 1440// 1441// Returned Error Codes: 1442// * ErrCodeInvalidParameterValuesException "InvalidParameterValuesException" 1443// One or more parameter values are not valid. 1444// 1445// * ErrCodeInvalidResourceStateException "InvalidResourceStateException" 1446// The state of the resource is not valid for this operation. 1447// 1448// * ErrCodeOperationInProgressException "OperationInProgressException" 1449// The properties of this WorkSpace are currently being modified. Try again 1450// in a moment. 1451// 1452// * ErrCodeUnsupportedWorkspaceConfigurationException "UnsupportedWorkspaceConfigurationException" 1453// The configuration of this WorkSpace is not supported for this operation. 1454// For more information, see the Amazon WorkSpaces Administration Guide (http://docs.aws.amazon.com/workspaces/latest/adminguide/). 1455// 1456// * ErrCodeResourceNotFoundException "ResourceNotFoundException" 1457// The resource could not be found. 1458// 1459// * ErrCodeAccessDeniedException "AccessDeniedException" 1460// The user is not authorized to access a resource. 1461// 1462// * ErrCodeResourceUnavailableException "ResourceUnavailableException" 1463// The specified resource is not available. 1464// 1465// See also, https://docs.aws.amazon.com/goto/WebAPI/workspaces-2015-04-08/ModifyWorkspaceProperties 1466func (c *WorkSpaces) ModifyWorkspaceProperties(input *ModifyWorkspacePropertiesInput) (*ModifyWorkspacePropertiesOutput, error) { 1467 req, out := c.ModifyWorkspacePropertiesRequest(input) 1468 return out, req.Send() 1469} 1470 1471// ModifyWorkspacePropertiesWithContext is the same as ModifyWorkspaceProperties with the addition of 1472// the ability to pass a context and additional request options. 1473// 1474// See ModifyWorkspaceProperties for details on how to use this API operation. 1475// 1476// The context must be non-nil and will be used for request cancellation. If 1477// the context is nil a panic will occur. In the future the SDK may create 1478// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 1479// for more information on using Contexts. 1480func (c *WorkSpaces) ModifyWorkspacePropertiesWithContext(ctx aws.Context, input *ModifyWorkspacePropertiesInput, opts ...request.Option) (*ModifyWorkspacePropertiesOutput, error) { 1481 req, out := c.ModifyWorkspacePropertiesRequest(input) 1482 req.SetContext(ctx) 1483 req.ApplyOptions(opts...) 1484 return out, req.Send() 1485} 1486 1487const opModifyWorkspaceState = "ModifyWorkspaceState" 1488 1489// ModifyWorkspaceStateRequest generates a "aws/request.Request" representing the 1490// client's request for the ModifyWorkspaceState operation. The "output" return 1491// value will be populated with the request's response once the request completes 1492// successfuly. 1493// 1494// Use "Send" method on the returned Request to send the API call to the service. 1495// the "output" return value is not valid until after Send returns without error. 1496// 1497// See ModifyWorkspaceState for more information on using the ModifyWorkspaceState 1498// API call, and error handling. 1499// 1500// This method is useful when you want to inject custom logic or configuration 1501// into the SDK's request lifecycle. Such as custom headers, or retry logic. 1502// 1503// 1504// // Example sending a request using the ModifyWorkspaceStateRequest method. 1505// req, resp := client.ModifyWorkspaceStateRequest(params) 1506// 1507// err := req.Send() 1508// if err == nil { // resp is now filled 1509// fmt.Println(resp) 1510// } 1511// 1512// See also, https://docs.aws.amazon.com/goto/WebAPI/workspaces-2015-04-08/ModifyWorkspaceState 1513func (c *WorkSpaces) ModifyWorkspaceStateRequest(input *ModifyWorkspaceStateInput) (req *request.Request, output *ModifyWorkspaceStateOutput) { 1514 op := &request.Operation{ 1515 Name: opModifyWorkspaceState, 1516 HTTPMethod: "POST", 1517 HTTPPath: "/", 1518 } 1519 1520 if input == nil { 1521 input = &ModifyWorkspaceStateInput{} 1522 } 1523 1524 output = &ModifyWorkspaceStateOutput{} 1525 req = c.newRequest(op, input, output) 1526 return 1527} 1528 1529// ModifyWorkspaceState API operation for Amazon WorkSpaces. 1530// 1531// Sets the state of the specified WorkSpace. 1532// 1533// To maintain a WorkSpace without being interrupted, set the WorkSpace state 1534// to ADMIN_MAINTENANCE. WorkSpaces in this state do not respond to requests 1535// to reboot, stop, start, or rebuild. An AutoStop WorkSpace in this state is 1536// not stopped. Users can log into a WorkSpace in the ADMIN_MAINTENANCE state. 1537// 1538// Returns awserr.Error for service API and SDK errors. Use runtime type assertions 1539// with awserr.Error's Code and Message methods to get detailed information about 1540// the error. 1541// 1542// See the AWS API reference guide for Amazon WorkSpaces's 1543// API operation ModifyWorkspaceState for usage and error information. 1544// 1545// Returned Error Codes: 1546// * ErrCodeInvalidParameterValuesException "InvalidParameterValuesException" 1547// One or more parameter values are not valid. 1548// 1549// * ErrCodeInvalidResourceStateException "InvalidResourceStateException" 1550// The state of the resource is not valid for this operation. 1551// 1552// * ErrCodeResourceNotFoundException "ResourceNotFoundException" 1553// The resource could not be found. 1554// 1555// See also, https://docs.aws.amazon.com/goto/WebAPI/workspaces-2015-04-08/ModifyWorkspaceState 1556func (c *WorkSpaces) ModifyWorkspaceState(input *ModifyWorkspaceStateInput) (*ModifyWorkspaceStateOutput, error) { 1557 req, out := c.ModifyWorkspaceStateRequest(input) 1558 return out, req.Send() 1559} 1560 1561// ModifyWorkspaceStateWithContext is the same as ModifyWorkspaceState with the addition of 1562// the ability to pass a context and additional request options. 1563// 1564// See ModifyWorkspaceState for details on how to use this API operation. 1565// 1566// The context must be non-nil and will be used for request cancellation. If 1567// the context is nil a panic will occur. In the future the SDK may create 1568// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 1569// for more information on using Contexts. 1570func (c *WorkSpaces) ModifyWorkspaceStateWithContext(ctx aws.Context, input *ModifyWorkspaceStateInput, opts ...request.Option) (*ModifyWorkspaceStateOutput, error) { 1571 req, out := c.ModifyWorkspaceStateRequest(input) 1572 req.SetContext(ctx) 1573 req.ApplyOptions(opts...) 1574 return out, req.Send() 1575} 1576 1577const opRebootWorkspaces = "RebootWorkspaces" 1578 1579// RebootWorkspacesRequest generates a "aws/request.Request" representing the 1580// client's request for the RebootWorkspaces operation. The "output" return 1581// value will be populated with the request's response once the request completes 1582// successfuly. 1583// 1584// Use "Send" method on the returned Request to send the API call to the service. 1585// the "output" return value is not valid until after Send returns without error. 1586// 1587// See RebootWorkspaces for more information on using the RebootWorkspaces 1588// API call, and error handling. 1589// 1590// This method is useful when you want to inject custom logic or configuration 1591// into the SDK's request lifecycle. Such as custom headers, or retry logic. 1592// 1593// 1594// // Example sending a request using the RebootWorkspacesRequest method. 1595// req, resp := client.RebootWorkspacesRequest(params) 1596// 1597// err := req.Send() 1598// if err == nil { // resp is now filled 1599// fmt.Println(resp) 1600// } 1601// 1602// See also, https://docs.aws.amazon.com/goto/WebAPI/workspaces-2015-04-08/RebootWorkspaces 1603func (c *WorkSpaces) RebootWorkspacesRequest(input *RebootWorkspacesInput) (req *request.Request, output *RebootWorkspacesOutput) { 1604 op := &request.Operation{ 1605 Name: opRebootWorkspaces, 1606 HTTPMethod: "POST", 1607 HTTPPath: "/", 1608 } 1609 1610 if input == nil { 1611 input = &RebootWorkspacesInput{} 1612 } 1613 1614 output = &RebootWorkspacesOutput{} 1615 req = c.newRequest(op, input, output) 1616 return 1617} 1618 1619// RebootWorkspaces API operation for Amazon WorkSpaces. 1620// 1621// Reboots the specified WorkSpaces. 1622// 1623// You cannot reboot a WorkSpace unless its state is AVAILABLE or UNHEALTHY. 1624// 1625// This operation is asynchronous and returns before the WorkSpaces have rebooted. 1626// 1627// Returns awserr.Error for service API and SDK errors. Use runtime type assertions 1628// with awserr.Error's Code and Message methods to get detailed information about 1629// the error. 1630// 1631// See the AWS API reference guide for Amazon WorkSpaces's 1632// API operation RebootWorkspaces for usage and error information. 1633// See also, https://docs.aws.amazon.com/goto/WebAPI/workspaces-2015-04-08/RebootWorkspaces 1634func (c *WorkSpaces) RebootWorkspaces(input *RebootWorkspacesInput) (*RebootWorkspacesOutput, error) { 1635 req, out := c.RebootWorkspacesRequest(input) 1636 return out, req.Send() 1637} 1638 1639// RebootWorkspacesWithContext is the same as RebootWorkspaces with the addition of 1640// the ability to pass a context and additional request options. 1641// 1642// See RebootWorkspaces for details on how to use this API operation. 1643// 1644// The context must be non-nil and will be used for request cancellation. If 1645// the context is nil a panic will occur. In the future the SDK may create 1646// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 1647// for more information on using Contexts. 1648func (c *WorkSpaces) RebootWorkspacesWithContext(ctx aws.Context, input *RebootWorkspacesInput, opts ...request.Option) (*RebootWorkspacesOutput, error) { 1649 req, out := c.RebootWorkspacesRequest(input) 1650 req.SetContext(ctx) 1651 req.ApplyOptions(opts...) 1652 return out, req.Send() 1653} 1654 1655const opRebuildWorkspaces = "RebuildWorkspaces" 1656 1657// RebuildWorkspacesRequest generates a "aws/request.Request" representing the 1658// client's request for the RebuildWorkspaces operation. The "output" return 1659// value will be populated with the request's response once the request completes 1660// successfuly. 1661// 1662// Use "Send" method on the returned Request to send the API call to the service. 1663// the "output" return value is not valid until after Send returns without error. 1664// 1665// See RebuildWorkspaces for more information on using the RebuildWorkspaces 1666// API call, and error handling. 1667// 1668// This method is useful when you want to inject custom logic or configuration 1669// into the SDK's request lifecycle. Such as custom headers, or retry logic. 1670// 1671// 1672// // Example sending a request using the RebuildWorkspacesRequest method. 1673// req, resp := client.RebuildWorkspacesRequest(params) 1674// 1675// err := req.Send() 1676// if err == nil { // resp is now filled 1677// fmt.Println(resp) 1678// } 1679// 1680// See also, https://docs.aws.amazon.com/goto/WebAPI/workspaces-2015-04-08/RebuildWorkspaces 1681func (c *WorkSpaces) RebuildWorkspacesRequest(input *RebuildWorkspacesInput) (req *request.Request, output *RebuildWorkspacesOutput) { 1682 op := &request.Operation{ 1683 Name: opRebuildWorkspaces, 1684 HTTPMethod: "POST", 1685 HTTPPath: "/", 1686 } 1687 1688 if input == nil { 1689 input = &RebuildWorkspacesInput{} 1690 } 1691 1692 output = &RebuildWorkspacesOutput{} 1693 req = c.newRequest(op, input, output) 1694 return 1695} 1696 1697// RebuildWorkspaces API operation for Amazon WorkSpaces. 1698// 1699// Rebuilds the specified WorkSpace. 1700// 1701// You cannot rebuild a WorkSpace unless its state is AVAILABLE, ERROR, or UNHEALTHY. 1702// 1703// Rebuilding a WorkSpace is a potentially destructive action that can result 1704// in the loss of data. For more information, see Rebuild a WorkSpace (http://docs.aws.amazon.com/workspaces/latest/adminguide/reset-workspace.html). 1705// 1706// This operation is asynchronous and returns before the WorkSpaces have been 1707// completely rebuilt. 1708// 1709// Returns awserr.Error for service API and SDK errors. Use runtime type assertions 1710// with awserr.Error's Code and Message methods to get detailed information about 1711// the error. 1712// 1713// See the AWS API reference guide for Amazon WorkSpaces's 1714// API operation RebuildWorkspaces for usage and error information. 1715// See also, https://docs.aws.amazon.com/goto/WebAPI/workspaces-2015-04-08/RebuildWorkspaces 1716func (c *WorkSpaces) RebuildWorkspaces(input *RebuildWorkspacesInput) (*RebuildWorkspacesOutput, error) { 1717 req, out := c.RebuildWorkspacesRequest(input) 1718 return out, req.Send() 1719} 1720 1721// RebuildWorkspacesWithContext is the same as RebuildWorkspaces with the addition of 1722// the ability to pass a context and additional request options. 1723// 1724// See RebuildWorkspaces for details on how to use this API operation. 1725// 1726// The context must be non-nil and will be used for request cancellation. If 1727// the context is nil a panic will occur. In the future the SDK may create 1728// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 1729// for more information on using Contexts. 1730func (c *WorkSpaces) RebuildWorkspacesWithContext(ctx aws.Context, input *RebuildWorkspacesInput, opts ...request.Option) (*RebuildWorkspacesOutput, error) { 1731 req, out := c.RebuildWorkspacesRequest(input) 1732 req.SetContext(ctx) 1733 req.ApplyOptions(opts...) 1734 return out, req.Send() 1735} 1736 1737const opRevokeIpRules = "RevokeIpRules" 1738 1739// RevokeIpRulesRequest generates a "aws/request.Request" representing the 1740// client's request for the RevokeIpRules operation. The "output" return 1741// value will be populated with the request's response once the request completes 1742// successfuly. 1743// 1744// Use "Send" method on the returned Request to send the API call to the service. 1745// the "output" return value is not valid until after Send returns without error. 1746// 1747// See RevokeIpRules for more information on using the RevokeIpRules 1748// API call, and error handling. 1749// 1750// This method is useful when you want to inject custom logic or configuration 1751// into the SDK's request lifecycle. Such as custom headers, or retry logic. 1752// 1753// 1754// // Example sending a request using the RevokeIpRulesRequest method. 1755// req, resp := client.RevokeIpRulesRequest(params) 1756// 1757// err := req.Send() 1758// if err == nil { // resp is now filled 1759// fmt.Println(resp) 1760// } 1761// 1762// See also, https://docs.aws.amazon.com/goto/WebAPI/workspaces-2015-04-08/RevokeIpRules 1763func (c *WorkSpaces) RevokeIpRulesRequest(input *RevokeIpRulesInput) (req *request.Request, output *RevokeIpRulesOutput) { 1764 op := &request.Operation{ 1765 Name: opRevokeIpRules, 1766 HTTPMethod: "POST", 1767 HTTPPath: "/", 1768 } 1769 1770 if input == nil { 1771 input = &RevokeIpRulesInput{} 1772 } 1773 1774 output = &RevokeIpRulesOutput{} 1775 req = c.newRequest(op, input, output) 1776 return 1777} 1778 1779// RevokeIpRules API operation for Amazon WorkSpaces. 1780// 1781// Removes one or more rules from the specified IP access control group. 1782// 1783// Returns awserr.Error for service API and SDK errors. Use runtime type assertions 1784// with awserr.Error's Code and Message methods to get detailed information about 1785// the error. 1786// 1787// See the AWS API reference guide for Amazon WorkSpaces's 1788// API operation RevokeIpRules for usage and error information. 1789// 1790// Returned Error Codes: 1791// * ErrCodeInvalidParameterValuesException "InvalidParameterValuesException" 1792// One or more parameter values are not valid. 1793// 1794// * ErrCodeResourceNotFoundException "ResourceNotFoundException" 1795// The resource could not be found. 1796// 1797// * ErrCodeInvalidResourceStateException "InvalidResourceStateException" 1798// The state of the resource is not valid for this operation. 1799// 1800// * ErrCodeAccessDeniedException "AccessDeniedException" 1801// The user is not authorized to access a resource. 1802// 1803// See also, https://docs.aws.amazon.com/goto/WebAPI/workspaces-2015-04-08/RevokeIpRules 1804func (c *WorkSpaces) RevokeIpRules(input *RevokeIpRulesInput) (*RevokeIpRulesOutput, error) { 1805 req, out := c.RevokeIpRulesRequest(input) 1806 return out, req.Send() 1807} 1808 1809// RevokeIpRulesWithContext is the same as RevokeIpRules with the addition of 1810// the ability to pass a context and additional request options. 1811// 1812// See RevokeIpRules for details on how to use this API operation. 1813// 1814// The context must be non-nil and will be used for request cancellation. If 1815// the context is nil a panic will occur. In the future the SDK may create 1816// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 1817// for more information on using Contexts. 1818func (c *WorkSpaces) RevokeIpRulesWithContext(ctx aws.Context, input *RevokeIpRulesInput, opts ...request.Option) (*RevokeIpRulesOutput, error) { 1819 req, out := c.RevokeIpRulesRequest(input) 1820 req.SetContext(ctx) 1821 req.ApplyOptions(opts...) 1822 return out, req.Send() 1823} 1824 1825const opStartWorkspaces = "StartWorkspaces" 1826 1827// StartWorkspacesRequest generates a "aws/request.Request" representing the 1828// client's request for the StartWorkspaces operation. The "output" return 1829// value will be populated with the request's response once the request completes 1830// successfuly. 1831// 1832// Use "Send" method on the returned Request to send the API call to the service. 1833// the "output" return value is not valid until after Send returns without error. 1834// 1835// See StartWorkspaces for more information on using the StartWorkspaces 1836// API call, and error handling. 1837// 1838// This method is useful when you want to inject custom logic or configuration 1839// into the SDK's request lifecycle. Such as custom headers, or retry logic. 1840// 1841// 1842// // Example sending a request using the StartWorkspacesRequest method. 1843// req, resp := client.StartWorkspacesRequest(params) 1844// 1845// err := req.Send() 1846// if err == nil { // resp is now filled 1847// fmt.Println(resp) 1848// } 1849// 1850// See also, https://docs.aws.amazon.com/goto/WebAPI/workspaces-2015-04-08/StartWorkspaces 1851func (c *WorkSpaces) StartWorkspacesRequest(input *StartWorkspacesInput) (req *request.Request, output *StartWorkspacesOutput) { 1852 op := &request.Operation{ 1853 Name: opStartWorkspaces, 1854 HTTPMethod: "POST", 1855 HTTPPath: "/", 1856 } 1857 1858 if input == nil { 1859 input = &StartWorkspacesInput{} 1860 } 1861 1862 output = &StartWorkspacesOutput{} 1863 req = c.newRequest(op, input, output) 1864 return 1865} 1866 1867// StartWorkspaces API operation for Amazon WorkSpaces. 1868// 1869// Starts the specified WorkSpaces. 1870// 1871// You cannot start a WorkSpace unless it has a running mode of AutoStop and 1872// a state of STOPPED. 1873// 1874// Returns awserr.Error for service API and SDK errors. Use runtime type assertions 1875// with awserr.Error's Code and Message methods to get detailed information about 1876// the error. 1877// 1878// See the AWS API reference guide for Amazon WorkSpaces's 1879// API operation StartWorkspaces for usage and error information. 1880// See also, https://docs.aws.amazon.com/goto/WebAPI/workspaces-2015-04-08/StartWorkspaces 1881func (c *WorkSpaces) StartWorkspaces(input *StartWorkspacesInput) (*StartWorkspacesOutput, error) { 1882 req, out := c.StartWorkspacesRequest(input) 1883 return out, req.Send() 1884} 1885 1886// StartWorkspacesWithContext is the same as StartWorkspaces with the addition of 1887// the ability to pass a context and additional request options. 1888// 1889// See StartWorkspaces for details on how to use this API operation. 1890// 1891// The context must be non-nil and will be used for request cancellation. If 1892// the context is nil a panic will occur. In the future the SDK may create 1893// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 1894// for more information on using Contexts. 1895func (c *WorkSpaces) StartWorkspacesWithContext(ctx aws.Context, input *StartWorkspacesInput, opts ...request.Option) (*StartWorkspacesOutput, error) { 1896 req, out := c.StartWorkspacesRequest(input) 1897 req.SetContext(ctx) 1898 req.ApplyOptions(opts...) 1899 return out, req.Send() 1900} 1901 1902const opStopWorkspaces = "StopWorkspaces" 1903 1904// StopWorkspacesRequest generates a "aws/request.Request" representing the 1905// client's request for the StopWorkspaces operation. The "output" return 1906// value will be populated with the request's response once the request completes 1907// successfuly. 1908// 1909// Use "Send" method on the returned Request to send the API call to the service. 1910// the "output" return value is not valid until after Send returns without error. 1911// 1912// See StopWorkspaces for more information on using the StopWorkspaces 1913// API call, and error handling. 1914// 1915// This method is useful when you want to inject custom logic or configuration 1916// into the SDK's request lifecycle. Such as custom headers, or retry logic. 1917// 1918// 1919// // Example sending a request using the StopWorkspacesRequest method. 1920// req, resp := client.StopWorkspacesRequest(params) 1921// 1922// err := req.Send() 1923// if err == nil { // resp is now filled 1924// fmt.Println(resp) 1925// } 1926// 1927// See also, https://docs.aws.amazon.com/goto/WebAPI/workspaces-2015-04-08/StopWorkspaces 1928func (c *WorkSpaces) StopWorkspacesRequest(input *StopWorkspacesInput) (req *request.Request, output *StopWorkspacesOutput) { 1929 op := &request.Operation{ 1930 Name: opStopWorkspaces, 1931 HTTPMethod: "POST", 1932 HTTPPath: "/", 1933 } 1934 1935 if input == nil { 1936 input = &StopWorkspacesInput{} 1937 } 1938 1939 output = &StopWorkspacesOutput{} 1940 req = c.newRequest(op, input, output) 1941 return 1942} 1943 1944// StopWorkspaces API operation for Amazon WorkSpaces. 1945// 1946// Stops the specified WorkSpaces. 1947// 1948// You cannot stop a WorkSpace unless it has a running mode of AutoStop and 1949// a state of AVAILABLE, IMPAIRED, UNHEALTHY, or ERROR. 1950// 1951// Returns awserr.Error for service API and SDK errors. Use runtime type assertions 1952// with awserr.Error's Code and Message methods to get detailed information about 1953// the error. 1954// 1955// See the AWS API reference guide for Amazon WorkSpaces's 1956// API operation StopWorkspaces for usage and error information. 1957// See also, https://docs.aws.amazon.com/goto/WebAPI/workspaces-2015-04-08/StopWorkspaces 1958func (c *WorkSpaces) StopWorkspaces(input *StopWorkspacesInput) (*StopWorkspacesOutput, error) { 1959 req, out := c.StopWorkspacesRequest(input) 1960 return out, req.Send() 1961} 1962 1963// StopWorkspacesWithContext is the same as StopWorkspaces with the addition of 1964// the ability to pass a context and additional request options. 1965// 1966// See StopWorkspaces for details on how to use this API operation. 1967// 1968// The context must be non-nil and will be used for request cancellation. If 1969// the context is nil a panic will occur. In the future the SDK may create 1970// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 1971// for more information on using Contexts. 1972func (c *WorkSpaces) StopWorkspacesWithContext(ctx aws.Context, input *StopWorkspacesInput, opts ...request.Option) (*StopWorkspacesOutput, error) { 1973 req, out := c.StopWorkspacesRequest(input) 1974 req.SetContext(ctx) 1975 req.ApplyOptions(opts...) 1976 return out, req.Send() 1977} 1978 1979const opTerminateWorkspaces = "TerminateWorkspaces" 1980 1981// TerminateWorkspacesRequest generates a "aws/request.Request" representing the 1982// client's request for the TerminateWorkspaces operation. The "output" return 1983// value will be populated with the request's response once the request completes 1984// successfuly. 1985// 1986// Use "Send" method on the returned Request to send the API call to the service. 1987// the "output" return value is not valid until after Send returns without error. 1988// 1989// See TerminateWorkspaces for more information on using the TerminateWorkspaces 1990// API call, and error handling. 1991// 1992// This method is useful when you want to inject custom logic or configuration 1993// into the SDK's request lifecycle. Such as custom headers, or retry logic. 1994// 1995// 1996// // Example sending a request using the TerminateWorkspacesRequest method. 1997// req, resp := client.TerminateWorkspacesRequest(params) 1998// 1999// err := req.Send() 2000// if err == nil { // resp is now filled 2001// fmt.Println(resp) 2002// } 2003// 2004// See also, https://docs.aws.amazon.com/goto/WebAPI/workspaces-2015-04-08/TerminateWorkspaces 2005func (c *WorkSpaces) TerminateWorkspacesRequest(input *TerminateWorkspacesInput) (req *request.Request, output *TerminateWorkspacesOutput) { 2006 op := &request.Operation{ 2007 Name: opTerminateWorkspaces, 2008 HTTPMethod: "POST", 2009 HTTPPath: "/", 2010 } 2011 2012 if input == nil { 2013 input = &TerminateWorkspacesInput{} 2014 } 2015 2016 output = &TerminateWorkspacesOutput{} 2017 req = c.newRequest(op, input, output) 2018 return 2019} 2020 2021// TerminateWorkspaces API operation for Amazon WorkSpaces. 2022// 2023// Terminates the specified WorkSpaces. 2024// 2025// Terminating a WorkSpace is a permanent action and cannot be undone. The user's 2026// data is destroyed. If you need to archive any user data, contact Amazon Web 2027// Services before terminating the WorkSpace. 2028// 2029// You can terminate a WorkSpace that is in any state except SUSPENDED. 2030// 2031// This operation is asynchronous and returns before the WorkSpaces have been 2032// completely terminated. 2033// 2034// Returns awserr.Error for service API and SDK errors. Use runtime type assertions 2035// with awserr.Error's Code and Message methods to get detailed information about 2036// the error. 2037// 2038// See the AWS API reference guide for Amazon WorkSpaces's 2039// API operation TerminateWorkspaces for usage and error information. 2040// See also, https://docs.aws.amazon.com/goto/WebAPI/workspaces-2015-04-08/TerminateWorkspaces 2041func (c *WorkSpaces) TerminateWorkspaces(input *TerminateWorkspacesInput) (*TerminateWorkspacesOutput, error) { 2042 req, out := c.TerminateWorkspacesRequest(input) 2043 return out, req.Send() 2044} 2045 2046// TerminateWorkspacesWithContext is the same as TerminateWorkspaces with the addition of 2047// the ability to pass a context and additional request options. 2048// 2049// See TerminateWorkspaces for details on how to use this API operation. 2050// 2051// The context must be non-nil and will be used for request cancellation. If 2052// the context is nil a panic will occur. In the future the SDK may create 2053// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 2054// for more information on using Contexts. 2055func (c *WorkSpaces) TerminateWorkspacesWithContext(ctx aws.Context, input *TerminateWorkspacesInput, opts ...request.Option) (*TerminateWorkspacesOutput, error) { 2056 req, out := c.TerminateWorkspacesRequest(input) 2057 req.SetContext(ctx) 2058 req.ApplyOptions(opts...) 2059 return out, req.Send() 2060} 2061 2062const opUpdateRulesOfIpGroup = "UpdateRulesOfIpGroup" 2063 2064// UpdateRulesOfIpGroupRequest generates a "aws/request.Request" representing the 2065// client's request for the UpdateRulesOfIpGroup operation. The "output" return 2066// value will be populated with the request's response once the request completes 2067// successfuly. 2068// 2069// Use "Send" method on the returned Request to send the API call to the service. 2070// the "output" return value is not valid until after Send returns without error. 2071// 2072// See UpdateRulesOfIpGroup for more information on using the UpdateRulesOfIpGroup 2073// API call, and error handling. 2074// 2075// This method is useful when you want to inject custom logic or configuration 2076// into the SDK's request lifecycle. Such as custom headers, or retry logic. 2077// 2078// 2079// // Example sending a request using the UpdateRulesOfIpGroupRequest method. 2080// req, resp := client.UpdateRulesOfIpGroupRequest(params) 2081// 2082// err := req.Send() 2083// if err == nil { // resp is now filled 2084// fmt.Println(resp) 2085// } 2086// 2087// See also, https://docs.aws.amazon.com/goto/WebAPI/workspaces-2015-04-08/UpdateRulesOfIpGroup 2088func (c *WorkSpaces) UpdateRulesOfIpGroupRequest(input *UpdateRulesOfIpGroupInput) (req *request.Request, output *UpdateRulesOfIpGroupOutput) { 2089 op := &request.Operation{ 2090 Name: opUpdateRulesOfIpGroup, 2091 HTTPMethod: "POST", 2092 HTTPPath: "/", 2093 } 2094 2095 if input == nil { 2096 input = &UpdateRulesOfIpGroupInput{} 2097 } 2098 2099 output = &UpdateRulesOfIpGroupOutput{} 2100 req = c.newRequest(op, input, output) 2101 return 2102} 2103 2104// UpdateRulesOfIpGroup API operation for Amazon WorkSpaces. 2105// 2106// Replaces the current rules of the specified IP access control group with 2107// the specified rules. 2108// 2109// Returns awserr.Error for service API and SDK errors. Use runtime type assertions 2110// with awserr.Error's Code and Message methods to get detailed information about 2111// the error. 2112// 2113// See the AWS API reference guide for Amazon WorkSpaces's 2114// API operation UpdateRulesOfIpGroup for usage and error information. 2115// 2116// Returned Error Codes: 2117// * ErrCodeInvalidParameterValuesException "InvalidParameterValuesException" 2118// One or more parameter values are not valid. 2119// 2120// * ErrCodeResourceNotFoundException "ResourceNotFoundException" 2121// The resource could not be found. 2122// 2123// * ErrCodeResourceLimitExceededException "ResourceLimitExceededException" 2124// Your resource limits have been exceeded. 2125// 2126// * ErrCodeInvalidResourceStateException "InvalidResourceStateException" 2127// The state of the resource is not valid for this operation. 2128// 2129// * ErrCodeAccessDeniedException "AccessDeniedException" 2130// The user is not authorized to access a resource. 2131// 2132// See also, https://docs.aws.amazon.com/goto/WebAPI/workspaces-2015-04-08/UpdateRulesOfIpGroup 2133func (c *WorkSpaces) UpdateRulesOfIpGroup(input *UpdateRulesOfIpGroupInput) (*UpdateRulesOfIpGroupOutput, error) { 2134 req, out := c.UpdateRulesOfIpGroupRequest(input) 2135 return out, req.Send() 2136} 2137 2138// UpdateRulesOfIpGroupWithContext is the same as UpdateRulesOfIpGroup with the addition of 2139// the ability to pass a context and additional request options. 2140// 2141// See UpdateRulesOfIpGroup for details on how to use this API operation. 2142// 2143// The context must be non-nil and will be used for request cancellation. If 2144// the context is nil a panic will occur. In the future the SDK may create 2145// sub-contexts for http.Requests. See https://golang.org/pkg/context/ 2146// for more information on using Contexts. 2147func (c *WorkSpaces) UpdateRulesOfIpGroupWithContext(ctx aws.Context, input *UpdateRulesOfIpGroupInput, opts ...request.Option) (*UpdateRulesOfIpGroupOutput, error) { 2148 req, out := c.UpdateRulesOfIpGroupRequest(input) 2149 req.SetContext(ctx) 2150 req.ApplyOptions(opts...) 2151 return out, req.Send() 2152} 2153 2154type AssociateIpGroupsInput struct { 2155 _ struct{} `type:"structure"` 2156 2157 // The ID of the directory. 2158 // 2159 // DirectoryId is a required field 2160 DirectoryId *string `type:"string" required:"true"` 2161 2162 // The IDs of one or more IP access control groups. 2163 // 2164 // GroupIds is a required field 2165 GroupIds []*string `type:"list" required:"true"` 2166} 2167 2168// String returns the string representation 2169func (s AssociateIpGroupsInput) String() string { 2170 return awsutil.Prettify(s) 2171} 2172 2173// GoString returns the string representation 2174func (s AssociateIpGroupsInput) GoString() string { 2175 return s.String() 2176} 2177 2178// Validate inspects the fields of the type to determine if they are valid. 2179func (s *AssociateIpGroupsInput) Validate() error { 2180 invalidParams := request.ErrInvalidParams{Context: "AssociateIpGroupsInput"} 2181 if s.DirectoryId == nil { 2182 invalidParams.Add(request.NewErrParamRequired("DirectoryId")) 2183 } 2184 if s.GroupIds == nil { 2185 invalidParams.Add(request.NewErrParamRequired("GroupIds")) 2186 } 2187 2188 if invalidParams.Len() > 0 { 2189 return invalidParams 2190 } 2191 return nil 2192} 2193 2194// SetDirectoryId sets the DirectoryId field's value. 2195func (s *AssociateIpGroupsInput) SetDirectoryId(v string) *AssociateIpGroupsInput { 2196 s.DirectoryId = &v 2197 return s 2198} 2199 2200// SetGroupIds sets the GroupIds field's value. 2201func (s *AssociateIpGroupsInput) SetGroupIds(v []*string) *AssociateIpGroupsInput { 2202 s.GroupIds = v 2203 return s 2204} 2205 2206type AssociateIpGroupsOutput struct { 2207 _ struct{} `type:"structure"` 2208} 2209 2210// String returns the string representation 2211func (s AssociateIpGroupsOutput) String() string { 2212 return awsutil.Prettify(s) 2213} 2214 2215// GoString returns the string representation 2216func (s AssociateIpGroupsOutput) GoString() string { 2217 return s.String() 2218} 2219 2220type AuthorizeIpRulesInput struct { 2221 _ struct{} `type:"structure"` 2222 2223 // The ID of the group. 2224 // 2225 // GroupId is a required field 2226 GroupId *string `type:"string" required:"true"` 2227 2228 // The rules to add to the group. 2229 // 2230 // UserRules is a required field 2231 UserRules []*IpRuleItem `type:"list" required:"true"` 2232} 2233 2234// String returns the string representation 2235func (s AuthorizeIpRulesInput) String() string { 2236 return awsutil.Prettify(s) 2237} 2238 2239// GoString returns the string representation 2240func (s AuthorizeIpRulesInput) GoString() string { 2241 return s.String() 2242} 2243 2244// Validate inspects the fields of the type to determine if they are valid. 2245func (s *AuthorizeIpRulesInput) Validate() error { 2246 invalidParams := request.ErrInvalidParams{Context: "AuthorizeIpRulesInput"} 2247 if s.GroupId == nil { 2248 invalidParams.Add(request.NewErrParamRequired("GroupId")) 2249 } 2250 if s.UserRules == nil { 2251 invalidParams.Add(request.NewErrParamRequired("UserRules")) 2252 } 2253 2254 if invalidParams.Len() > 0 { 2255 return invalidParams 2256 } 2257 return nil 2258} 2259 2260// SetGroupId sets the GroupId field's value. 2261func (s *AuthorizeIpRulesInput) SetGroupId(v string) *AuthorizeIpRulesInput { 2262 s.GroupId = &v 2263 return s 2264} 2265 2266// SetUserRules sets the UserRules field's value. 2267func (s *AuthorizeIpRulesInput) SetUserRules(v []*IpRuleItem) *AuthorizeIpRulesInput { 2268 s.UserRules = v 2269 return s 2270} 2271 2272type AuthorizeIpRulesOutput struct { 2273 _ struct{} `type:"structure"` 2274} 2275 2276// String returns the string representation 2277func (s AuthorizeIpRulesOutput) String() string { 2278 return awsutil.Prettify(s) 2279} 2280 2281// GoString returns the string representation 2282func (s AuthorizeIpRulesOutput) GoString() string { 2283 return s.String() 2284} 2285 2286// Information about the compute type. 2287type ComputeType struct { 2288 _ struct{} `type:"structure"` 2289 2290 // The compute type. 2291 Name *string `type:"string" enum:"Compute"` 2292} 2293 2294// String returns the string representation 2295func (s ComputeType) String() string { 2296 return awsutil.Prettify(s) 2297} 2298 2299// GoString returns the string representation 2300func (s ComputeType) GoString() string { 2301 return s.String() 2302} 2303 2304// SetName sets the Name field's value. 2305func (s *ComputeType) SetName(v string) *ComputeType { 2306 s.Name = &v 2307 return s 2308} 2309 2310type CreateIpGroupInput struct { 2311 _ struct{} `type:"structure"` 2312 2313 // The description of the group. 2314 GroupDesc *string `type:"string"` 2315 2316 // The name of the group. 2317 // 2318 // GroupName is a required field 2319 GroupName *string `type:"string" required:"true"` 2320 2321 // The rules to add to the group. 2322 UserRules []*IpRuleItem `type:"list"` 2323} 2324 2325// String returns the string representation 2326func (s CreateIpGroupInput) String() string { 2327 return awsutil.Prettify(s) 2328} 2329 2330// GoString returns the string representation 2331func (s CreateIpGroupInput) GoString() string { 2332 return s.String() 2333} 2334 2335// Validate inspects the fields of the type to determine if they are valid. 2336func (s *CreateIpGroupInput) Validate() error { 2337 invalidParams := request.ErrInvalidParams{Context: "CreateIpGroupInput"} 2338 if s.GroupName == nil { 2339 invalidParams.Add(request.NewErrParamRequired("GroupName")) 2340 } 2341 2342 if invalidParams.Len() > 0 { 2343 return invalidParams 2344 } 2345 return nil 2346} 2347 2348// SetGroupDesc sets the GroupDesc field's value. 2349func (s *CreateIpGroupInput) SetGroupDesc(v string) *CreateIpGroupInput { 2350 s.GroupDesc = &v 2351 return s 2352} 2353 2354// SetGroupName sets the GroupName field's value. 2355func (s *CreateIpGroupInput) SetGroupName(v string) *CreateIpGroupInput { 2356 s.GroupName = &v 2357 return s 2358} 2359 2360// SetUserRules sets the UserRules field's value. 2361func (s *CreateIpGroupInput) SetUserRules(v []*IpRuleItem) *CreateIpGroupInput { 2362 s.UserRules = v 2363 return s 2364} 2365 2366type CreateIpGroupOutput struct { 2367 _ struct{} `type:"structure"` 2368 2369 // The ID of the group. 2370 GroupId *string `type:"string"` 2371} 2372 2373// String returns the string representation 2374func (s CreateIpGroupOutput) String() string { 2375 return awsutil.Prettify(s) 2376} 2377 2378// GoString returns the string representation 2379func (s CreateIpGroupOutput) GoString() string { 2380 return s.String() 2381} 2382 2383// SetGroupId sets the GroupId field's value. 2384func (s *CreateIpGroupOutput) SetGroupId(v string) *CreateIpGroupOutput { 2385 s.GroupId = &v 2386 return s 2387} 2388 2389type CreateTagsInput struct { 2390 _ struct{} `type:"structure"` 2391 2392 // The ID of the WorkSpace. To find this ID, use DescribeWorkspaces. 2393 // 2394 // ResourceId is a required field 2395 ResourceId *string `min:"1" type:"string" required:"true"` 2396 2397 // The tags. Each WorkSpace can have a maximum of 50 tags. 2398 // 2399 // Tags is a required field 2400 Tags []*Tag `type:"list" required:"true"` 2401} 2402 2403// String returns the string representation 2404func (s CreateTagsInput) String() string { 2405 return awsutil.Prettify(s) 2406} 2407 2408// GoString returns the string representation 2409func (s CreateTagsInput) GoString() string { 2410 return s.String() 2411} 2412 2413// Validate inspects the fields of the type to determine if they are valid. 2414func (s *CreateTagsInput) Validate() error { 2415 invalidParams := request.ErrInvalidParams{Context: "CreateTagsInput"} 2416 if s.ResourceId == nil { 2417 invalidParams.Add(request.NewErrParamRequired("ResourceId")) 2418 } 2419 if s.ResourceId != nil && len(*s.ResourceId) < 1 { 2420 invalidParams.Add(request.NewErrParamMinLen("ResourceId", 1)) 2421 } 2422 if s.Tags == nil { 2423 invalidParams.Add(request.NewErrParamRequired("Tags")) 2424 } 2425 if s.Tags != nil { 2426 for i, v := range s.Tags { 2427 if v == nil { 2428 continue 2429 } 2430 if err := v.Validate(); err != nil { 2431 invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Tags", i), err.(request.ErrInvalidParams)) 2432 } 2433 } 2434 } 2435 2436 if invalidParams.Len() > 0 { 2437 return invalidParams 2438 } 2439 return nil 2440} 2441 2442// SetResourceId sets the ResourceId field's value. 2443func (s *CreateTagsInput) SetResourceId(v string) *CreateTagsInput { 2444 s.ResourceId = &v 2445 return s 2446} 2447 2448// SetTags sets the Tags field's value. 2449func (s *CreateTagsInput) SetTags(v []*Tag) *CreateTagsInput { 2450 s.Tags = v 2451 return s 2452} 2453 2454type CreateTagsOutput struct { 2455 _ struct{} `type:"structure"` 2456} 2457 2458// String returns the string representation 2459func (s CreateTagsOutput) String() string { 2460 return awsutil.Prettify(s) 2461} 2462 2463// GoString returns the string representation 2464func (s CreateTagsOutput) GoString() string { 2465 return s.String() 2466} 2467 2468type CreateWorkspacesInput struct { 2469 _ struct{} `type:"structure"` 2470 2471 // The WorkSpaces to create. You can specify up to 25 WorkSpaces. 2472 // 2473 // Workspaces is a required field 2474 Workspaces []*WorkspaceRequest `min:"1" type:"list" required:"true"` 2475} 2476 2477// String returns the string representation 2478func (s CreateWorkspacesInput) String() string { 2479 return awsutil.Prettify(s) 2480} 2481 2482// GoString returns the string representation 2483func (s CreateWorkspacesInput) GoString() string { 2484 return s.String() 2485} 2486 2487// Validate inspects the fields of the type to determine if they are valid. 2488func (s *CreateWorkspacesInput) Validate() error { 2489 invalidParams := request.ErrInvalidParams{Context: "CreateWorkspacesInput"} 2490 if s.Workspaces == nil { 2491 invalidParams.Add(request.NewErrParamRequired("Workspaces")) 2492 } 2493 if s.Workspaces != nil && len(s.Workspaces) < 1 { 2494 invalidParams.Add(request.NewErrParamMinLen("Workspaces", 1)) 2495 } 2496 if s.Workspaces != nil { 2497 for i, v := range s.Workspaces { 2498 if v == nil { 2499 continue 2500 } 2501 if err := v.Validate(); err != nil { 2502 invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Workspaces", i), err.(request.ErrInvalidParams)) 2503 } 2504 } 2505 } 2506 2507 if invalidParams.Len() > 0 { 2508 return invalidParams 2509 } 2510 return nil 2511} 2512 2513// SetWorkspaces sets the Workspaces field's value. 2514func (s *CreateWorkspacesInput) SetWorkspaces(v []*WorkspaceRequest) *CreateWorkspacesInput { 2515 s.Workspaces = v 2516 return s 2517} 2518 2519type CreateWorkspacesOutput struct { 2520 _ struct{} `type:"structure"` 2521 2522 // Information about the WorkSpaces that could not be created. 2523 FailedRequests []*FailedCreateWorkspaceRequest `type:"list"` 2524 2525 // Information about the WorkSpaces that were created. 2526 // 2527 // Because this operation is asynchronous, the identifier returned is not immediately 2528 // available for use with other operations. For example, if you call DescribeWorkspaces 2529 // before the WorkSpace is created, the information returned can be incomplete. 2530 PendingRequests []*Workspace `type:"list"` 2531} 2532 2533// String returns the string representation 2534func (s CreateWorkspacesOutput) String() string { 2535 return awsutil.Prettify(s) 2536} 2537 2538// GoString returns the string representation 2539func (s CreateWorkspacesOutput) GoString() string { 2540 return s.String() 2541} 2542 2543// SetFailedRequests sets the FailedRequests field's value. 2544func (s *CreateWorkspacesOutput) SetFailedRequests(v []*FailedCreateWorkspaceRequest) *CreateWorkspacesOutput { 2545 s.FailedRequests = v 2546 return s 2547} 2548 2549// SetPendingRequests sets the PendingRequests field's value. 2550func (s *CreateWorkspacesOutput) SetPendingRequests(v []*Workspace) *CreateWorkspacesOutput { 2551 s.PendingRequests = v 2552 return s 2553} 2554 2555// Information about defaults used to create a WorkSpace. 2556type DefaultWorkspaceCreationProperties struct { 2557 _ struct{} `type:"structure"` 2558 2559 // The identifier of any security groups to apply to WorkSpaces when they are 2560 // created. 2561 CustomSecurityGroupId *string `type:"string"` 2562 2563 // The organizational unit (OU) in the directory for the WorkSpace machine accounts. 2564 DefaultOu *string `type:"string"` 2565 2566 // The public IP address to attach to all WorkSpaces that are created or rebuilt. 2567 EnableInternetAccess *bool `type:"boolean"` 2568 2569 // Indicates whether the directory is enabled for Amazon WorkDocs. 2570 EnableWorkDocs *bool `type:"boolean"` 2571 2572 // Indicates whether the WorkSpace user is an administrator on the WorkSpace. 2573 UserEnabledAsLocalAdministrator *bool `type:"boolean"` 2574} 2575 2576// String returns the string representation 2577func (s DefaultWorkspaceCreationProperties) String() string { 2578 return awsutil.Prettify(s) 2579} 2580 2581// GoString returns the string representation 2582func (s DefaultWorkspaceCreationProperties) GoString() string { 2583 return s.String() 2584} 2585 2586// SetCustomSecurityGroupId sets the CustomSecurityGroupId field's value. 2587func (s *DefaultWorkspaceCreationProperties) SetCustomSecurityGroupId(v string) *DefaultWorkspaceCreationProperties { 2588 s.CustomSecurityGroupId = &v 2589 return s 2590} 2591 2592// SetDefaultOu sets the DefaultOu field's value. 2593func (s *DefaultWorkspaceCreationProperties) SetDefaultOu(v string) *DefaultWorkspaceCreationProperties { 2594 s.DefaultOu = &v 2595 return s 2596} 2597 2598// SetEnableInternetAccess sets the EnableInternetAccess field's value. 2599func (s *DefaultWorkspaceCreationProperties) SetEnableInternetAccess(v bool) *DefaultWorkspaceCreationProperties { 2600 s.EnableInternetAccess = &v 2601 return s 2602} 2603 2604// SetEnableWorkDocs sets the EnableWorkDocs field's value. 2605func (s *DefaultWorkspaceCreationProperties) SetEnableWorkDocs(v bool) *DefaultWorkspaceCreationProperties { 2606 s.EnableWorkDocs = &v 2607 return s 2608} 2609 2610// SetUserEnabledAsLocalAdministrator sets the UserEnabledAsLocalAdministrator field's value. 2611func (s *DefaultWorkspaceCreationProperties) SetUserEnabledAsLocalAdministrator(v bool) *DefaultWorkspaceCreationProperties { 2612 s.UserEnabledAsLocalAdministrator = &v 2613 return s 2614} 2615 2616type DeleteIpGroupInput struct { 2617 _ struct{} `type:"structure"` 2618 2619 // The ID of the IP access control group. 2620 // 2621 // GroupId is a required field 2622 GroupId *string `type:"string" required:"true"` 2623} 2624 2625// String returns the string representation 2626func (s DeleteIpGroupInput) String() string { 2627 return awsutil.Prettify(s) 2628} 2629 2630// GoString returns the string representation 2631func (s DeleteIpGroupInput) GoString() string { 2632 return s.String() 2633} 2634 2635// Validate inspects the fields of the type to determine if they are valid. 2636func (s *DeleteIpGroupInput) Validate() error { 2637 invalidParams := request.ErrInvalidParams{Context: "DeleteIpGroupInput"} 2638 if s.GroupId == nil { 2639 invalidParams.Add(request.NewErrParamRequired("GroupId")) 2640 } 2641 2642 if invalidParams.Len() > 0 { 2643 return invalidParams 2644 } 2645 return nil 2646} 2647 2648// SetGroupId sets the GroupId field's value. 2649func (s *DeleteIpGroupInput) SetGroupId(v string) *DeleteIpGroupInput { 2650 s.GroupId = &v 2651 return s 2652} 2653 2654type DeleteIpGroupOutput struct { 2655 _ struct{} `type:"structure"` 2656} 2657 2658// String returns the string representation 2659func (s DeleteIpGroupOutput) String() string { 2660 return awsutil.Prettify(s) 2661} 2662 2663// GoString returns the string representation 2664func (s DeleteIpGroupOutput) GoString() string { 2665 return s.String() 2666} 2667 2668type DeleteTagsInput struct { 2669 _ struct{} `type:"structure"` 2670 2671 // The ID of the WorkSpace. To find this ID, use DescribeWorkspaces. 2672 // 2673 // ResourceId is a required field 2674 ResourceId *string `min:"1" type:"string" required:"true"` 2675 2676 // The tag keys. 2677 // 2678 // TagKeys is a required field 2679 TagKeys []*string `type:"list" required:"true"` 2680} 2681 2682// String returns the string representation 2683func (s DeleteTagsInput) String() string { 2684 return awsutil.Prettify(s) 2685} 2686 2687// GoString returns the string representation 2688func (s DeleteTagsInput) GoString() string { 2689 return s.String() 2690} 2691 2692// Validate inspects the fields of the type to determine if they are valid. 2693func (s *DeleteTagsInput) Validate() error { 2694 invalidParams := request.ErrInvalidParams{Context: "DeleteTagsInput"} 2695 if s.ResourceId == nil { 2696 invalidParams.Add(request.NewErrParamRequired("ResourceId")) 2697 } 2698 if s.ResourceId != nil && len(*s.ResourceId) < 1 { 2699 invalidParams.Add(request.NewErrParamMinLen("ResourceId", 1)) 2700 } 2701 if s.TagKeys == nil { 2702 invalidParams.Add(request.NewErrParamRequired("TagKeys")) 2703 } 2704 2705 if invalidParams.Len() > 0 { 2706 return invalidParams 2707 } 2708 return nil 2709} 2710 2711// SetResourceId sets the ResourceId field's value. 2712func (s *DeleteTagsInput) SetResourceId(v string) *DeleteTagsInput { 2713 s.ResourceId = &v 2714 return s 2715} 2716 2717// SetTagKeys sets the TagKeys field's value. 2718func (s *DeleteTagsInput) SetTagKeys(v []*string) *DeleteTagsInput { 2719 s.TagKeys = v 2720 return s 2721} 2722 2723type DeleteTagsOutput struct { 2724 _ struct{} `type:"structure"` 2725} 2726 2727// String returns the string representation 2728func (s DeleteTagsOutput) String() string { 2729 return awsutil.Prettify(s) 2730} 2731 2732// GoString returns the string representation 2733func (s DeleteTagsOutput) GoString() string { 2734 return s.String() 2735} 2736 2737type DescribeIpGroupsInput struct { 2738 _ struct{} `type:"structure"` 2739 2740 // The IDs of one or more IP access control groups. 2741 GroupIds []*string `type:"list"` 2742 2743 // The maximum number of items to return. 2744 MaxResults *int64 `min:"1" type:"integer"` 2745 2746 // The token for the next set of results. (You received this token from a previous 2747 // call.) 2748 NextToken *string `min:"1" type:"string"` 2749} 2750 2751// String returns the string representation 2752func (s DescribeIpGroupsInput) String() string { 2753 return awsutil.Prettify(s) 2754} 2755 2756// GoString returns the string representation 2757func (s DescribeIpGroupsInput) GoString() string { 2758 return s.String() 2759} 2760 2761// Validate inspects the fields of the type to determine if they are valid. 2762func (s *DescribeIpGroupsInput) Validate() error { 2763 invalidParams := request.ErrInvalidParams{Context: "DescribeIpGroupsInput"} 2764 if s.MaxResults != nil && *s.MaxResults < 1 { 2765 invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1)) 2766 } 2767 if s.NextToken != nil && len(*s.NextToken) < 1 { 2768 invalidParams.Add(request.NewErrParamMinLen("NextToken", 1)) 2769 } 2770 2771 if invalidParams.Len() > 0 { 2772 return invalidParams 2773 } 2774 return nil 2775} 2776 2777// SetGroupIds sets the GroupIds field's value. 2778func (s *DescribeIpGroupsInput) SetGroupIds(v []*string) *DescribeIpGroupsInput { 2779 s.GroupIds = v 2780 return s 2781} 2782 2783// SetMaxResults sets the MaxResults field's value. 2784func (s *DescribeIpGroupsInput) SetMaxResults(v int64) *DescribeIpGroupsInput { 2785 s.MaxResults = &v 2786 return s 2787} 2788 2789// SetNextToken sets the NextToken field's value. 2790func (s *DescribeIpGroupsInput) SetNextToken(v string) *DescribeIpGroupsInput { 2791 s.NextToken = &v 2792 return s 2793} 2794 2795type DescribeIpGroupsOutput struct { 2796 _ struct{} `type:"structure"` 2797 2798 // The token to use to retrieve the next set of results, or null if there are 2799 // no more results available. This token is valid for one day and must be used 2800 // within that time frame. 2801 NextToken *string `min:"1" type:"string"` 2802 2803 // Information about the IP access control groups. 2804 Result []*IpGroup `type:"list"` 2805} 2806 2807// String returns the string representation 2808func (s DescribeIpGroupsOutput) String() string { 2809 return awsutil.Prettify(s) 2810} 2811 2812// GoString returns the string representation 2813func (s DescribeIpGroupsOutput) GoString() string { 2814 return s.String() 2815} 2816 2817// SetNextToken sets the NextToken field's value. 2818func (s *DescribeIpGroupsOutput) SetNextToken(v string) *DescribeIpGroupsOutput { 2819 s.NextToken = &v 2820 return s 2821} 2822 2823// SetResult sets the Result field's value. 2824func (s *DescribeIpGroupsOutput) SetResult(v []*IpGroup) *DescribeIpGroupsOutput { 2825 s.Result = v 2826 return s 2827} 2828 2829type DescribeTagsInput struct { 2830 _ struct{} `type:"structure"` 2831 2832 // The ID of the WorkSpace. To find this ID, use DescribeWorkspaces. 2833 // 2834 // ResourceId is a required field 2835 ResourceId *string `min:"1" type:"string" required:"true"` 2836} 2837 2838// String returns the string representation 2839func (s DescribeTagsInput) String() string { 2840 return awsutil.Prettify(s) 2841} 2842 2843// GoString returns the string representation 2844func (s DescribeTagsInput) GoString() string { 2845 return s.String() 2846} 2847 2848// Validate inspects the fields of the type to determine if they are valid. 2849func (s *DescribeTagsInput) Validate() error { 2850 invalidParams := request.ErrInvalidParams{Context: "DescribeTagsInput"} 2851 if s.ResourceId == nil { 2852 invalidParams.Add(request.NewErrParamRequired("ResourceId")) 2853 } 2854 if s.ResourceId != nil && len(*s.ResourceId) < 1 { 2855 invalidParams.Add(request.NewErrParamMinLen("ResourceId", 1)) 2856 } 2857 2858 if invalidParams.Len() > 0 { 2859 return invalidParams 2860 } 2861 return nil 2862} 2863 2864// SetResourceId sets the ResourceId field's value. 2865func (s *DescribeTagsInput) SetResourceId(v string) *DescribeTagsInput { 2866 s.ResourceId = &v 2867 return s 2868} 2869 2870type DescribeTagsOutput struct { 2871 _ struct{} `type:"structure"` 2872 2873 // The tags. 2874 TagList []*Tag `type:"list"` 2875} 2876 2877// String returns the string representation 2878func (s DescribeTagsOutput) String() string { 2879 return awsutil.Prettify(s) 2880} 2881 2882// GoString returns the string representation 2883func (s DescribeTagsOutput) GoString() string { 2884 return s.String() 2885} 2886 2887// SetTagList sets the TagList field's value. 2888func (s *DescribeTagsOutput) SetTagList(v []*Tag) *DescribeTagsOutput { 2889 s.TagList = v 2890 return s 2891} 2892 2893type DescribeWorkspaceBundlesInput struct { 2894 _ struct{} `type:"structure"` 2895 2896 // The IDs of the bundles. This parameter cannot be combined with any other 2897 // filter. 2898 BundleIds []*string `min:"1" type:"list"` 2899 2900 // The token for the next set of results. (You received this token from a previous 2901 // call.) 2902 NextToken *string `min:"1" type:"string"` 2903 2904 // The owner of the bundles. This parameter cannot be combined with any other 2905 // filter. 2906 // 2907 // Specify AMAZON to describe the bundles provided by AWS or null to describe 2908 // the bundles that belong to your account. 2909 Owner *string `type:"string"` 2910} 2911 2912// String returns the string representation 2913func (s DescribeWorkspaceBundlesInput) String() string { 2914 return awsutil.Prettify(s) 2915} 2916 2917// GoString returns the string representation 2918func (s DescribeWorkspaceBundlesInput) GoString() string { 2919 return s.String() 2920} 2921 2922// Validate inspects the fields of the type to determine if they are valid. 2923func (s *DescribeWorkspaceBundlesInput) Validate() error { 2924 invalidParams := request.ErrInvalidParams{Context: "DescribeWorkspaceBundlesInput"} 2925 if s.BundleIds != nil && len(s.BundleIds) < 1 { 2926 invalidParams.Add(request.NewErrParamMinLen("BundleIds", 1)) 2927 } 2928 if s.NextToken != nil && len(*s.NextToken) < 1 { 2929 invalidParams.Add(request.NewErrParamMinLen("NextToken", 1)) 2930 } 2931 2932 if invalidParams.Len() > 0 { 2933 return invalidParams 2934 } 2935 return nil 2936} 2937 2938// SetBundleIds sets the BundleIds field's value. 2939func (s *DescribeWorkspaceBundlesInput) SetBundleIds(v []*string) *DescribeWorkspaceBundlesInput { 2940 s.BundleIds = v 2941 return s 2942} 2943 2944// SetNextToken sets the NextToken field's value. 2945func (s *DescribeWorkspaceBundlesInput) SetNextToken(v string) *DescribeWorkspaceBundlesInput { 2946 s.NextToken = &v 2947 return s 2948} 2949 2950// SetOwner sets the Owner field's value. 2951func (s *DescribeWorkspaceBundlesInput) SetOwner(v string) *DescribeWorkspaceBundlesInput { 2952 s.Owner = &v 2953 return s 2954} 2955 2956type DescribeWorkspaceBundlesOutput struct { 2957 _ struct{} `type:"structure"` 2958 2959 // Information about the bundles. 2960 Bundles []*WorkspaceBundle `type:"list"` 2961 2962 // The token to use to retrieve the next set of results, or null if there are 2963 // no more results available. This token is valid for one day and must be used 2964 // within that time frame. 2965 NextToken *string `min:"1" type:"string"` 2966} 2967 2968// String returns the string representation 2969func (s DescribeWorkspaceBundlesOutput) String() string { 2970 return awsutil.Prettify(s) 2971} 2972 2973// GoString returns the string representation 2974func (s DescribeWorkspaceBundlesOutput) GoString() string { 2975 return s.String() 2976} 2977 2978// SetBundles sets the Bundles field's value. 2979func (s *DescribeWorkspaceBundlesOutput) SetBundles(v []*WorkspaceBundle) *DescribeWorkspaceBundlesOutput { 2980 s.Bundles = v 2981 return s 2982} 2983 2984// SetNextToken sets the NextToken field's value. 2985func (s *DescribeWorkspaceBundlesOutput) SetNextToken(v string) *DescribeWorkspaceBundlesOutput { 2986 s.NextToken = &v 2987 return s 2988} 2989 2990type DescribeWorkspaceDirectoriesInput struct { 2991 _ struct{} `type:"structure"` 2992 2993 // The identifiers of the directories. If the value is null, all directories 2994 // are retrieved. 2995 DirectoryIds []*string `min:"1" type:"list"` 2996 2997 // The token for the next set of results. (You received this token from a previous 2998 // call.) 2999 NextToken *string `min:"1" type:"string"` 3000} 3001 3002// String returns the string representation 3003func (s DescribeWorkspaceDirectoriesInput) String() string { 3004 return awsutil.Prettify(s) 3005} 3006 3007// GoString returns the string representation 3008func (s DescribeWorkspaceDirectoriesInput) GoString() string { 3009 return s.String() 3010} 3011 3012// Validate inspects the fields of the type to determine if they are valid. 3013func (s *DescribeWorkspaceDirectoriesInput) Validate() error { 3014 invalidParams := request.ErrInvalidParams{Context: "DescribeWorkspaceDirectoriesInput"} 3015 if s.DirectoryIds != nil && len(s.DirectoryIds) < 1 { 3016 invalidParams.Add(request.NewErrParamMinLen("DirectoryIds", 1)) 3017 } 3018 if s.NextToken != nil && len(*s.NextToken) < 1 { 3019 invalidParams.Add(request.NewErrParamMinLen("NextToken", 1)) 3020 } 3021 3022 if invalidParams.Len() > 0 { 3023 return invalidParams 3024 } 3025 return nil 3026} 3027 3028// SetDirectoryIds sets the DirectoryIds field's value. 3029func (s *DescribeWorkspaceDirectoriesInput) SetDirectoryIds(v []*string) *DescribeWorkspaceDirectoriesInput { 3030 s.DirectoryIds = v 3031 return s 3032} 3033 3034// SetNextToken sets the NextToken field's value. 3035func (s *DescribeWorkspaceDirectoriesInput) SetNextToken(v string) *DescribeWorkspaceDirectoriesInput { 3036 s.NextToken = &v 3037 return s 3038} 3039 3040type DescribeWorkspaceDirectoriesOutput struct { 3041 _ struct{} `type:"structure"` 3042 3043 // Information about the directories. 3044 Directories []*WorkspaceDirectory `type:"list"` 3045 3046 // The token to use to retrieve the next set of results, or null if there are 3047 // no more results available. This token is valid for one day and must be used 3048 // within that time frame. 3049 NextToken *string `min:"1" type:"string"` 3050} 3051 3052// String returns the string representation 3053func (s DescribeWorkspaceDirectoriesOutput) String() string { 3054 return awsutil.Prettify(s) 3055} 3056 3057// GoString returns the string representation 3058func (s DescribeWorkspaceDirectoriesOutput) GoString() string { 3059 return s.String() 3060} 3061 3062// SetDirectories sets the Directories field's value. 3063func (s *DescribeWorkspaceDirectoriesOutput) SetDirectories(v []*WorkspaceDirectory) *DescribeWorkspaceDirectoriesOutput { 3064 s.Directories = v 3065 return s 3066} 3067 3068// SetNextToken sets the NextToken field's value. 3069func (s *DescribeWorkspaceDirectoriesOutput) SetNextToken(v string) *DescribeWorkspaceDirectoriesOutput { 3070 s.NextToken = &v 3071 return s 3072} 3073 3074type DescribeWorkspacesConnectionStatusInput struct { 3075 _ struct{} `type:"structure"` 3076 3077 // The token for the next set of results. (You received this token from a previous 3078 // call.) 3079 NextToken *string `min:"1" type:"string"` 3080 3081 // The identifiers of the WorkSpaces. You can specify up to 25 WorkSpaces. 3082 WorkspaceIds []*string `min:"1" type:"list"` 3083} 3084 3085// String returns the string representation 3086func (s DescribeWorkspacesConnectionStatusInput) String() string { 3087 return awsutil.Prettify(s) 3088} 3089 3090// GoString returns the string representation 3091func (s DescribeWorkspacesConnectionStatusInput) GoString() string { 3092 return s.String() 3093} 3094 3095// Validate inspects the fields of the type to determine if they are valid. 3096func (s *DescribeWorkspacesConnectionStatusInput) Validate() error { 3097 invalidParams := request.ErrInvalidParams{Context: "DescribeWorkspacesConnectionStatusInput"} 3098 if s.NextToken != nil && len(*s.NextToken) < 1 { 3099 invalidParams.Add(request.NewErrParamMinLen("NextToken", 1)) 3100 } 3101 if s.WorkspaceIds != nil && len(s.WorkspaceIds) < 1 { 3102 invalidParams.Add(request.NewErrParamMinLen("WorkspaceIds", 1)) 3103 } 3104 3105 if invalidParams.Len() > 0 { 3106 return invalidParams 3107 } 3108 return nil 3109} 3110 3111// SetNextToken sets the NextToken field's value. 3112func (s *DescribeWorkspacesConnectionStatusInput) SetNextToken(v string) *DescribeWorkspacesConnectionStatusInput { 3113 s.NextToken = &v 3114 return s 3115} 3116 3117// SetWorkspaceIds sets the WorkspaceIds field's value. 3118func (s *DescribeWorkspacesConnectionStatusInput) SetWorkspaceIds(v []*string) *DescribeWorkspacesConnectionStatusInput { 3119 s.WorkspaceIds = v 3120 return s 3121} 3122 3123type DescribeWorkspacesConnectionStatusOutput struct { 3124 _ struct{} `type:"structure"` 3125 3126 // The token to use to retrieve the next set of results, or null if there are 3127 // no more results available. 3128 NextToken *string `min:"1" type:"string"` 3129 3130 // Information about the connection status of the WorkSpace. 3131 WorkspacesConnectionStatus []*WorkspaceConnectionStatus `type:"list"` 3132} 3133 3134// String returns the string representation 3135func (s DescribeWorkspacesConnectionStatusOutput) String() string { 3136 return awsutil.Prettify(s) 3137} 3138 3139// GoString returns the string representation 3140func (s DescribeWorkspacesConnectionStatusOutput) GoString() string { 3141 return s.String() 3142} 3143 3144// SetNextToken sets the NextToken field's value. 3145func (s *DescribeWorkspacesConnectionStatusOutput) SetNextToken(v string) *DescribeWorkspacesConnectionStatusOutput { 3146 s.NextToken = &v 3147 return s 3148} 3149 3150// SetWorkspacesConnectionStatus sets the WorkspacesConnectionStatus field's value. 3151func (s *DescribeWorkspacesConnectionStatusOutput) SetWorkspacesConnectionStatus(v []*WorkspaceConnectionStatus) *DescribeWorkspacesConnectionStatusOutput { 3152 s.WorkspacesConnectionStatus = v 3153 return s 3154} 3155 3156type DescribeWorkspacesInput struct { 3157 _ struct{} `type:"structure"` 3158 3159 // The ID of the bundle. All WorkSpaces that are created from this bundle are 3160 // retrieved. This parameter cannot be combined with any other filter. 3161 BundleId *string `type:"string"` 3162 3163 // The ID of the directory. In addition, you can optionally specify a specific 3164 // directory user (see UserName). This parameter cannot be combined with any 3165 // other filter. 3166 DirectoryId *string `type:"string"` 3167 3168 // The maximum number of items to return. 3169 Limit *int64 `min:"1" type:"integer"` 3170 3171 // The token for the next set of results. (You received this token from a previous 3172 // call.) 3173 NextToken *string `min:"1" type:"string"` 3174 3175 // The name of the directory user. You must specify this parameter with DirectoryId. 3176 UserName *string `min:"1" type:"string"` 3177 3178 // The IDs of the WorkSpaces. This parameter cannot be combined with any other 3179 // filter. 3180 // 3181 // Because the CreateWorkspaces operation is asynchronous, the identifier it 3182 // returns is not immediately available. If you immediately call DescribeWorkspaces 3183 // with this identifier, no information is returned. 3184 WorkspaceIds []*string `min:"1" type:"list"` 3185} 3186 3187// String returns the string representation 3188func (s DescribeWorkspacesInput) String() string { 3189 return awsutil.Prettify(s) 3190} 3191 3192// GoString returns the string representation 3193func (s DescribeWorkspacesInput) GoString() string { 3194 return s.String() 3195} 3196 3197// Validate inspects the fields of the type to determine if they are valid. 3198func (s *DescribeWorkspacesInput) Validate() error { 3199 invalidParams := request.ErrInvalidParams{Context: "DescribeWorkspacesInput"} 3200 if s.Limit != nil && *s.Limit < 1 { 3201 invalidParams.Add(request.NewErrParamMinValue("Limit", 1)) 3202 } 3203 if s.NextToken != nil && len(*s.NextToken) < 1 { 3204 invalidParams.Add(request.NewErrParamMinLen("NextToken", 1)) 3205 } 3206 if s.UserName != nil && len(*s.UserName) < 1 { 3207 invalidParams.Add(request.NewErrParamMinLen("UserName", 1)) 3208 } 3209 if s.WorkspaceIds != nil && len(s.WorkspaceIds) < 1 { 3210 invalidParams.Add(request.NewErrParamMinLen("WorkspaceIds", 1)) 3211 } 3212 3213 if invalidParams.Len() > 0 { 3214 return invalidParams 3215 } 3216 return nil 3217} 3218 3219// SetBundleId sets the BundleId field's value. 3220func (s *DescribeWorkspacesInput) SetBundleId(v string) *DescribeWorkspacesInput { 3221 s.BundleId = &v 3222 return s 3223} 3224 3225// SetDirectoryId sets the DirectoryId field's value. 3226func (s *DescribeWorkspacesInput) SetDirectoryId(v string) *DescribeWorkspacesInput { 3227 s.DirectoryId = &v 3228 return s 3229} 3230 3231// SetLimit sets the Limit field's value. 3232func (s *DescribeWorkspacesInput) SetLimit(v int64) *DescribeWorkspacesInput { 3233 s.Limit = &v 3234 return s 3235} 3236 3237// SetNextToken sets the NextToken field's value. 3238func (s *DescribeWorkspacesInput) SetNextToken(v string) *DescribeWorkspacesInput { 3239 s.NextToken = &v 3240 return s 3241} 3242 3243// SetUserName sets the UserName field's value. 3244func (s *DescribeWorkspacesInput) SetUserName(v string) *DescribeWorkspacesInput { 3245 s.UserName = &v 3246 return s 3247} 3248 3249// SetWorkspaceIds sets the WorkspaceIds field's value. 3250func (s *DescribeWorkspacesInput) SetWorkspaceIds(v []*string) *DescribeWorkspacesInput { 3251 s.WorkspaceIds = v 3252 return s 3253} 3254 3255type DescribeWorkspacesOutput struct { 3256 _ struct{} `type:"structure"` 3257 3258 // The token to use to retrieve the next set of results, or null if there are 3259 // no more results available. This token is valid for one day and must be used 3260 // within that time frame. 3261 NextToken *string `min:"1" type:"string"` 3262 3263 // Information about the WorkSpaces. 3264 // 3265 // Because CreateWorkspaces is an asynchronous operation, some of the returned 3266 // information could be incomplete. 3267 Workspaces []*Workspace `type:"list"` 3268} 3269 3270// String returns the string representation 3271func (s DescribeWorkspacesOutput) String() string { 3272 return awsutil.Prettify(s) 3273} 3274 3275// GoString returns the string representation 3276func (s DescribeWorkspacesOutput) GoString() string { 3277 return s.String() 3278} 3279 3280// SetNextToken sets the NextToken field's value. 3281func (s *DescribeWorkspacesOutput) SetNextToken(v string) *DescribeWorkspacesOutput { 3282 s.NextToken = &v 3283 return s 3284} 3285 3286// SetWorkspaces sets the Workspaces field's value. 3287func (s *DescribeWorkspacesOutput) SetWorkspaces(v []*Workspace) *DescribeWorkspacesOutput { 3288 s.Workspaces = v 3289 return s 3290} 3291 3292type DisassociateIpGroupsInput struct { 3293 _ struct{} `type:"structure"` 3294 3295 // The ID of the directory. 3296 // 3297 // DirectoryId is a required field 3298 DirectoryId *string `type:"string" required:"true"` 3299 3300 // The IDs of one or more IP access control groups. 3301 // 3302 // GroupIds is a required field 3303 GroupIds []*string `type:"list" required:"true"` 3304} 3305 3306// String returns the string representation 3307func (s DisassociateIpGroupsInput) String() string { 3308 return awsutil.Prettify(s) 3309} 3310 3311// GoString returns the string representation 3312func (s DisassociateIpGroupsInput) GoString() string { 3313 return s.String() 3314} 3315 3316// Validate inspects the fields of the type to determine if they are valid. 3317func (s *DisassociateIpGroupsInput) Validate() error { 3318 invalidParams := request.ErrInvalidParams{Context: "DisassociateIpGroupsInput"} 3319 if s.DirectoryId == nil { 3320 invalidParams.Add(request.NewErrParamRequired("DirectoryId")) 3321 } 3322 if s.GroupIds == nil { 3323 invalidParams.Add(request.NewErrParamRequired("GroupIds")) 3324 } 3325 3326 if invalidParams.Len() > 0 { 3327 return invalidParams 3328 } 3329 return nil 3330} 3331 3332// SetDirectoryId sets the DirectoryId field's value. 3333func (s *DisassociateIpGroupsInput) SetDirectoryId(v string) *DisassociateIpGroupsInput { 3334 s.DirectoryId = &v 3335 return s 3336} 3337 3338// SetGroupIds sets the GroupIds field's value. 3339func (s *DisassociateIpGroupsInput) SetGroupIds(v []*string) *DisassociateIpGroupsInput { 3340 s.GroupIds = v 3341 return s 3342} 3343 3344type DisassociateIpGroupsOutput struct { 3345 _ struct{} `type:"structure"` 3346} 3347 3348// String returns the string representation 3349func (s DisassociateIpGroupsOutput) String() string { 3350 return awsutil.Prettify(s) 3351} 3352 3353// GoString returns the string representation 3354func (s DisassociateIpGroupsOutput) GoString() string { 3355 return s.String() 3356} 3357 3358// Information about a WorkSpace that could not be created. 3359type FailedCreateWorkspaceRequest struct { 3360 _ struct{} `type:"structure"` 3361 3362 // The error code. 3363 ErrorCode *string `type:"string"` 3364 3365 // The textual error message. 3366 ErrorMessage *string `type:"string"` 3367 3368 // Information about the WorkSpace. 3369 WorkspaceRequest *WorkspaceRequest `type:"structure"` 3370} 3371 3372// String returns the string representation 3373func (s FailedCreateWorkspaceRequest) String() string { 3374 return awsutil.Prettify(s) 3375} 3376 3377// GoString returns the string representation 3378func (s FailedCreateWorkspaceRequest) GoString() string { 3379 return s.String() 3380} 3381 3382// SetErrorCode sets the ErrorCode field's value. 3383func (s *FailedCreateWorkspaceRequest) SetErrorCode(v string) *FailedCreateWorkspaceRequest { 3384 s.ErrorCode = &v 3385 return s 3386} 3387 3388// SetErrorMessage sets the ErrorMessage field's value. 3389func (s *FailedCreateWorkspaceRequest) SetErrorMessage(v string) *FailedCreateWorkspaceRequest { 3390 s.ErrorMessage = &v 3391 return s 3392} 3393 3394// SetWorkspaceRequest sets the WorkspaceRequest field's value. 3395func (s *FailedCreateWorkspaceRequest) SetWorkspaceRequest(v *WorkspaceRequest) *FailedCreateWorkspaceRequest { 3396 s.WorkspaceRequest = v 3397 return s 3398} 3399 3400// Information about a WorkSpace that could not be rebooted (RebootWorkspaces), 3401// rebuilt (RebuildWorkspaces), terminated (TerminateWorkspaces), started (StartWorkspaces), 3402// or stopped (StopWorkspaces). 3403type FailedWorkspaceChangeRequest struct { 3404 _ struct{} `type:"structure"` 3405 3406 // The error code. 3407 ErrorCode *string `type:"string"` 3408 3409 // The textual error message. 3410 ErrorMessage *string `type:"string"` 3411 3412 // The identifier of the WorkSpace. 3413 WorkspaceId *string `type:"string"` 3414} 3415 3416// String returns the string representation 3417func (s FailedWorkspaceChangeRequest) String() string { 3418 return awsutil.Prettify(s) 3419} 3420 3421// GoString returns the string representation 3422func (s FailedWorkspaceChangeRequest) GoString() string { 3423 return s.String() 3424} 3425 3426// SetErrorCode sets the ErrorCode field's value. 3427func (s *FailedWorkspaceChangeRequest) SetErrorCode(v string) *FailedWorkspaceChangeRequest { 3428 s.ErrorCode = &v 3429 return s 3430} 3431 3432// SetErrorMessage sets the ErrorMessage field's value. 3433func (s *FailedWorkspaceChangeRequest) SetErrorMessage(v string) *FailedWorkspaceChangeRequest { 3434 s.ErrorMessage = &v 3435 return s 3436} 3437 3438// SetWorkspaceId sets the WorkspaceId field's value. 3439func (s *FailedWorkspaceChangeRequest) SetWorkspaceId(v string) *FailedWorkspaceChangeRequest { 3440 s.WorkspaceId = &v 3441 return s 3442} 3443 3444// Information about an IP access control group. 3445type IpGroup struct { 3446 _ struct{} `type:"structure"` 3447 3448 // The description of the group. 3449 GroupDesc *string `locationName:"groupDesc" type:"string"` 3450 3451 // The ID of the group. 3452 GroupId *string `locationName:"groupId" type:"string"` 3453 3454 // The name of the group. 3455 GroupName *string `locationName:"groupName" type:"string"` 3456 3457 // The rules. 3458 UserRules []*IpRuleItem `locationName:"userRules" type:"list"` 3459} 3460 3461// String returns the string representation 3462func (s IpGroup) String() string { 3463 return awsutil.Prettify(s) 3464} 3465 3466// GoString returns the string representation 3467func (s IpGroup) GoString() string { 3468 return s.String() 3469} 3470 3471// SetGroupDesc sets the GroupDesc field's value. 3472func (s *IpGroup) SetGroupDesc(v string) *IpGroup { 3473 s.GroupDesc = &v 3474 return s 3475} 3476 3477// SetGroupId sets the GroupId field's value. 3478func (s *IpGroup) SetGroupId(v string) *IpGroup { 3479 s.GroupId = &v 3480 return s 3481} 3482 3483// SetGroupName sets the GroupName field's value. 3484func (s *IpGroup) SetGroupName(v string) *IpGroup { 3485 s.GroupName = &v 3486 return s 3487} 3488 3489// SetUserRules sets the UserRules field's value. 3490func (s *IpGroup) SetUserRules(v []*IpRuleItem) *IpGroup { 3491 s.UserRules = v 3492 return s 3493} 3494 3495// Information about a rule for an IP access control group. 3496type IpRuleItem struct { 3497 _ struct{} `type:"structure"` 3498 3499 // The IP address range, in CIDR notation. 3500 IpRule *string `locationName:"ipRule" type:"string"` 3501 3502 // The description. 3503 RuleDesc *string `locationName:"ruleDesc" type:"string"` 3504} 3505 3506// String returns the string representation 3507func (s IpRuleItem) String() string { 3508 return awsutil.Prettify(s) 3509} 3510 3511// GoString returns the string representation 3512func (s IpRuleItem) GoString() string { 3513 return s.String() 3514} 3515 3516// SetIpRule sets the IpRule field's value. 3517func (s *IpRuleItem) SetIpRule(v string) *IpRuleItem { 3518 s.IpRule = &v 3519 return s 3520} 3521 3522// SetRuleDesc sets the RuleDesc field's value. 3523func (s *IpRuleItem) SetRuleDesc(v string) *IpRuleItem { 3524 s.RuleDesc = &v 3525 return s 3526} 3527 3528// Information about a WorkSpace modification. 3529type ModificationState struct { 3530 _ struct{} `type:"structure"` 3531 3532 // The resource. 3533 Resource *string `type:"string" enum:"ModificationResourceEnum"` 3534 3535 // The modification state. 3536 State *string `type:"string" enum:"ModificationStateEnum"` 3537} 3538 3539// String returns the string representation 3540func (s ModificationState) String() string { 3541 return awsutil.Prettify(s) 3542} 3543 3544// GoString returns the string representation 3545func (s ModificationState) GoString() string { 3546 return s.String() 3547} 3548 3549// SetResource sets the Resource field's value. 3550func (s *ModificationState) SetResource(v string) *ModificationState { 3551 s.Resource = &v 3552 return s 3553} 3554 3555// SetState sets the State field's value. 3556func (s *ModificationState) SetState(v string) *ModificationState { 3557 s.State = &v 3558 return s 3559} 3560 3561type ModifyWorkspacePropertiesInput struct { 3562 _ struct{} `type:"structure"` 3563 3564 // The ID of the WorkSpace. 3565 // 3566 // WorkspaceId is a required field 3567 WorkspaceId *string `type:"string" required:"true"` 3568 3569 // The properties of the WorkSpace. 3570 // 3571 // WorkspaceProperties is a required field 3572 WorkspaceProperties *WorkspaceProperties `type:"structure" required:"true"` 3573} 3574 3575// String returns the string representation 3576func (s ModifyWorkspacePropertiesInput) String() string { 3577 return awsutil.Prettify(s) 3578} 3579 3580// GoString returns the string representation 3581func (s ModifyWorkspacePropertiesInput) GoString() string { 3582 return s.String() 3583} 3584 3585// Validate inspects the fields of the type to determine if they are valid. 3586func (s *ModifyWorkspacePropertiesInput) Validate() error { 3587 invalidParams := request.ErrInvalidParams{Context: "ModifyWorkspacePropertiesInput"} 3588 if s.WorkspaceId == nil { 3589 invalidParams.Add(request.NewErrParamRequired("WorkspaceId")) 3590 } 3591 if s.WorkspaceProperties == nil { 3592 invalidParams.Add(request.NewErrParamRequired("WorkspaceProperties")) 3593 } 3594 3595 if invalidParams.Len() > 0 { 3596 return invalidParams 3597 } 3598 return nil 3599} 3600 3601// SetWorkspaceId sets the WorkspaceId field's value. 3602func (s *ModifyWorkspacePropertiesInput) SetWorkspaceId(v string) *ModifyWorkspacePropertiesInput { 3603 s.WorkspaceId = &v 3604 return s 3605} 3606 3607// SetWorkspaceProperties sets the WorkspaceProperties field's value. 3608func (s *ModifyWorkspacePropertiesInput) SetWorkspaceProperties(v *WorkspaceProperties) *ModifyWorkspacePropertiesInput { 3609 s.WorkspaceProperties = v 3610 return s 3611} 3612 3613type ModifyWorkspacePropertiesOutput struct { 3614 _ struct{} `type:"structure"` 3615} 3616 3617// String returns the string representation 3618func (s ModifyWorkspacePropertiesOutput) String() string { 3619 return awsutil.Prettify(s) 3620} 3621 3622// GoString returns the string representation 3623func (s ModifyWorkspacePropertiesOutput) GoString() string { 3624 return s.String() 3625} 3626 3627type ModifyWorkspaceStateInput struct { 3628 _ struct{} `type:"structure"` 3629 3630 // The ID of the WorkSpace. 3631 // 3632 // WorkspaceId is a required field 3633 WorkspaceId *string `type:"string" required:"true"` 3634 3635 // The WorkSpace state. 3636 // 3637 // WorkspaceState is a required field 3638 WorkspaceState *string `type:"string" required:"true" enum:"TargetWorkspaceState"` 3639} 3640 3641// String returns the string representation 3642func (s ModifyWorkspaceStateInput) String() string { 3643 return awsutil.Prettify(s) 3644} 3645 3646// GoString returns the string representation 3647func (s ModifyWorkspaceStateInput) GoString() string { 3648 return s.String() 3649} 3650 3651// Validate inspects the fields of the type to determine if they are valid. 3652func (s *ModifyWorkspaceStateInput) Validate() error { 3653 invalidParams := request.ErrInvalidParams{Context: "ModifyWorkspaceStateInput"} 3654 if s.WorkspaceId == nil { 3655 invalidParams.Add(request.NewErrParamRequired("WorkspaceId")) 3656 } 3657 if s.WorkspaceState == nil { 3658 invalidParams.Add(request.NewErrParamRequired("WorkspaceState")) 3659 } 3660 3661 if invalidParams.Len() > 0 { 3662 return invalidParams 3663 } 3664 return nil 3665} 3666 3667// SetWorkspaceId sets the WorkspaceId field's value. 3668func (s *ModifyWorkspaceStateInput) SetWorkspaceId(v string) *ModifyWorkspaceStateInput { 3669 s.WorkspaceId = &v 3670 return s 3671} 3672 3673// SetWorkspaceState sets the WorkspaceState field's value. 3674func (s *ModifyWorkspaceStateInput) SetWorkspaceState(v string) *ModifyWorkspaceStateInput { 3675 s.WorkspaceState = &v 3676 return s 3677} 3678 3679type ModifyWorkspaceStateOutput struct { 3680 _ struct{} `type:"structure"` 3681} 3682 3683// String returns the string representation 3684func (s ModifyWorkspaceStateOutput) String() string { 3685 return awsutil.Prettify(s) 3686} 3687 3688// GoString returns the string representation 3689func (s ModifyWorkspaceStateOutput) GoString() string { 3690 return s.String() 3691} 3692 3693// Information used to reboot a WorkSpace. 3694type RebootRequest struct { 3695 _ struct{} `type:"structure"` 3696 3697 // The ID of the WorkSpace. 3698 // 3699 // WorkspaceId is a required field 3700 WorkspaceId *string `type:"string" required:"true"` 3701} 3702 3703// String returns the string representation 3704func (s RebootRequest) String() string { 3705 return awsutil.Prettify(s) 3706} 3707 3708// GoString returns the string representation 3709func (s RebootRequest) GoString() string { 3710 return s.String() 3711} 3712 3713// Validate inspects the fields of the type to determine if they are valid. 3714func (s *RebootRequest) Validate() error { 3715 invalidParams := request.ErrInvalidParams{Context: "RebootRequest"} 3716 if s.WorkspaceId == nil { 3717 invalidParams.Add(request.NewErrParamRequired("WorkspaceId")) 3718 } 3719 3720 if invalidParams.Len() > 0 { 3721 return invalidParams 3722 } 3723 return nil 3724} 3725 3726// SetWorkspaceId sets the WorkspaceId field's value. 3727func (s *RebootRequest) SetWorkspaceId(v string) *RebootRequest { 3728 s.WorkspaceId = &v 3729 return s 3730} 3731 3732type RebootWorkspacesInput struct { 3733 _ struct{} `type:"structure"` 3734 3735 // The WorkSpaces to reboot. You can specify up to 25 WorkSpaces. 3736 // 3737 // RebootWorkspaceRequests is a required field 3738 RebootWorkspaceRequests []*RebootRequest `min:"1" type:"list" required:"true"` 3739} 3740 3741// String returns the string representation 3742func (s RebootWorkspacesInput) String() string { 3743 return awsutil.Prettify(s) 3744} 3745 3746// GoString returns the string representation 3747func (s RebootWorkspacesInput) GoString() string { 3748 return s.String() 3749} 3750 3751// Validate inspects the fields of the type to determine if they are valid. 3752func (s *RebootWorkspacesInput) Validate() error { 3753 invalidParams := request.ErrInvalidParams{Context: "RebootWorkspacesInput"} 3754 if s.RebootWorkspaceRequests == nil { 3755 invalidParams.Add(request.NewErrParamRequired("RebootWorkspaceRequests")) 3756 } 3757 if s.RebootWorkspaceRequests != nil && len(s.RebootWorkspaceRequests) < 1 { 3758 invalidParams.Add(request.NewErrParamMinLen("RebootWorkspaceRequests", 1)) 3759 } 3760 if s.RebootWorkspaceRequests != nil { 3761 for i, v := range s.RebootWorkspaceRequests { 3762 if v == nil { 3763 continue 3764 } 3765 if err := v.Validate(); err != nil { 3766 invalidParams.AddNested(fmt.Sprintf("%s[%v]", "RebootWorkspaceRequests", i), err.(request.ErrInvalidParams)) 3767 } 3768 } 3769 } 3770 3771 if invalidParams.Len() > 0 { 3772 return invalidParams 3773 } 3774 return nil 3775} 3776 3777// SetRebootWorkspaceRequests sets the RebootWorkspaceRequests field's value. 3778func (s *RebootWorkspacesInput) SetRebootWorkspaceRequests(v []*RebootRequest) *RebootWorkspacesInput { 3779 s.RebootWorkspaceRequests = v 3780 return s 3781} 3782 3783type RebootWorkspacesOutput struct { 3784 _ struct{} `type:"structure"` 3785 3786 // Information about the WorkSpaces that could not be rebooted. 3787 FailedRequests []*FailedWorkspaceChangeRequest `type:"list"` 3788} 3789 3790// String returns the string representation 3791func (s RebootWorkspacesOutput) String() string { 3792 return awsutil.Prettify(s) 3793} 3794 3795// GoString returns the string representation 3796func (s RebootWorkspacesOutput) GoString() string { 3797 return s.String() 3798} 3799 3800// SetFailedRequests sets the FailedRequests field's value. 3801func (s *RebootWorkspacesOutput) SetFailedRequests(v []*FailedWorkspaceChangeRequest) *RebootWorkspacesOutput { 3802 s.FailedRequests = v 3803 return s 3804} 3805 3806// Information used to rebuild a WorkSpace. 3807type RebuildRequest struct { 3808 _ struct{} `type:"structure"` 3809 3810 // The ID of the WorkSpace. 3811 // 3812 // WorkspaceId is a required field 3813 WorkspaceId *string `type:"string" required:"true"` 3814} 3815 3816// String returns the string representation 3817func (s RebuildRequest) String() string { 3818 return awsutil.Prettify(s) 3819} 3820 3821// GoString returns the string representation 3822func (s RebuildRequest) GoString() string { 3823 return s.String() 3824} 3825 3826// Validate inspects the fields of the type to determine if they are valid. 3827func (s *RebuildRequest) Validate() error { 3828 invalidParams := request.ErrInvalidParams{Context: "RebuildRequest"} 3829 if s.WorkspaceId == nil { 3830 invalidParams.Add(request.NewErrParamRequired("WorkspaceId")) 3831 } 3832 3833 if invalidParams.Len() > 0 { 3834 return invalidParams 3835 } 3836 return nil 3837} 3838 3839// SetWorkspaceId sets the WorkspaceId field's value. 3840func (s *RebuildRequest) SetWorkspaceId(v string) *RebuildRequest { 3841 s.WorkspaceId = &v 3842 return s 3843} 3844 3845type RebuildWorkspacesInput struct { 3846 _ struct{} `type:"structure"` 3847 3848 // The WorkSpace to rebuild. You can specify a single WorkSpace. 3849 // 3850 // RebuildWorkspaceRequests is a required field 3851 RebuildWorkspaceRequests []*RebuildRequest `min:"1" type:"list" required:"true"` 3852} 3853 3854// String returns the string representation 3855func (s RebuildWorkspacesInput) String() string { 3856 return awsutil.Prettify(s) 3857} 3858 3859// GoString returns the string representation 3860func (s RebuildWorkspacesInput) GoString() string { 3861 return s.String() 3862} 3863 3864// Validate inspects the fields of the type to determine if they are valid. 3865func (s *RebuildWorkspacesInput) Validate() error { 3866 invalidParams := request.ErrInvalidParams{Context: "RebuildWorkspacesInput"} 3867 if s.RebuildWorkspaceRequests == nil { 3868 invalidParams.Add(request.NewErrParamRequired("RebuildWorkspaceRequests")) 3869 } 3870 if s.RebuildWorkspaceRequests != nil && len(s.RebuildWorkspaceRequests) < 1 { 3871 invalidParams.Add(request.NewErrParamMinLen("RebuildWorkspaceRequests", 1)) 3872 } 3873 if s.RebuildWorkspaceRequests != nil { 3874 for i, v := range s.RebuildWorkspaceRequests { 3875 if v == nil { 3876 continue 3877 } 3878 if err := v.Validate(); err != nil { 3879 invalidParams.AddNested(fmt.Sprintf("%s[%v]", "RebuildWorkspaceRequests", i), err.(request.ErrInvalidParams)) 3880 } 3881 } 3882 } 3883 3884 if invalidParams.Len() > 0 { 3885 return invalidParams 3886 } 3887 return nil 3888} 3889 3890// SetRebuildWorkspaceRequests sets the RebuildWorkspaceRequests field's value. 3891func (s *RebuildWorkspacesInput) SetRebuildWorkspaceRequests(v []*RebuildRequest) *RebuildWorkspacesInput { 3892 s.RebuildWorkspaceRequests = v 3893 return s 3894} 3895 3896type RebuildWorkspacesOutput struct { 3897 _ struct{} `type:"structure"` 3898 3899 // Information about the WorkSpace if it could not be rebuilt. 3900 FailedRequests []*FailedWorkspaceChangeRequest `type:"list"` 3901} 3902 3903// String returns the string representation 3904func (s RebuildWorkspacesOutput) String() string { 3905 return awsutil.Prettify(s) 3906} 3907 3908// GoString returns the string representation 3909func (s RebuildWorkspacesOutput) GoString() string { 3910 return s.String() 3911} 3912 3913// SetFailedRequests sets the FailedRequests field's value. 3914func (s *RebuildWorkspacesOutput) SetFailedRequests(v []*FailedWorkspaceChangeRequest) *RebuildWorkspacesOutput { 3915 s.FailedRequests = v 3916 return s 3917} 3918 3919type RevokeIpRulesInput struct { 3920 _ struct{} `type:"structure"` 3921 3922 // The ID of the group. 3923 // 3924 // GroupId is a required field 3925 GroupId *string `type:"string" required:"true"` 3926 3927 // The rules to remove from the group. 3928 // 3929 // UserRules is a required field 3930 UserRules []*string `type:"list" required:"true"` 3931} 3932 3933// String returns the string representation 3934func (s RevokeIpRulesInput) String() string { 3935 return awsutil.Prettify(s) 3936} 3937 3938// GoString returns the string representation 3939func (s RevokeIpRulesInput) GoString() string { 3940 return s.String() 3941} 3942 3943// Validate inspects the fields of the type to determine if they are valid. 3944func (s *RevokeIpRulesInput) Validate() error { 3945 invalidParams := request.ErrInvalidParams{Context: "RevokeIpRulesInput"} 3946 if s.GroupId == nil { 3947 invalidParams.Add(request.NewErrParamRequired("GroupId")) 3948 } 3949 if s.UserRules == nil { 3950 invalidParams.Add(request.NewErrParamRequired("UserRules")) 3951 } 3952 3953 if invalidParams.Len() > 0 { 3954 return invalidParams 3955 } 3956 return nil 3957} 3958 3959// SetGroupId sets the GroupId field's value. 3960func (s *RevokeIpRulesInput) SetGroupId(v string) *RevokeIpRulesInput { 3961 s.GroupId = &v 3962 return s 3963} 3964 3965// SetUserRules sets the UserRules field's value. 3966func (s *RevokeIpRulesInput) SetUserRules(v []*string) *RevokeIpRulesInput { 3967 s.UserRules = v 3968 return s 3969} 3970 3971type RevokeIpRulesOutput struct { 3972 _ struct{} `type:"structure"` 3973} 3974 3975// String returns the string representation 3976func (s RevokeIpRulesOutput) String() string { 3977 return awsutil.Prettify(s) 3978} 3979 3980// GoString returns the string representation 3981func (s RevokeIpRulesOutput) GoString() string { 3982 return s.String() 3983} 3984 3985// Information about the root volume for a WorkSpace bundle. 3986type RootStorage struct { 3987 _ struct{} `type:"structure"` 3988 3989 // The size of the root volume. 3990 Capacity *string `min:"1" type:"string"` 3991} 3992 3993// String returns the string representation 3994func (s RootStorage) String() string { 3995 return awsutil.Prettify(s) 3996} 3997 3998// GoString returns the string representation 3999func (s RootStorage) GoString() string { 4000 return s.String() 4001} 4002 4003// SetCapacity sets the Capacity field's value. 4004func (s *RootStorage) SetCapacity(v string) *RootStorage { 4005 s.Capacity = &v 4006 return s 4007} 4008 4009// Information used to start a WorkSpace. 4010type StartRequest struct { 4011 _ struct{} `type:"structure"` 4012 4013 // The ID of the WorkSpace. 4014 WorkspaceId *string `type:"string"` 4015} 4016 4017// String returns the string representation 4018func (s StartRequest) String() string { 4019 return awsutil.Prettify(s) 4020} 4021 4022// GoString returns the string representation 4023func (s StartRequest) GoString() string { 4024 return s.String() 4025} 4026 4027// SetWorkspaceId sets the WorkspaceId field's value. 4028func (s *StartRequest) SetWorkspaceId(v string) *StartRequest { 4029 s.WorkspaceId = &v 4030 return s 4031} 4032 4033type StartWorkspacesInput struct { 4034 _ struct{} `type:"structure"` 4035 4036 // The WorkSpaces to start. You can specify up to 25 WorkSpaces. 4037 // 4038 // StartWorkspaceRequests is a required field 4039 StartWorkspaceRequests []*StartRequest `min:"1" type:"list" required:"true"` 4040} 4041 4042// String returns the string representation 4043func (s StartWorkspacesInput) String() string { 4044 return awsutil.Prettify(s) 4045} 4046 4047// GoString returns the string representation 4048func (s StartWorkspacesInput) GoString() string { 4049 return s.String() 4050} 4051 4052// Validate inspects the fields of the type to determine if they are valid. 4053func (s *StartWorkspacesInput) Validate() error { 4054 invalidParams := request.ErrInvalidParams{Context: "StartWorkspacesInput"} 4055 if s.StartWorkspaceRequests == nil { 4056 invalidParams.Add(request.NewErrParamRequired("StartWorkspaceRequests")) 4057 } 4058 if s.StartWorkspaceRequests != nil && len(s.StartWorkspaceRequests) < 1 { 4059 invalidParams.Add(request.NewErrParamMinLen("StartWorkspaceRequests", 1)) 4060 } 4061 4062 if invalidParams.Len() > 0 { 4063 return invalidParams 4064 } 4065 return nil 4066} 4067 4068// SetStartWorkspaceRequests sets the StartWorkspaceRequests field's value. 4069func (s *StartWorkspacesInput) SetStartWorkspaceRequests(v []*StartRequest) *StartWorkspacesInput { 4070 s.StartWorkspaceRequests = v 4071 return s 4072} 4073 4074type StartWorkspacesOutput struct { 4075 _ struct{} `type:"structure"` 4076 4077 // Information about the WorkSpaces that could not be started. 4078 FailedRequests []*FailedWorkspaceChangeRequest `type:"list"` 4079} 4080 4081// String returns the string representation 4082func (s StartWorkspacesOutput) String() string { 4083 return awsutil.Prettify(s) 4084} 4085 4086// GoString returns the string representation 4087func (s StartWorkspacesOutput) GoString() string { 4088 return s.String() 4089} 4090 4091// SetFailedRequests sets the FailedRequests field's value. 4092func (s *StartWorkspacesOutput) SetFailedRequests(v []*FailedWorkspaceChangeRequest) *StartWorkspacesOutput { 4093 s.FailedRequests = v 4094 return s 4095} 4096 4097// Information used to stop a WorkSpace. 4098type StopRequest struct { 4099 _ struct{} `type:"structure"` 4100 4101 // The ID of the WorkSpace. 4102 WorkspaceId *string `type:"string"` 4103} 4104 4105// String returns the string representation 4106func (s StopRequest) String() string { 4107 return awsutil.Prettify(s) 4108} 4109 4110// GoString returns the string representation 4111func (s StopRequest) GoString() string { 4112 return s.String() 4113} 4114 4115// SetWorkspaceId sets the WorkspaceId field's value. 4116func (s *StopRequest) SetWorkspaceId(v string) *StopRequest { 4117 s.WorkspaceId = &v 4118 return s 4119} 4120 4121type StopWorkspacesInput struct { 4122 _ struct{} `type:"structure"` 4123 4124 // The WorkSpaces to stop. You can specify up to 25 WorkSpaces. 4125 // 4126 // StopWorkspaceRequests is a required field 4127 StopWorkspaceRequests []*StopRequest `min:"1" type:"list" required:"true"` 4128} 4129 4130// String returns the string representation 4131func (s StopWorkspacesInput) String() string { 4132 return awsutil.Prettify(s) 4133} 4134 4135// GoString returns the string representation 4136func (s StopWorkspacesInput) GoString() string { 4137 return s.String() 4138} 4139 4140// Validate inspects the fields of the type to determine if they are valid. 4141func (s *StopWorkspacesInput) Validate() error { 4142 invalidParams := request.ErrInvalidParams{Context: "StopWorkspacesInput"} 4143 if s.StopWorkspaceRequests == nil { 4144 invalidParams.Add(request.NewErrParamRequired("StopWorkspaceRequests")) 4145 } 4146 if s.StopWorkspaceRequests != nil && len(s.StopWorkspaceRequests) < 1 { 4147 invalidParams.Add(request.NewErrParamMinLen("StopWorkspaceRequests", 1)) 4148 } 4149 4150 if invalidParams.Len() > 0 { 4151 return invalidParams 4152 } 4153 return nil 4154} 4155 4156// SetStopWorkspaceRequests sets the StopWorkspaceRequests field's value. 4157func (s *StopWorkspacesInput) SetStopWorkspaceRequests(v []*StopRequest) *StopWorkspacesInput { 4158 s.StopWorkspaceRequests = v 4159 return s 4160} 4161 4162type StopWorkspacesOutput struct { 4163 _ struct{} `type:"structure"` 4164 4165 // Information about the WorkSpaces that could not be stopped. 4166 FailedRequests []*FailedWorkspaceChangeRequest `type:"list"` 4167} 4168 4169// String returns the string representation 4170func (s StopWorkspacesOutput) String() string { 4171 return awsutil.Prettify(s) 4172} 4173 4174// GoString returns the string representation 4175func (s StopWorkspacesOutput) GoString() string { 4176 return s.String() 4177} 4178 4179// SetFailedRequests sets the FailedRequests field's value. 4180func (s *StopWorkspacesOutput) SetFailedRequests(v []*FailedWorkspaceChangeRequest) *StopWorkspacesOutput { 4181 s.FailedRequests = v 4182 return s 4183} 4184 4185// Information about a tag. 4186type Tag struct { 4187 _ struct{} `type:"structure"` 4188 4189 // The key of the tag. 4190 // 4191 // Key is a required field 4192 Key *string `min:"1" type:"string" required:"true"` 4193 4194 // The value of the tag. 4195 Value *string `type:"string"` 4196} 4197 4198// String returns the string representation 4199func (s Tag) String() string { 4200 return awsutil.Prettify(s) 4201} 4202 4203// GoString returns the string representation 4204func (s Tag) GoString() string { 4205 return s.String() 4206} 4207 4208// Validate inspects the fields of the type to determine if they are valid. 4209func (s *Tag) Validate() error { 4210 invalidParams := request.ErrInvalidParams{Context: "Tag"} 4211 if s.Key == nil { 4212 invalidParams.Add(request.NewErrParamRequired("Key")) 4213 } 4214 if s.Key != nil && len(*s.Key) < 1 { 4215 invalidParams.Add(request.NewErrParamMinLen("Key", 1)) 4216 } 4217 4218 if invalidParams.Len() > 0 { 4219 return invalidParams 4220 } 4221 return nil 4222} 4223 4224// SetKey sets the Key field's value. 4225func (s *Tag) SetKey(v string) *Tag { 4226 s.Key = &v 4227 return s 4228} 4229 4230// SetValue sets the Value field's value. 4231func (s *Tag) SetValue(v string) *Tag { 4232 s.Value = &v 4233 return s 4234} 4235 4236// Information used to terminate a WorkSpace. 4237type TerminateRequest struct { 4238 _ struct{} `type:"structure"` 4239 4240 // The ID of the WorkSpace. 4241 // 4242 // WorkspaceId is a required field 4243 WorkspaceId *string `type:"string" required:"true"` 4244} 4245 4246// String returns the string representation 4247func (s TerminateRequest) String() string { 4248 return awsutil.Prettify(s) 4249} 4250 4251// GoString returns the string representation 4252func (s TerminateRequest) GoString() string { 4253 return s.String() 4254} 4255 4256// Validate inspects the fields of the type to determine if they are valid. 4257func (s *TerminateRequest) Validate() error { 4258 invalidParams := request.ErrInvalidParams{Context: "TerminateRequest"} 4259 if s.WorkspaceId == nil { 4260 invalidParams.Add(request.NewErrParamRequired("WorkspaceId")) 4261 } 4262 4263 if invalidParams.Len() > 0 { 4264 return invalidParams 4265 } 4266 return nil 4267} 4268 4269// SetWorkspaceId sets the WorkspaceId field's value. 4270func (s *TerminateRequest) SetWorkspaceId(v string) *TerminateRequest { 4271 s.WorkspaceId = &v 4272 return s 4273} 4274 4275type TerminateWorkspacesInput struct { 4276 _ struct{} `type:"structure"` 4277 4278 // The WorkSpaces to terminate. You can specify up to 25 WorkSpaces. 4279 // 4280 // TerminateWorkspaceRequests is a required field 4281 TerminateWorkspaceRequests []*TerminateRequest `min:"1" type:"list" required:"true"` 4282} 4283 4284// String returns the string representation 4285func (s TerminateWorkspacesInput) String() string { 4286 return awsutil.Prettify(s) 4287} 4288 4289// GoString returns the string representation 4290func (s TerminateWorkspacesInput) GoString() string { 4291 return s.String() 4292} 4293 4294// Validate inspects the fields of the type to determine if they are valid. 4295func (s *TerminateWorkspacesInput) Validate() error { 4296 invalidParams := request.ErrInvalidParams{Context: "TerminateWorkspacesInput"} 4297 if s.TerminateWorkspaceRequests == nil { 4298 invalidParams.Add(request.NewErrParamRequired("TerminateWorkspaceRequests")) 4299 } 4300 if s.TerminateWorkspaceRequests != nil && len(s.TerminateWorkspaceRequests) < 1 { 4301 invalidParams.Add(request.NewErrParamMinLen("TerminateWorkspaceRequests", 1)) 4302 } 4303 if s.TerminateWorkspaceRequests != nil { 4304 for i, v := range s.TerminateWorkspaceRequests { 4305 if v == nil { 4306 continue 4307 } 4308 if err := v.Validate(); err != nil { 4309 invalidParams.AddNested(fmt.Sprintf("%s[%v]", "TerminateWorkspaceRequests", i), err.(request.ErrInvalidParams)) 4310 } 4311 } 4312 } 4313 4314 if invalidParams.Len() > 0 { 4315 return invalidParams 4316 } 4317 return nil 4318} 4319 4320// SetTerminateWorkspaceRequests sets the TerminateWorkspaceRequests field's value. 4321func (s *TerminateWorkspacesInput) SetTerminateWorkspaceRequests(v []*TerminateRequest) *TerminateWorkspacesInput { 4322 s.TerminateWorkspaceRequests = v 4323 return s 4324} 4325 4326type TerminateWorkspacesOutput struct { 4327 _ struct{} `type:"structure"` 4328 4329 // Information about the WorkSpaces that could not be terminated. 4330 FailedRequests []*FailedWorkspaceChangeRequest `type:"list"` 4331} 4332 4333// String returns the string representation 4334func (s TerminateWorkspacesOutput) String() string { 4335 return awsutil.Prettify(s) 4336} 4337 4338// GoString returns the string representation 4339func (s TerminateWorkspacesOutput) GoString() string { 4340 return s.String() 4341} 4342 4343// SetFailedRequests sets the FailedRequests field's value. 4344func (s *TerminateWorkspacesOutput) SetFailedRequests(v []*FailedWorkspaceChangeRequest) *TerminateWorkspacesOutput { 4345 s.FailedRequests = v 4346 return s 4347} 4348 4349type UpdateRulesOfIpGroupInput struct { 4350 _ struct{} `type:"structure"` 4351 4352 // The ID of the group. 4353 // 4354 // GroupId is a required field 4355 GroupId *string `type:"string" required:"true"` 4356 4357 // One or more rules. 4358 // 4359 // UserRules is a required field 4360 UserRules []*IpRuleItem `type:"list" required:"true"` 4361} 4362 4363// String returns the string representation 4364func (s UpdateRulesOfIpGroupInput) String() string { 4365 return awsutil.Prettify(s) 4366} 4367 4368// GoString returns the string representation 4369func (s UpdateRulesOfIpGroupInput) GoString() string { 4370 return s.String() 4371} 4372 4373// Validate inspects the fields of the type to determine if they are valid. 4374func (s *UpdateRulesOfIpGroupInput) Validate() error { 4375 invalidParams := request.ErrInvalidParams{Context: "UpdateRulesOfIpGroupInput"} 4376 if s.GroupId == nil { 4377 invalidParams.Add(request.NewErrParamRequired("GroupId")) 4378 } 4379 if s.UserRules == nil { 4380 invalidParams.Add(request.NewErrParamRequired("UserRules")) 4381 } 4382 4383 if invalidParams.Len() > 0 { 4384 return invalidParams 4385 } 4386 return nil 4387} 4388 4389// SetGroupId sets the GroupId field's value. 4390func (s *UpdateRulesOfIpGroupInput) SetGroupId(v string) *UpdateRulesOfIpGroupInput { 4391 s.GroupId = &v 4392 return s 4393} 4394 4395// SetUserRules sets the UserRules field's value. 4396func (s *UpdateRulesOfIpGroupInput) SetUserRules(v []*IpRuleItem) *UpdateRulesOfIpGroupInput { 4397 s.UserRules = v 4398 return s 4399} 4400 4401type UpdateRulesOfIpGroupOutput struct { 4402 _ struct{} `type:"structure"` 4403} 4404 4405// String returns the string representation 4406func (s UpdateRulesOfIpGroupOutput) String() string { 4407 return awsutil.Prettify(s) 4408} 4409 4410// GoString returns the string representation 4411func (s UpdateRulesOfIpGroupOutput) GoString() string { 4412 return s.String() 4413} 4414 4415// Information about the user storage for a WorkSpace bundle. 4416type UserStorage struct { 4417 _ struct{} `type:"structure"` 4418 4419 // The size of the user storage. 4420 Capacity *string `min:"1" type:"string"` 4421} 4422 4423// String returns the string representation 4424func (s UserStorage) String() string { 4425 return awsutil.Prettify(s) 4426} 4427 4428// GoString returns the string representation 4429func (s UserStorage) GoString() string { 4430 return s.String() 4431} 4432 4433// SetCapacity sets the Capacity field's value. 4434func (s *UserStorage) SetCapacity(v string) *UserStorage { 4435 s.Capacity = &v 4436 return s 4437} 4438 4439// Information about a WorkSpace. 4440type Workspace struct { 4441 _ struct{} `type:"structure"` 4442 4443 // The identifier of the bundle used to create the WorkSpace. 4444 BundleId *string `type:"string"` 4445 4446 // The name of the WorkSpace, as seen by the operating system. 4447 ComputerName *string `type:"string"` 4448 4449 // The identifier of the AWS Directory Service directory for the WorkSpace. 4450 DirectoryId *string `type:"string"` 4451 4452 // If the WorkSpace could not be created, contains the error code. 4453 ErrorCode *string `type:"string"` 4454 4455 // If the WorkSpace could not be created, contains a textual error message that 4456 // describes the failure. 4457 ErrorMessage *string `type:"string"` 4458 4459 // The IP address of the WorkSpace. 4460 IpAddress *string `type:"string"` 4461 4462 // The modification states of the WorkSpace. 4463 ModificationStates []*ModificationState `type:"list"` 4464 4465 // Indicates whether the data stored on the root volume is encrypted. 4466 RootVolumeEncryptionEnabled *bool `type:"boolean"` 4467 4468 // The operational state of the WorkSpace. 4469 State *string `type:"string" enum:"WorkspaceState"` 4470 4471 // The identifier of the subnet for the WorkSpace. 4472 SubnetId *string `type:"string"` 4473 4474 // The user for the WorkSpace. 4475 UserName *string `min:"1" type:"string"` 4476 4477 // Indicates whether the data stored on the user volume is encrypted. 4478 UserVolumeEncryptionEnabled *bool `type:"boolean"` 4479 4480 // The KMS key used to encrypt data stored on your WorkSpace. 4481 VolumeEncryptionKey *string `type:"string"` 4482 4483 // The identifier of the WorkSpace. 4484 WorkspaceId *string `type:"string"` 4485 4486 // The properties of the WorkSpace. 4487 WorkspaceProperties *WorkspaceProperties `type:"structure"` 4488} 4489 4490// String returns the string representation 4491func (s Workspace) String() string { 4492 return awsutil.Prettify(s) 4493} 4494 4495// GoString returns the string representation 4496func (s Workspace) GoString() string { 4497 return s.String() 4498} 4499 4500// SetBundleId sets the BundleId field's value. 4501func (s *Workspace) SetBundleId(v string) *Workspace { 4502 s.BundleId = &v 4503 return s 4504} 4505 4506// SetComputerName sets the ComputerName field's value. 4507func (s *Workspace) SetComputerName(v string) *Workspace { 4508 s.ComputerName = &v 4509 return s 4510} 4511 4512// SetDirectoryId sets the DirectoryId field's value. 4513func (s *Workspace) SetDirectoryId(v string) *Workspace { 4514 s.DirectoryId = &v 4515 return s 4516} 4517 4518// SetErrorCode sets the ErrorCode field's value. 4519func (s *Workspace) SetErrorCode(v string) *Workspace { 4520 s.ErrorCode = &v 4521 return s 4522} 4523 4524// SetErrorMessage sets the ErrorMessage field's value. 4525func (s *Workspace) SetErrorMessage(v string) *Workspace { 4526 s.ErrorMessage = &v 4527 return s 4528} 4529 4530// SetIpAddress sets the IpAddress field's value. 4531func (s *Workspace) SetIpAddress(v string) *Workspace { 4532 s.IpAddress = &v 4533 return s 4534} 4535 4536// SetModificationStates sets the ModificationStates field's value. 4537func (s *Workspace) SetModificationStates(v []*ModificationState) *Workspace { 4538 s.ModificationStates = v 4539 return s 4540} 4541 4542// SetRootVolumeEncryptionEnabled sets the RootVolumeEncryptionEnabled field's value. 4543func (s *Workspace) SetRootVolumeEncryptionEnabled(v bool) *Workspace { 4544 s.RootVolumeEncryptionEnabled = &v 4545 return s 4546} 4547 4548// SetState sets the State field's value. 4549func (s *Workspace) SetState(v string) *Workspace { 4550 s.State = &v 4551 return s 4552} 4553 4554// SetSubnetId sets the SubnetId field's value. 4555func (s *Workspace) SetSubnetId(v string) *Workspace { 4556 s.SubnetId = &v 4557 return s 4558} 4559 4560// SetUserName sets the UserName field's value. 4561func (s *Workspace) SetUserName(v string) *Workspace { 4562 s.UserName = &v 4563 return s 4564} 4565 4566// SetUserVolumeEncryptionEnabled sets the UserVolumeEncryptionEnabled field's value. 4567func (s *Workspace) SetUserVolumeEncryptionEnabled(v bool) *Workspace { 4568 s.UserVolumeEncryptionEnabled = &v 4569 return s 4570} 4571 4572// SetVolumeEncryptionKey sets the VolumeEncryptionKey field's value. 4573func (s *Workspace) SetVolumeEncryptionKey(v string) *Workspace { 4574 s.VolumeEncryptionKey = &v 4575 return s 4576} 4577 4578// SetWorkspaceId sets the WorkspaceId field's value. 4579func (s *Workspace) SetWorkspaceId(v string) *Workspace { 4580 s.WorkspaceId = &v 4581 return s 4582} 4583 4584// SetWorkspaceProperties sets the WorkspaceProperties field's value. 4585func (s *Workspace) SetWorkspaceProperties(v *WorkspaceProperties) *Workspace { 4586 s.WorkspaceProperties = v 4587 return s 4588} 4589 4590// Information about a WorkSpace bundle. 4591type WorkspaceBundle struct { 4592 _ struct{} `type:"structure"` 4593 4594 // The bundle identifier. 4595 BundleId *string `type:"string"` 4596 4597 // The compute type. For more information, see Amazon WorkSpaces Bundles (http://aws.amazon.com/workspaces/details/#Amazon_WorkSpaces_Bundles). 4598 ComputeType *ComputeType `type:"structure"` 4599 4600 // A description. 4601 Description *string `type:"string"` 4602 4603 // The name of the bundle. 4604 Name *string `min:"1" type:"string"` 4605 4606 // The owner of the bundle. This is the account identifier of the owner, or 4607 // AMAZON if the bundle is provided by AWS. 4608 Owner *string `type:"string"` 4609 4610 // The size of the root volume. 4611 RootStorage *RootStorage `type:"structure"` 4612 4613 // The size of the user storage. 4614 UserStorage *UserStorage `type:"structure"` 4615} 4616 4617// String returns the string representation 4618func (s WorkspaceBundle) String() string { 4619 return awsutil.Prettify(s) 4620} 4621 4622// GoString returns the string representation 4623func (s WorkspaceBundle) GoString() string { 4624 return s.String() 4625} 4626 4627// SetBundleId sets the BundleId field's value. 4628func (s *WorkspaceBundle) SetBundleId(v string) *WorkspaceBundle { 4629 s.BundleId = &v 4630 return s 4631} 4632 4633// SetComputeType sets the ComputeType field's value. 4634func (s *WorkspaceBundle) SetComputeType(v *ComputeType) *WorkspaceBundle { 4635 s.ComputeType = v 4636 return s 4637} 4638 4639// SetDescription sets the Description field's value. 4640func (s *WorkspaceBundle) SetDescription(v string) *WorkspaceBundle { 4641 s.Description = &v 4642 return s 4643} 4644 4645// SetName sets the Name field's value. 4646func (s *WorkspaceBundle) SetName(v string) *WorkspaceBundle { 4647 s.Name = &v 4648 return s 4649} 4650 4651// SetOwner sets the Owner field's value. 4652func (s *WorkspaceBundle) SetOwner(v string) *WorkspaceBundle { 4653 s.Owner = &v 4654 return s 4655} 4656 4657// SetRootStorage sets the RootStorage field's value. 4658func (s *WorkspaceBundle) SetRootStorage(v *RootStorage) *WorkspaceBundle { 4659 s.RootStorage = v 4660 return s 4661} 4662 4663// SetUserStorage sets the UserStorage field's value. 4664func (s *WorkspaceBundle) SetUserStorage(v *UserStorage) *WorkspaceBundle { 4665 s.UserStorage = v 4666 return s 4667} 4668 4669// Describes the connection status of a WorkSpace. 4670type WorkspaceConnectionStatus struct { 4671 _ struct{} `type:"structure"` 4672 4673 // The connection state of the WorkSpace. The connection state is unknown if 4674 // the WorkSpace is stopped. 4675 ConnectionState *string `type:"string" enum:"ConnectionState"` 4676 4677 // The timestamp of the connection state check. 4678 ConnectionStateCheckTimestamp *time.Time `type:"timestamp"` 4679 4680 // The timestamp of the last known user connection. 4681 LastKnownUserConnectionTimestamp *time.Time `type:"timestamp"` 4682 4683 // The ID of the WorkSpace. 4684 WorkspaceId *string `type:"string"` 4685} 4686 4687// String returns the string representation 4688func (s WorkspaceConnectionStatus) String() string { 4689 return awsutil.Prettify(s) 4690} 4691 4692// GoString returns the string representation 4693func (s WorkspaceConnectionStatus) GoString() string { 4694 return s.String() 4695} 4696 4697// SetConnectionState sets the ConnectionState field's value. 4698func (s *WorkspaceConnectionStatus) SetConnectionState(v string) *WorkspaceConnectionStatus { 4699 s.ConnectionState = &v 4700 return s 4701} 4702 4703// SetConnectionStateCheckTimestamp sets the ConnectionStateCheckTimestamp field's value. 4704func (s *WorkspaceConnectionStatus) SetConnectionStateCheckTimestamp(v time.Time) *WorkspaceConnectionStatus { 4705 s.ConnectionStateCheckTimestamp = &v 4706 return s 4707} 4708 4709// SetLastKnownUserConnectionTimestamp sets the LastKnownUserConnectionTimestamp field's value. 4710func (s *WorkspaceConnectionStatus) SetLastKnownUserConnectionTimestamp(v time.Time) *WorkspaceConnectionStatus { 4711 s.LastKnownUserConnectionTimestamp = &v 4712 return s 4713} 4714 4715// SetWorkspaceId sets the WorkspaceId field's value. 4716func (s *WorkspaceConnectionStatus) SetWorkspaceId(v string) *WorkspaceConnectionStatus { 4717 s.WorkspaceId = &v 4718 return s 4719} 4720 4721// Information about an AWS Directory Service directory for use with Amazon 4722// WorkSpaces. 4723type WorkspaceDirectory struct { 4724 _ struct{} `type:"structure"` 4725 4726 // The directory alias. 4727 Alias *string `type:"string"` 4728 4729 // The user name for the service account. 4730 CustomerUserName *string `min:"1" type:"string"` 4731 4732 // The directory identifier. 4733 DirectoryId *string `type:"string"` 4734 4735 // The name of the directory. 4736 DirectoryName *string `type:"string"` 4737 4738 // The directory type. 4739 DirectoryType *string `type:"string" enum:"WorkspaceDirectoryType"` 4740 4741 // The IP addresses of the DNS servers for the directory. 4742 DnsIpAddresses []*string `type:"list"` 4743 4744 // The identifier of the IAM role. This is the role that allows Amazon WorkSpaces 4745 // to make calls to other services, such as Amazon EC2, on your behalf. 4746 IamRoleId *string `type:"string"` 4747 4748 // The identifiers of the IP access control groups associated with the directory. 4749 IpGroupIds []*string `locationName:"ipGroupIds" type:"list"` 4750 4751 // The registration code for the directory. This is the code that users enter 4752 // in their Amazon WorkSpaces client application to connect to the directory. 4753 RegistrationCode *string `min:"1" type:"string"` 4754 4755 // The state of the directory's registration with Amazon WorkSpaces 4756 State *string `type:"string" enum:"WorkspaceDirectoryState"` 4757 4758 // The identifiers of the subnets used with the directory. 4759 SubnetIds []*string `type:"list"` 4760 4761 // The default creation properties for all WorkSpaces in the directory. 4762 WorkspaceCreationProperties *DefaultWorkspaceCreationProperties `type:"structure"` 4763 4764 // The identifier of the security group that is assigned to new WorkSpaces. 4765 WorkspaceSecurityGroupId *string `type:"string"` 4766} 4767 4768// String returns the string representation 4769func (s WorkspaceDirectory) String() string { 4770 return awsutil.Prettify(s) 4771} 4772 4773// GoString returns the string representation 4774func (s WorkspaceDirectory) GoString() string { 4775 return s.String() 4776} 4777 4778// SetAlias sets the Alias field's value. 4779func (s *WorkspaceDirectory) SetAlias(v string) *WorkspaceDirectory { 4780 s.Alias = &v 4781 return s 4782} 4783 4784// SetCustomerUserName sets the CustomerUserName field's value. 4785func (s *WorkspaceDirectory) SetCustomerUserName(v string) *WorkspaceDirectory { 4786 s.CustomerUserName = &v 4787 return s 4788} 4789 4790// SetDirectoryId sets the DirectoryId field's value. 4791func (s *WorkspaceDirectory) SetDirectoryId(v string) *WorkspaceDirectory { 4792 s.DirectoryId = &v 4793 return s 4794} 4795 4796// SetDirectoryName sets the DirectoryName field's value. 4797func (s *WorkspaceDirectory) SetDirectoryName(v string) *WorkspaceDirectory { 4798 s.DirectoryName = &v 4799 return s 4800} 4801 4802// SetDirectoryType sets the DirectoryType field's value. 4803func (s *WorkspaceDirectory) SetDirectoryType(v string) *WorkspaceDirectory { 4804 s.DirectoryType = &v 4805 return s 4806} 4807 4808// SetDnsIpAddresses sets the DnsIpAddresses field's value. 4809func (s *WorkspaceDirectory) SetDnsIpAddresses(v []*string) *WorkspaceDirectory { 4810 s.DnsIpAddresses = v 4811 return s 4812} 4813 4814// SetIamRoleId sets the IamRoleId field's value. 4815func (s *WorkspaceDirectory) SetIamRoleId(v string) *WorkspaceDirectory { 4816 s.IamRoleId = &v 4817 return s 4818} 4819 4820// SetIpGroupIds sets the IpGroupIds field's value. 4821func (s *WorkspaceDirectory) SetIpGroupIds(v []*string) *WorkspaceDirectory { 4822 s.IpGroupIds = v 4823 return s 4824} 4825 4826// SetRegistrationCode sets the RegistrationCode field's value. 4827func (s *WorkspaceDirectory) SetRegistrationCode(v string) *WorkspaceDirectory { 4828 s.RegistrationCode = &v 4829 return s 4830} 4831 4832// SetState sets the State field's value. 4833func (s *WorkspaceDirectory) SetState(v string) *WorkspaceDirectory { 4834 s.State = &v 4835 return s 4836} 4837 4838// SetSubnetIds sets the SubnetIds field's value. 4839func (s *WorkspaceDirectory) SetSubnetIds(v []*string) *WorkspaceDirectory { 4840 s.SubnetIds = v 4841 return s 4842} 4843 4844// SetWorkspaceCreationProperties sets the WorkspaceCreationProperties field's value. 4845func (s *WorkspaceDirectory) SetWorkspaceCreationProperties(v *DefaultWorkspaceCreationProperties) *WorkspaceDirectory { 4846 s.WorkspaceCreationProperties = v 4847 return s 4848} 4849 4850// SetWorkspaceSecurityGroupId sets the WorkspaceSecurityGroupId field's value. 4851func (s *WorkspaceDirectory) SetWorkspaceSecurityGroupId(v string) *WorkspaceDirectory { 4852 s.WorkspaceSecurityGroupId = &v 4853 return s 4854} 4855 4856// Information about a WorkSpace. 4857type WorkspaceProperties struct { 4858 _ struct{} `type:"structure"` 4859 4860 // The compute type. For more information, see Amazon WorkSpaces Bundles (http://aws.amazon.com/workspaces/details/#Amazon_WorkSpaces_Bundles). 4861 ComputeTypeName *string `type:"string" enum:"Compute"` 4862 4863 // The size of the root volume. 4864 RootVolumeSizeGib *int64 `type:"integer"` 4865 4866 // The running mode. For more information, see Manage the WorkSpace Running 4867 // Mode (http://docs.aws.amazon.com/workspaces/latest/adminguide/running-mode.html). 4868 RunningMode *string `type:"string" enum:"RunningMode"` 4869 4870 // The time after a user logs off when WorkSpaces are automatically stopped. 4871 // Configured in 60 minute intervals. 4872 RunningModeAutoStopTimeoutInMinutes *int64 `type:"integer"` 4873 4874 // The size of the user storage. 4875 UserVolumeSizeGib *int64 `type:"integer"` 4876} 4877 4878// String returns the string representation 4879func (s WorkspaceProperties) String() string { 4880 return awsutil.Prettify(s) 4881} 4882 4883// GoString returns the string representation 4884func (s WorkspaceProperties) GoString() string { 4885 return s.String() 4886} 4887 4888// SetComputeTypeName sets the ComputeTypeName field's value. 4889func (s *WorkspaceProperties) SetComputeTypeName(v string) *WorkspaceProperties { 4890 s.ComputeTypeName = &v 4891 return s 4892} 4893 4894// SetRootVolumeSizeGib sets the RootVolumeSizeGib field's value. 4895func (s *WorkspaceProperties) SetRootVolumeSizeGib(v int64) *WorkspaceProperties { 4896 s.RootVolumeSizeGib = &v 4897 return s 4898} 4899 4900// SetRunningMode sets the RunningMode field's value. 4901func (s *WorkspaceProperties) SetRunningMode(v string) *WorkspaceProperties { 4902 s.RunningMode = &v 4903 return s 4904} 4905 4906// SetRunningModeAutoStopTimeoutInMinutes sets the RunningModeAutoStopTimeoutInMinutes field's value. 4907func (s *WorkspaceProperties) SetRunningModeAutoStopTimeoutInMinutes(v int64) *WorkspaceProperties { 4908 s.RunningModeAutoStopTimeoutInMinutes = &v 4909 return s 4910} 4911 4912// SetUserVolumeSizeGib sets the UserVolumeSizeGib field's value. 4913func (s *WorkspaceProperties) SetUserVolumeSizeGib(v int64) *WorkspaceProperties { 4914 s.UserVolumeSizeGib = &v 4915 return s 4916} 4917 4918// Information used to create a WorkSpace. 4919type WorkspaceRequest struct { 4920 _ struct{} `type:"structure"` 4921 4922 // The identifier of the bundle for the WorkSpace. You can use DescribeWorkspaceBundles 4923 // to list the available bundles. 4924 // 4925 // BundleId is a required field 4926 BundleId *string `type:"string" required:"true"` 4927 4928 // The identifier of the AWS Directory Service directory for the WorkSpace. 4929 // You can use DescribeWorkspaceDirectories to list the available directories. 4930 // 4931 // DirectoryId is a required field 4932 DirectoryId *string `type:"string" required:"true"` 4933 4934 // Indicates whether the data stored on the root volume is encrypted. 4935 RootVolumeEncryptionEnabled *bool `type:"boolean"` 4936 4937 // The tags for the WorkSpace. 4938 Tags []*Tag `type:"list"` 4939 4940 // The username of the user for the WorkSpace. This username must exist in the 4941 // AWS Directory Service directory for the WorkSpace. 4942 // 4943 // UserName is a required field 4944 UserName *string `min:"1" type:"string" required:"true"` 4945 4946 // Indicates whether the data stored on the user volume is encrypted. 4947 UserVolumeEncryptionEnabled *bool `type:"boolean"` 4948 4949 // The KMS key used to encrypt data stored on your WorkSpace. 4950 VolumeEncryptionKey *string `type:"string"` 4951 4952 // The WorkSpace properties. 4953 WorkspaceProperties *WorkspaceProperties `type:"structure"` 4954} 4955 4956// String returns the string representation 4957func (s WorkspaceRequest) String() string { 4958 return awsutil.Prettify(s) 4959} 4960 4961// GoString returns the string representation 4962func (s WorkspaceRequest) GoString() string { 4963 return s.String() 4964} 4965 4966// Validate inspects the fields of the type to determine if they are valid. 4967func (s *WorkspaceRequest) Validate() error { 4968 invalidParams := request.ErrInvalidParams{Context: "WorkspaceRequest"} 4969 if s.BundleId == nil { 4970 invalidParams.Add(request.NewErrParamRequired("BundleId")) 4971 } 4972 if s.DirectoryId == nil { 4973 invalidParams.Add(request.NewErrParamRequired("DirectoryId")) 4974 } 4975 if s.UserName == nil { 4976 invalidParams.Add(request.NewErrParamRequired("UserName")) 4977 } 4978 if s.UserName != nil && len(*s.UserName) < 1 { 4979 invalidParams.Add(request.NewErrParamMinLen("UserName", 1)) 4980 } 4981 if s.Tags != nil { 4982 for i, v := range s.Tags { 4983 if v == nil { 4984 continue 4985 } 4986 if err := v.Validate(); err != nil { 4987 invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Tags", i), err.(request.ErrInvalidParams)) 4988 } 4989 } 4990 } 4991 4992 if invalidParams.Len() > 0 { 4993 return invalidParams 4994 } 4995 return nil 4996} 4997 4998// SetBundleId sets the BundleId field's value. 4999func (s *WorkspaceRequest) SetBundleId(v string) *WorkspaceRequest { 5000 s.BundleId = &v 5001 return s 5002} 5003 5004// SetDirectoryId sets the DirectoryId field's value. 5005func (s *WorkspaceRequest) SetDirectoryId(v string) *WorkspaceRequest { 5006 s.DirectoryId = &v 5007 return s 5008} 5009 5010// SetRootVolumeEncryptionEnabled sets the RootVolumeEncryptionEnabled field's value. 5011func (s *WorkspaceRequest) SetRootVolumeEncryptionEnabled(v bool) *WorkspaceRequest { 5012 s.RootVolumeEncryptionEnabled = &v 5013 return s 5014} 5015 5016// SetTags sets the Tags field's value. 5017func (s *WorkspaceRequest) SetTags(v []*Tag) *WorkspaceRequest { 5018 s.Tags = v 5019 return s 5020} 5021 5022// SetUserName sets the UserName field's value. 5023func (s *WorkspaceRequest) SetUserName(v string) *WorkspaceRequest { 5024 s.UserName = &v 5025 return s 5026} 5027 5028// SetUserVolumeEncryptionEnabled sets the UserVolumeEncryptionEnabled field's value. 5029func (s *WorkspaceRequest) SetUserVolumeEncryptionEnabled(v bool) *WorkspaceRequest { 5030 s.UserVolumeEncryptionEnabled = &v 5031 return s 5032} 5033 5034// SetVolumeEncryptionKey sets the VolumeEncryptionKey field's value. 5035func (s *WorkspaceRequest) SetVolumeEncryptionKey(v string) *WorkspaceRequest { 5036 s.VolumeEncryptionKey = &v 5037 return s 5038} 5039 5040// SetWorkspaceProperties sets the WorkspaceProperties field's value. 5041func (s *WorkspaceRequest) SetWorkspaceProperties(v *WorkspaceProperties) *WorkspaceRequest { 5042 s.WorkspaceProperties = v 5043 return s 5044} 5045 5046const ( 5047 // ComputeValue is a Compute enum value 5048 ComputeValue = "VALUE" 5049 5050 // ComputeStandard is a Compute enum value 5051 ComputeStandard = "STANDARD" 5052 5053 // ComputePerformance is a Compute enum value 5054 ComputePerformance = "PERFORMANCE" 5055 5056 // ComputePower is a Compute enum value 5057 ComputePower = "POWER" 5058 5059 // ComputeGraphics is a Compute enum value 5060 ComputeGraphics = "GRAPHICS" 5061) 5062 5063const ( 5064 // ConnectionStateConnected is a ConnectionState enum value 5065 ConnectionStateConnected = "CONNECTED" 5066 5067 // ConnectionStateDisconnected is a ConnectionState enum value 5068 ConnectionStateDisconnected = "DISCONNECTED" 5069 5070 // ConnectionStateUnknown is a ConnectionState enum value 5071 ConnectionStateUnknown = "UNKNOWN" 5072) 5073 5074const ( 5075 // ModificationResourceEnumRootVolume is a ModificationResourceEnum enum value 5076 ModificationResourceEnumRootVolume = "ROOT_VOLUME" 5077 5078 // ModificationResourceEnumUserVolume is a ModificationResourceEnum enum value 5079 ModificationResourceEnumUserVolume = "USER_VOLUME" 5080 5081 // ModificationResourceEnumComputeType is a ModificationResourceEnum enum value 5082 ModificationResourceEnumComputeType = "COMPUTE_TYPE" 5083) 5084 5085const ( 5086 // ModificationStateEnumUpdateInitiated is a ModificationStateEnum enum value 5087 ModificationStateEnumUpdateInitiated = "UPDATE_INITIATED" 5088 5089 // ModificationStateEnumUpdateInProgress is a ModificationStateEnum enum value 5090 ModificationStateEnumUpdateInProgress = "UPDATE_IN_PROGRESS" 5091) 5092 5093const ( 5094 // RunningModeAutoStop is a RunningMode enum value 5095 RunningModeAutoStop = "AUTO_STOP" 5096 5097 // RunningModeAlwaysOn is a RunningMode enum value 5098 RunningModeAlwaysOn = "ALWAYS_ON" 5099) 5100 5101const ( 5102 // TargetWorkspaceStateAvailable is a TargetWorkspaceState enum value 5103 TargetWorkspaceStateAvailable = "AVAILABLE" 5104 5105 // TargetWorkspaceStateAdminMaintenance is a TargetWorkspaceState enum value 5106 TargetWorkspaceStateAdminMaintenance = "ADMIN_MAINTENANCE" 5107) 5108 5109const ( 5110 // WorkspaceDirectoryStateRegistering is a WorkspaceDirectoryState enum value 5111 WorkspaceDirectoryStateRegistering = "REGISTERING" 5112 5113 // WorkspaceDirectoryStateRegistered is a WorkspaceDirectoryState enum value 5114 WorkspaceDirectoryStateRegistered = "REGISTERED" 5115 5116 // WorkspaceDirectoryStateDeregistering is a WorkspaceDirectoryState enum value 5117 WorkspaceDirectoryStateDeregistering = "DEREGISTERING" 5118 5119 // WorkspaceDirectoryStateDeregistered is a WorkspaceDirectoryState enum value 5120 WorkspaceDirectoryStateDeregistered = "DEREGISTERED" 5121 5122 // WorkspaceDirectoryStateError is a WorkspaceDirectoryState enum value 5123 WorkspaceDirectoryStateError = "ERROR" 5124) 5125 5126const ( 5127 // WorkspaceDirectoryTypeSimpleAd is a WorkspaceDirectoryType enum value 5128 WorkspaceDirectoryTypeSimpleAd = "SIMPLE_AD" 5129 5130 // WorkspaceDirectoryTypeAdConnector is a WorkspaceDirectoryType enum value 5131 WorkspaceDirectoryTypeAdConnector = "AD_CONNECTOR" 5132) 5133 5134const ( 5135 // WorkspaceStatePending is a WorkspaceState enum value 5136 WorkspaceStatePending = "PENDING" 5137 5138 // WorkspaceStateAvailable is a WorkspaceState enum value 5139 WorkspaceStateAvailable = "AVAILABLE" 5140 5141 // WorkspaceStateImpaired is a WorkspaceState enum value 5142 WorkspaceStateImpaired = "IMPAIRED" 5143 5144 // WorkspaceStateUnhealthy is a WorkspaceState enum value 5145 WorkspaceStateUnhealthy = "UNHEALTHY" 5146 5147 // WorkspaceStateRebooting is a WorkspaceState enum value 5148 WorkspaceStateRebooting = "REBOOTING" 5149 5150 // WorkspaceStateStarting is a WorkspaceState enum value 5151 WorkspaceStateStarting = "STARTING" 5152 5153 // WorkspaceStateRebuilding is a WorkspaceState enum value 5154 WorkspaceStateRebuilding = "REBUILDING" 5155 5156 // WorkspaceStateMaintenance is a WorkspaceState enum value 5157 WorkspaceStateMaintenance = "MAINTENANCE" 5158 5159 // WorkspaceStateAdminMaintenance is a WorkspaceState enum value 5160 WorkspaceStateAdminMaintenance = "ADMIN_MAINTENANCE" 5161 5162 // WorkspaceStateTerminating is a WorkspaceState enum value 5163 WorkspaceStateTerminating = "TERMINATING" 5164 5165 // WorkspaceStateTerminated is a WorkspaceState enum value 5166 WorkspaceStateTerminated = "TERMINATED" 5167 5168 // WorkspaceStateSuspended is a WorkspaceState enum value 5169 WorkspaceStateSuspended = "SUSPENDED" 5170 5171 // WorkspaceStateUpdating is a WorkspaceState enum value 5172 WorkspaceStateUpdating = "UPDATING" 5173 5174 // WorkspaceStateStopping is a WorkspaceState enum value 5175 WorkspaceStateStopping = "STOPPING" 5176 5177 // WorkspaceStateStopped is a WorkspaceState enum value 5178 WorkspaceStateStopped = "STOPPED" 5179 5180 // WorkspaceStateError is a WorkspaceState enum value 5181 WorkspaceStateError = "ERROR" 5182) 5183