github.com/aavshr/aws-sdk-go@v1.41.3/service/nimblestudio/api.go (about)

     1  // Code generated by private/model/cli/gen-api/main.go. DO NOT EDIT.
     2  
     3  package nimblestudio
     4  
     5  import (
     6  	"fmt"
     7  	"time"
     8  
     9  	"github.com/aavshr/aws-sdk-go/aws"
    10  	"github.com/aavshr/aws-sdk-go/aws/awsutil"
    11  	"github.com/aavshr/aws-sdk-go/aws/request"
    12  	"github.com/aavshr/aws-sdk-go/private/protocol"
    13  	"github.com/aavshr/aws-sdk-go/private/protocol/restjson"
    14  )
    15  
    16  const opAcceptEulas = "AcceptEulas"
    17  
    18  // AcceptEulasRequest generates a "aws/request.Request" representing the
    19  // client's request for the AcceptEulas operation. The "output" return
    20  // value will be populated with the request's response once the request completes
    21  // successfully.
    22  //
    23  // Use "Send" method on the returned Request to send the API call to the service.
    24  // the "output" return value is not valid until after Send returns without error.
    25  //
    26  // See AcceptEulas for more information on using the AcceptEulas
    27  // API call, and error handling.
    28  //
    29  // This method is useful when you want to inject custom logic or configuration
    30  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
    31  //
    32  //
    33  //    // Example sending a request using the AcceptEulasRequest method.
    34  //    req, resp := client.AcceptEulasRequest(params)
    35  //
    36  //    err := req.Send()
    37  //    if err == nil { // resp is now filled
    38  //        fmt.Println(resp)
    39  //    }
    40  //
    41  // See also, https://docs.aws.amazon.com/goto/WebAPI/nimble-2020-08-01/AcceptEulas
    42  func (c *NimbleStudio) AcceptEulasRequest(input *AcceptEulasInput) (req *request.Request, output *AcceptEulasOutput) {
    43  	op := &request.Operation{
    44  		Name:       opAcceptEulas,
    45  		HTTPMethod: "POST",
    46  		HTTPPath:   "/2020-08-01/studios/{studioId}/eula-acceptances",
    47  	}
    48  
    49  	if input == nil {
    50  		input = &AcceptEulasInput{}
    51  	}
    52  
    53  	output = &AcceptEulasOutput{}
    54  	req = c.newRequest(op, input, output)
    55  	return
    56  }
    57  
    58  // AcceptEulas API operation for AmazonNimbleStudio.
    59  //
    60  // Accept EULAs.
    61  //
    62  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
    63  // with awserr.Error's Code and Message methods to get detailed information about
    64  // the error.
    65  //
    66  // See the AWS API reference guide for AmazonNimbleStudio's
    67  // API operation AcceptEulas for usage and error information.
    68  //
    69  // Returned Error Types:
    70  //   * ValidationException
    71  //
    72  //   * InternalServerErrorException
    73  //
    74  //   * ServiceQuotaExceededException
    75  //
    76  //   * AccessDeniedException
    77  //
    78  //   * ResourceNotFoundException
    79  //
    80  //   * ThrottlingException
    81  //
    82  //   * ConflictException
    83  //
    84  // See also, https://docs.aws.amazon.com/goto/WebAPI/nimble-2020-08-01/AcceptEulas
    85  func (c *NimbleStudio) AcceptEulas(input *AcceptEulasInput) (*AcceptEulasOutput, error) {
    86  	req, out := c.AcceptEulasRequest(input)
    87  	return out, req.Send()
    88  }
    89  
    90  // AcceptEulasWithContext is the same as AcceptEulas with the addition of
    91  // the ability to pass a context and additional request options.
    92  //
    93  // See AcceptEulas for details on how to use this API operation.
    94  //
    95  // The context must be non-nil and will be used for request cancellation. If
    96  // the context is nil a panic will occur. In the future the SDK may create
    97  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
    98  // for more information on using Contexts.
    99  func (c *NimbleStudio) AcceptEulasWithContext(ctx aws.Context, input *AcceptEulasInput, opts ...request.Option) (*AcceptEulasOutput, error) {
   100  	req, out := c.AcceptEulasRequest(input)
   101  	req.SetContext(ctx)
   102  	req.ApplyOptions(opts...)
   103  	return out, req.Send()
   104  }
   105  
   106  const opCreateLaunchProfile = "CreateLaunchProfile"
   107  
   108  // CreateLaunchProfileRequest generates a "aws/request.Request" representing the
   109  // client's request for the CreateLaunchProfile operation. The "output" return
   110  // value will be populated with the request's response once the request completes
   111  // successfully.
   112  //
   113  // Use "Send" method on the returned Request to send the API call to the service.
   114  // the "output" return value is not valid until after Send returns without error.
   115  //
   116  // See CreateLaunchProfile for more information on using the CreateLaunchProfile
   117  // API call, and error handling.
   118  //
   119  // This method is useful when you want to inject custom logic or configuration
   120  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
   121  //
   122  //
   123  //    // Example sending a request using the CreateLaunchProfileRequest method.
   124  //    req, resp := client.CreateLaunchProfileRequest(params)
   125  //
   126  //    err := req.Send()
   127  //    if err == nil { // resp is now filled
   128  //        fmt.Println(resp)
   129  //    }
   130  //
   131  // See also, https://docs.aws.amazon.com/goto/WebAPI/nimble-2020-08-01/CreateLaunchProfile
   132  func (c *NimbleStudio) CreateLaunchProfileRequest(input *CreateLaunchProfileInput) (req *request.Request, output *CreateLaunchProfileOutput) {
   133  	op := &request.Operation{
   134  		Name:       opCreateLaunchProfile,
   135  		HTTPMethod: "POST",
   136  		HTTPPath:   "/2020-08-01/studios/{studioId}/launch-profiles",
   137  	}
   138  
   139  	if input == nil {
   140  		input = &CreateLaunchProfileInput{}
   141  	}
   142  
   143  	output = &CreateLaunchProfileOutput{}
   144  	req = c.newRequest(op, input, output)
   145  	return
   146  }
   147  
   148  // CreateLaunchProfile API operation for AmazonNimbleStudio.
   149  //
   150  // Create a launch profile.
   151  //
   152  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
   153  // with awserr.Error's Code and Message methods to get detailed information about
   154  // the error.
   155  //
   156  // See the AWS API reference guide for AmazonNimbleStudio's
   157  // API operation CreateLaunchProfile for usage and error information.
   158  //
   159  // Returned Error Types:
   160  //   * ValidationException
   161  //
   162  //   * InternalServerErrorException
   163  //
   164  //   * ServiceQuotaExceededException
   165  //
   166  //   * AccessDeniedException
   167  //
   168  //   * ResourceNotFoundException
   169  //
   170  //   * ThrottlingException
   171  //
   172  //   * ConflictException
   173  //
   174  // See also, https://docs.aws.amazon.com/goto/WebAPI/nimble-2020-08-01/CreateLaunchProfile
   175  func (c *NimbleStudio) CreateLaunchProfile(input *CreateLaunchProfileInput) (*CreateLaunchProfileOutput, error) {
   176  	req, out := c.CreateLaunchProfileRequest(input)
   177  	return out, req.Send()
   178  }
   179  
   180  // CreateLaunchProfileWithContext is the same as CreateLaunchProfile with the addition of
   181  // the ability to pass a context and additional request options.
   182  //
   183  // See CreateLaunchProfile for details on how to use this API operation.
   184  //
   185  // The context must be non-nil and will be used for request cancellation. If
   186  // the context is nil a panic will occur. In the future the SDK may create
   187  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
   188  // for more information on using Contexts.
   189  func (c *NimbleStudio) CreateLaunchProfileWithContext(ctx aws.Context, input *CreateLaunchProfileInput, opts ...request.Option) (*CreateLaunchProfileOutput, error) {
   190  	req, out := c.CreateLaunchProfileRequest(input)
   191  	req.SetContext(ctx)
   192  	req.ApplyOptions(opts...)
   193  	return out, req.Send()
   194  }
   195  
   196  const opCreateStreamingImage = "CreateStreamingImage"
   197  
   198  // CreateStreamingImageRequest generates a "aws/request.Request" representing the
   199  // client's request for the CreateStreamingImage operation. The "output" return
   200  // value will be populated with the request's response once the request completes
   201  // successfully.
   202  //
   203  // Use "Send" method on the returned Request to send the API call to the service.
   204  // the "output" return value is not valid until after Send returns without error.
   205  //
   206  // See CreateStreamingImage for more information on using the CreateStreamingImage
   207  // API call, and error handling.
   208  //
   209  // This method is useful when you want to inject custom logic or configuration
   210  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
   211  //
   212  //
   213  //    // Example sending a request using the CreateStreamingImageRequest method.
   214  //    req, resp := client.CreateStreamingImageRequest(params)
   215  //
   216  //    err := req.Send()
   217  //    if err == nil { // resp is now filled
   218  //        fmt.Println(resp)
   219  //    }
   220  //
   221  // See also, https://docs.aws.amazon.com/goto/WebAPI/nimble-2020-08-01/CreateStreamingImage
   222  func (c *NimbleStudio) CreateStreamingImageRequest(input *CreateStreamingImageInput) (req *request.Request, output *CreateStreamingImageOutput) {
   223  	op := &request.Operation{
   224  		Name:       opCreateStreamingImage,
   225  		HTTPMethod: "POST",
   226  		HTTPPath:   "/2020-08-01/studios/{studioId}/streaming-images",
   227  	}
   228  
   229  	if input == nil {
   230  		input = &CreateStreamingImageInput{}
   231  	}
   232  
   233  	output = &CreateStreamingImageOutput{}
   234  	req = c.newRequest(op, input, output)
   235  	return
   236  }
   237  
   238  // CreateStreamingImage API operation for AmazonNimbleStudio.
   239  //
   240  // Creates a streaming image resource in a studio.
   241  //
   242  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
   243  // with awserr.Error's Code and Message methods to get detailed information about
   244  // the error.
   245  //
   246  // See the AWS API reference guide for AmazonNimbleStudio's
   247  // API operation CreateStreamingImage for usage and error information.
   248  //
   249  // Returned Error Types:
   250  //   * ValidationException
   251  //
   252  //   * InternalServerErrorException
   253  //
   254  //   * ServiceQuotaExceededException
   255  //
   256  //   * AccessDeniedException
   257  //
   258  //   * ResourceNotFoundException
   259  //
   260  //   * ThrottlingException
   261  //
   262  //   * ConflictException
   263  //
   264  // See also, https://docs.aws.amazon.com/goto/WebAPI/nimble-2020-08-01/CreateStreamingImage
   265  func (c *NimbleStudio) CreateStreamingImage(input *CreateStreamingImageInput) (*CreateStreamingImageOutput, error) {
   266  	req, out := c.CreateStreamingImageRequest(input)
   267  	return out, req.Send()
   268  }
   269  
   270  // CreateStreamingImageWithContext is the same as CreateStreamingImage with the addition of
   271  // the ability to pass a context and additional request options.
   272  //
   273  // See CreateStreamingImage for details on how to use this API operation.
   274  //
   275  // The context must be non-nil and will be used for request cancellation. If
   276  // the context is nil a panic will occur. In the future the SDK may create
   277  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
   278  // for more information on using Contexts.
   279  func (c *NimbleStudio) CreateStreamingImageWithContext(ctx aws.Context, input *CreateStreamingImageInput, opts ...request.Option) (*CreateStreamingImageOutput, error) {
   280  	req, out := c.CreateStreamingImageRequest(input)
   281  	req.SetContext(ctx)
   282  	req.ApplyOptions(opts...)
   283  	return out, req.Send()
   284  }
   285  
   286  const opCreateStreamingSession = "CreateStreamingSession"
   287  
   288  // CreateStreamingSessionRequest generates a "aws/request.Request" representing the
   289  // client's request for the CreateStreamingSession operation. The "output" return
   290  // value will be populated with the request's response once the request completes
   291  // successfully.
   292  //
   293  // Use "Send" method on the returned Request to send the API call to the service.
   294  // the "output" return value is not valid until after Send returns without error.
   295  //
   296  // See CreateStreamingSession for more information on using the CreateStreamingSession
   297  // API call, and error handling.
   298  //
   299  // This method is useful when you want to inject custom logic or configuration
   300  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
   301  //
   302  //
   303  //    // Example sending a request using the CreateStreamingSessionRequest method.
   304  //    req, resp := client.CreateStreamingSessionRequest(params)
   305  //
   306  //    err := req.Send()
   307  //    if err == nil { // resp is now filled
   308  //        fmt.Println(resp)
   309  //    }
   310  //
   311  // See also, https://docs.aws.amazon.com/goto/WebAPI/nimble-2020-08-01/CreateStreamingSession
   312  func (c *NimbleStudio) CreateStreamingSessionRequest(input *CreateStreamingSessionInput) (req *request.Request, output *CreateStreamingSessionOutput) {
   313  	op := &request.Operation{
   314  		Name:       opCreateStreamingSession,
   315  		HTTPMethod: "POST",
   316  		HTTPPath:   "/2020-08-01/studios/{studioId}/streaming-sessions",
   317  	}
   318  
   319  	if input == nil {
   320  		input = &CreateStreamingSessionInput{}
   321  	}
   322  
   323  	output = &CreateStreamingSessionOutput{}
   324  	req = c.newRequest(op, input, output)
   325  	return
   326  }
   327  
   328  // CreateStreamingSession API operation for AmazonNimbleStudio.
   329  //
   330  // Creates a streaming session in a studio.
   331  //
   332  // After invoking this operation, you must poll GetStreamingSession until the
   333  // streaming session is in state READY.
   334  //
   335  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
   336  // with awserr.Error's Code and Message methods to get detailed information about
   337  // the error.
   338  //
   339  // See the AWS API reference guide for AmazonNimbleStudio's
   340  // API operation CreateStreamingSession for usage and error information.
   341  //
   342  // Returned Error Types:
   343  //   * ValidationException
   344  //
   345  //   * InternalServerErrorException
   346  //
   347  //   * ServiceQuotaExceededException
   348  //
   349  //   * AccessDeniedException
   350  //
   351  //   * ResourceNotFoundException
   352  //
   353  //   * ThrottlingException
   354  //
   355  //   * ConflictException
   356  //
   357  // See also, https://docs.aws.amazon.com/goto/WebAPI/nimble-2020-08-01/CreateStreamingSession
   358  func (c *NimbleStudio) CreateStreamingSession(input *CreateStreamingSessionInput) (*CreateStreamingSessionOutput, error) {
   359  	req, out := c.CreateStreamingSessionRequest(input)
   360  	return out, req.Send()
   361  }
   362  
   363  // CreateStreamingSessionWithContext is the same as CreateStreamingSession with the addition of
   364  // the ability to pass a context and additional request options.
   365  //
   366  // See CreateStreamingSession for details on how to use this API operation.
   367  //
   368  // The context must be non-nil and will be used for request cancellation. If
   369  // the context is nil a panic will occur. In the future the SDK may create
   370  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
   371  // for more information on using Contexts.
   372  func (c *NimbleStudio) CreateStreamingSessionWithContext(ctx aws.Context, input *CreateStreamingSessionInput, opts ...request.Option) (*CreateStreamingSessionOutput, error) {
   373  	req, out := c.CreateStreamingSessionRequest(input)
   374  	req.SetContext(ctx)
   375  	req.ApplyOptions(opts...)
   376  	return out, req.Send()
   377  }
   378  
   379  const opCreateStreamingSessionStream = "CreateStreamingSessionStream"
   380  
   381  // CreateStreamingSessionStreamRequest generates a "aws/request.Request" representing the
   382  // client's request for the CreateStreamingSessionStream operation. The "output" return
   383  // value will be populated with the request's response once the request completes
   384  // successfully.
   385  //
   386  // Use "Send" method on the returned Request to send the API call to the service.
   387  // the "output" return value is not valid until after Send returns without error.
   388  //
   389  // See CreateStreamingSessionStream for more information on using the CreateStreamingSessionStream
   390  // API call, and error handling.
   391  //
   392  // This method is useful when you want to inject custom logic or configuration
   393  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
   394  //
   395  //
   396  //    // Example sending a request using the CreateStreamingSessionStreamRequest method.
   397  //    req, resp := client.CreateStreamingSessionStreamRequest(params)
   398  //
   399  //    err := req.Send()
   400  //    if err == nil { // resp is now filled
   401  //        fmt.Println(resp)
   402  //    }
   403  //
   404  // See also, https://docs.aws.amazon.com/goto/WebAPI/nimble-2020-08-01/CreateStreamingSessionStream
   405  func (c *NimbleStudio) CreateStreamingSessionStreamRequest(input *CreateStreamingSessionStreamInput) (req *request.Request, output *CreateStreamingSessionStreamOutput) {
   406  	op := &request.Operation{
   407  		Name:       opCreateStreamingSessionStream,
   408  		HTTPMethod: "POST",
   409  		HTTPPath:   "/2020-08-01/studios/{studioId}/streaming-sessions/{sessionId}/streams",
   410  	}
   411  
   412  	if input == nil {
   413  		input = &CreateStreamingSessionStreamInput{}
   414  	}
   415  
   416  	output = &CreateStreamingSessionStreamOutput{}
   417  	req = c.newRequest(op, input, output)
   418  	return
   419  }
   420  
   421  // CreateStreamingSessionStream API operation for AmazonNimbleStudio.
   422  //
   423  // Creates a streaming session stream for a streaming session.
   424  //
   425  // After invoking this API, invoke GetStreamingSessionStream with the returned
   426  // streamId to poll the resource until it is in state READY.
   427  //
   428  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
   429  // with awserr.Error's Code and Message methods to get detailed information about
   430  // the error.
   431  //
   432  // See the AWS API reference guide for AmazonNimbleStudio's
   433  // API operation CreateStreamingSessionStream for usage and error information.
   434  //
   435  // Returned Error Types:
   436  //   * ValidationException
   437  //
   438  //   * InternalServerErrorException
   439  //
   440  //   * ServiceQuotaExceededException
   441  //
   442  //   * AccessDeniedException
   443  //
   444  //   * ResourceNotFoundException
   445  //
   446  //   * ThrottlingException
   447  //
   448  //   * ConflictException
   449  //
   450  // See also, https://docs.aws.amazon.com/goto/WebAPI/nimble-2020-08-01/CreateStreamingSessionStream
   451  func (c *NimbleStudio) CreateStreamingSessionStream(input *CreateStreamingSessionStreamInput) (*CreateStreamingSessionStreamOutput, error) {
   452  	req, out := c.CreateStreamingSessionStreamRequest(input)
   453  	return out, req.Send()
   454  }
   455  
   456  // CreateStreamingSessionStreamWithContext is the same as CreateStreamingSessionStream with the addition of
   457  // the ability to pass a context and additional request options.
   458  //
   459  // See CreateStreamingSessionStream for details on how to use this API operation.
   460  //
   461  // The context must be non-nil and will be used for request cancellation. If
   462  // the context is nil a panic will occur. In the future the SDK may create
   463  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
   464  // for more information on using Contexts.
   465  func (c *NimbleStudio) CreateStreamingSessionStreamWithContext(ctx aws.Context, input *CreateStreamingSessionStreamInput, opts ...request.Option) (*CreateStreamingSessionStreamOutput, error) {
   466  	req, out := c.CreateStreamingSessionStreamRequest(input)
   467  	req.SetContext(ctx)
   468  	req.ApplyOptions(opts...)
   469  	return out, req.Send()
   470  }
   471  
   472  const opCreateStudio = "CreateStudio"
   473  
   474  // CreateStudioRequest generates a "aws/request.Request" representing the
   475  // client's request for the CreateStudio operation. The "output" return
   476  // value will be populated with the request's response once the request completes
   477  // successfully.
   478  //
   479  // Use "Send" method on the returned Request to send the API call to the service.
   480  // the "output" return value is not valid until after Send returns without error.
   481  //
   482  // See CreateStudio for more information on using the CreateStudio
   483  // API call, and error handling.
   484  //
   485  // This method is useful when you want to inject custom logic or configuration
   486  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
   487  //
   488  //
   489  //    // Example sending a request using the CreateStudioRequest method.
   490  //    req, resp := client.CreateStudioRequest(params)
   491  //
   492  //    err := req.Send()
   493  //    if err == nil { // resp is now filled
   494  //        fmt.Println(resp)
   495  //    }
   496  //
   497  // See also, https://docs.aws.amazon.com/goto/WebAPI/nimble-2020-08-01/CreateStudio
   498  func (c *NimbleStudio) CreateStudioRequest(input *CreateStudioInput) (req *request.Request, output *CreateStudioOutput) {
   499  	op := &request.Operation{
   500  		Name:       opCreateStudio,
   501  		HTTPMethod: "POST",
   502  		HTTPPath:   "/2020-08-01/studios",
   503  	}
   504  
   505  	if input == nil {
   506  		input = &CreateStudioInput{}
   507  	}
   508  
   509  	output = &CreateStudioOutput{}
   510  	req = c.newRequest(op, input, output)
   511  	return
   512  }
   513  
   514  // CreateStudio API operation for AmazonNimbleStudio.
   515  //
   516  // Create a new Studio.
   517  //
   518  // When creating a Studio, two IAM roles must be provided: the admin role and
   519  // the user Role. These roles are assumed by your users when they log in to
   520  // the Nimble Studio portal.
   521  //
   522  // The user role must have the AmazonNimbleStudio-StudioUser managed policy
   523  // attached for the portal to function properly.
   524  //
   525  // The Admin Role must have the AmazonNimbleStudio-StudioAdmin managed policy
   526  // attached for the portal to function properly.
   527  //
   528  // You may optionally specify a KMS key in the StudioEncryptionConfiguration.
   529  //
   530  // In Nimble Studio, resource names, descriptions, initialization scripts, and
   531  // other data you provide are always encrypted at rest using an KMS key. By
   532  // default, this key is owned by Amazon Web Services and managed on your behalf.
   533  // You may provide your own KMS key when calling CreateStudio to encrypt this
   534  // data using a key you own and manage.
   535  //
   536  // When providing an KMS key during studio creation, Nimble Studio creates KMS
   537  // grants in your account to provide your studio user and admin roles access
   538  // to these KMS keys.
   539  //
   540  // If you delete this grant, the studio will no longer be accessible to your
   541  // portal users.
   542  //
   543  // If you delete the studio KMS key, your studio will no longer be accessible.
   544  //
   545  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
   546  // with awserr.Error's Code and Message methods to get detailed information about
   547  // the error.
   548  //
   549  // See the AWS API reference guide for AmazonNimbleStudio's
   550  // API operation CreateStudio for usage and error information.
   551  //
   552  // Returned Error Types:
   553  //   * ValidationException
   554  //
   555  //   * InternalServerErrorException
   556  //
   557  //   * ServiceQuotaExceededException
   558  //
   559  //   * AccessDeniedException
   560  //
   561  //   * ResourceNotFoundException
   562  //
   563  //   * ThrottlingException
   564  //
   565  //   * ConflictException
   566  //
   567  // See also, https://docs.aws.amazon.com/goto/WebAPI/nimble-2020-08-01/CreateStudio
   568  func (c *NimbleStudio) CreateStudio(input *CreateStudioInput) (*CreateStudioOutput, error) {
   569  	req, out := c.CreateStudioRequest(input)
   570  	return out, req.Send()
   571  }
   572  
   573  // CreateStudioWithContext is the same as CreateStudio with the addition of
   574  // the ability to pass a context and additional request options.
   575  //
   576  // See CreateStudio for details on how to use this API operation.
   577  //
   578  // The context must be non-nil and will be used for request cancellation. If
   579  // the context is nil a panic will occur. In the future the SDK may create
   580  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
   581  // for more information on using Contexts.
   582  func (c *NimbleStudio) CreateStudioWithContext(ctx aws.Context, input *CreateStudioInput, opts ...request.Option) (*CreateStudioOutput, error) {
   583  	req, out := c.CreateStudioRequest(input)
   584  	req.SetContext(ctx)
   585  	req.ApplyOptions(opts...)
   586  	return out, req.Send()
   587  }
   588  
   589  const opCreateStudioComponent = "CreateStudioComponent"
   590  
   591  // CreateStudioComponentRequest generates a "aws/request.Request" representing the
   592  // client's request for the CreateStudioComponent operation. The "output" return
   593  // value will be populated with the request's response once the request completes
   594  // successfully.
   595  //
   596  // Use "Send" method on the returned Request to send the API call to the service.
   597  // the "output" return value is not valid until after Send returns without error.
   598  //
   599  // See CreateStudioComponent for more information on using the CreateStudioComponent
   600  // API call, and error handling.
   601  //
   602  // This method is useful when you want to inject custom logic or configuration
   603  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
   604  //
   605  //
   606  //    // Example sending a request using the CreateStudioComponentRequest method.
   607  //    req, resp := client.CreateStudioComponentRequest(params)
   608  //
   609  //    err := req.Send()
   610  //    if err == nil { // resp is now filled
   611  //        fmt.Println(resp)
   612  //    }
   613  //
   614  // See also, https://docs.aws.amazon.com/goto/WebAPI/nimble-2020-08-01/CreateStudioComponent
   615  func (c *NimbleStudio) CreateStudioComponentRequest(input *CreateStudioComponentInput) (req *request.Request, output *CreateStudioComponentOutput) {
   616  	op := &request.Operation{
   617  		Name:       opCreateStudioComponent,
   618  		HTTPMethod: "POST",
   619  		HTTPPath:   "/2020-08-01/studios/{studioId}/studio-components",
   620  	}
   621  
   622  	if input == nil {
   623  		input = &CreateStudioComponentInput{}
   624  	}
   625  
   626  	output = &CreateStudioComponentOutput{}
   627  	req = c.newRequest(op, input, output)
   628  	return
   629  }
   630  
   631  // CreateStudioComponent API operation for AmazonNimbleStudio.
   632  //
   633  // Creates a studio component resource.
   634  //
   635  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
   636  // with awserr.Error's Code and Message methods to get detailed information about
   637  // the error.
   638  //
   639  // See the AWS API reference guide for AmazonNimbleStudio's
   640  // API operation CreateStudioComponent for usage and error information.
   641  //
   642  // Returned Error Types:
   643  //   * ValidationException
   644  //
   645  //   * InternalServerErrorException
   646  //
   647  //   * ServiceQuotaExceededException
   648  //
   649  //   * AccessDeniedException
   650  //
   651  //   * ResourceNotFoundException
   652  //
   653  //   * ThrottlingException
   654  //
   655  //   * ConflictException
   656  //
   657  // See also, https://docs.aws.amazon.com/goto/WebAPI/nimble-2020-08-01/CreateStudioComponent
   658  func (c *NimbleStudio) CreateStudioComponent(input *CreateStudioComponentInput) (*CreateStudioComponentOutput, error) {
   659  	req, out := c.CreateStudioComponentRequest(input)
   660  	return out, req.Send()
   661  }
   662  
   663  // CreateStudioComponentWithContext is the same as CreateStudioComponent with the addition of
   664  // the ability to pass a context and additional request options.
   665  //
   666  // See CreateStudioComponent for details on how to use this API operation.
   667  //
   668  // The context must be non-nil and will be used for request cancellation. If
   669  // the context is nil a panic will occur. In the future the SDK may create
   670  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
   671  // for more information on using Contexts.
   672  func (c *NimbleStudio) CreateStudioComponentWithContext(ctx aws.Context, input *CreateStudioComponentInput, opts ...request.Option) (*CreateStudioComponentOutput, error) {
   673  	req, out := c.CreateStudioComponentRequest(input)
   674  	req.SetContext(ctx)
   675  	req.ApplyOptions(opts...)
   676  	return out, req.Send()
   677  }
   678  
   679  const opDeleteLaunchProfile = "DeleteLaunchProfile"
   680  
   681  // DeleteLaunchProfileRequest generates a "aws/request.Request" representing the
   682  // client's request for the DeleteLaunchProfile operation. The "output" return
   683  // value will be populated with the request's response once the request completes
   684  // successfully.
   685  //
   686  // Use "Send" method on the returned Request to send the API call to the service.
   687  // the "output" return value is not valid until after Send returns without error.
   688  //
   689  // See DeleteLaunchProfile for more information on using the DeleteLaunchProfile
   690  // API call, and error handling.
   691  //
   692  // This method is useful when you want to inject custom logic or configuration
   693  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
   694  //
   695  //
   696  //    // Example sending a request using the DeleteLaunchProfileRequest method.
   697  //    req, resp := client.DeleteLaunchProfileRequest(params)
   698  //
   699  //    err := req.Send()
   700  //    if err == nil { // resp is now filled
   701  //        fmt.Println(resp)
   702  //    }
   703  //
   704  // See also, https://docs.aws.amazon.com/goto/WebAPI/nimble-2020-08-01/DeleteLaunchProfile
   705  func (c *NimbleStudio) DeleteLaunchProfileRequest(input *DeleteLaunchProfileInput) (req *request.Request, output *DeleteLaunchProfileOutput) {
   706  	op := &request.Operation{
   707  		Name:       opDeleteLaunchProfile,
   708  		HTTPMethod: "DELETE",
   709  		HTTPPath:   "/2020-08-01/studios/{studioId}/launch-profiles/{launchProfileId}",
   710  	}
   711  
   712  	if input == nil {
   713  		input = &DeleteLaunchProfileInput{}
   714  	}
   715  
   716  	output = &DeleteLaunchProfileOutput{}
   717  	req = c.newRequest(op, input, output)
   718  	return
   719  }
   720  
   721  // DeleteLaunchProfile API operation for AmazonNimbleStudio.
   722  //
   723  // Permanently delete a launch profile.
   724  //
   725  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
   726  // with awserr.Error's Code and Message methods to get detailed information about
   727  // the error.
   728  //
   729  // See the AWS API reference guide for AmazonNimbleStudio's
   730  // API operation DeleteLaunchProfile for usage and error information.
   731  //
   732  // Returned Error Types:
   733  //   * ValidationException
   734  //
   735  //   * InternalServerErrorException
   736  //
   737  //   * ServiceQuotaExceededException
   738  //
   739  //   * AccessDeniedException
   740  //
   741  //   * ResourceNotFoundException
   742  //
   743  //   * ThrottlingException
   744  //
   745  //   * ConflictException
   746  //
   747  // See also, https://docs.aws.amazon.com/goto/WebAPI/nimble-2020-08-01/DeleteLaunchProfile
   748  func (c *NimbleStudio) DeleteLaunchProfile(input *DeleteLaunchProfileInput) (*DeleteLaunchProfileOutput, error) {
   749  	req, out := c.DeleteLaunchProfileRequest(input)
   750  	return out, req.Send()
   751  }
   752  
   753  // DeleteLaunchProfileWithContext is the same as DeleteLaunchProfile with the addition of
   754  // the ability to pass a context and additional request options.
   755  //
   756  // See DeleteLaunchProfile for details on how to use this API operation.
   757  //
   758  // The context must be non-nil and will be used for request cancellation. If
   759  // the context is nil a panic will occur. In the future the SDK may create
   760  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
   761  // for more information on using Contexts.
   762  func (c *NimbleStudio) DeleteLaunchProfileWithContext(ctx aws.Context, input *DeleteLaunchProfileInput, opts ...request.Option) (*DeleteLaunchProfileOutput, error) {
   763  	req, out := c.DeleteLaunchProfileRequest(input)
   764  	req.SetContext(ctx)
   765  	req.ApplyOptions(opts...)
   766  	return out, req.Send()
   767  }
   768  
   769  const opDeleteLaunchProfileMember = "DeleteLaunchProfileMember"
   770  
   771  // DeleteLaunchProfileMemberRequest generates a "aws/request.Request" representing the
   772  // client's request for the DeleteLaunchProfileMember operation. The "output" return
   773  // value will be populated with the request's response once the request completes
   774  // successfully.
   775  //
   776  // Use "Send" method on the returned Request to send the API call to the service.
   777  // the "output" return value is not valid until after Send returns without error.
   778  //
   779  // See DeleteLaunchProfileMember for more information on using the DeleteLaunchProfileMember
   780  // API call, and error handling.
   781  //
   782  // This method is useful when you want to inject custom logic or configuration
   783  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
   784  //
   785  //
   786  //    // Example sending a request using the DeleteLaunchProfileMemberRequest method.
   787  //    req, resp := client.DeleteLaunchProfileMemberRequest(params)
   788  //
   789  //    err := req.Send()
   790  //    if err == nil { // resp is now filled
   791  //        fmt.Println(resp)
   792  //    }
   793  //
   794  // See also, https://docs.aws.amazon.com/goto/WebAPI/nimble-2020-08-01/DeleteLaunchProfileMember
   795  func (c *NimbleStudio) DeleteLaunchProfileMemberRequest(input *DeleteLaunchProfileMemberInput) (req *request.Request, output *DeleteLaunchProfileMemberOutput) {
   796  	op := &request.Operation{
   797  		Name:       opDeleteLaunchProfileMember,
   798  		HTTPMethod: "DELETE",
   799  		HTTPPath:   "/2020-08-01/studios/{studioId}/launch-profiles/{launchProfileId}/membership/{principalId}",
   800  	}
   801  
   802  	if input == nil {
   803  		input = &DeleteLaunchProfileMemberInput{}
   804  	}
   805  
   806  	output = &DeleteLaunchProfileMemberOutput{}
   807  	req = c.newRequest(op, input, output)
   808  	req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
   809  	return
   810  }
   811  
   812  // DeleteLaunchProfileMember API operation for AmazonNimbleStudio.
   813  //
   814  // Delete a user from launch profile membership.
   815  //
   816  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
   817  // with awserr.Error's Code and Message methods to get detailed information about
   818  // the error.
   819  //
   820  // See the AWS API reference guide for AmazonNimbleStudio's
   821  // API operation DeleteLaunchProfileMember for usage and error information.
   822  //
   823  // Returned Error Types:
   824  //   * ValidationException
   825  //
   826  //   * InternalServerErrorException
   827  //
   828  //   * ServiceQuotaExceededException
   829  //
   830  //   * AccessDeniedException
   831  //
   832  //   * ResourceNotFoundException
   833  //
   834  //   * ThrottlingException
   835  //
   836  //   * ConflictException
   837  //
   838  // See also, https://docs.aws.amazon.com/goto/WebAPI/nimble-2020-08-01/DeleteLaunchProfileMember
   839  func (c *NimbleStudio) DeleteLaunchProfileMember(input *DeleteLaunchProfileMemberInput) (*DeleteLaunchProfileMemberOutput, error) {
   840  	req, out := c.DeleteLaunchProfileMemberRequest(input)
   841  	return out, req.Send()
   842  }
   843  
   844  // DeleteLaunchProfileMemberWithContext is the same as DeleteLaunchProfileMember with the addition of
   845  // the ability to pass a context and additional request options.
   846  //
   847  // See DeleteLaunchProfileMember for details on how to use this API operation.
   848  //
   849  // The context must be non-nil and will be used for request cancellation. If
   850  // the context is nil a panic will occur. In the future the SDK may create
   851  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
   852  // for more information on using Contexts.
   853  func (c *NimbleStudio) DeleteLaunchProfileMemberWithContext(ctx aws.Context, input *DeleteLaunchProfileMemberInput, opts ...request.Option) (*DeleteLaunchProfileMemberOutput, error) {
   854  	req, out := c.DeleteLaunchProfileMemberRequest(input)
   855  	req.SetContext(ctx)
   856  	req.ApplyOptions(opts...)
   857  	return out, req.Send()
   858  }
   859  
   860  const opDeleteStreamingImage = "DeleteStreamingImage"
   861  
   862  // DeleteStreamingImageRequest generates a "aws/request.Request" representing the
   863  // client's request for the DeleteStreamingImage operation. The "output" return
   864  // value will be populated with the request's response once the request completes
   865  // successfully.
   866  //
   867  // Use "Send" method on the returned Request to send the API call to the service.
   868  // the "output" return value is not valid until after Send returns without error.
   869  //
   870  // See DeleteStreamingImage for more information on using the DeleteStreamingImage
   871  // API call, and error handling.
   872  //
   873  // This method is useful when you want to inject custom logic or configuration
   874  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
   875  //
   876  //
   877  //    // Example sending a request using the DeleteStreamingImageRequest method.
   878  //    req, resp := client.DeleteStreamingImageRequest(params)
   879  //
   880  //    err := req.Send()
   881  //    if err == nil { // resp is now filled
   882  //        fmt.Println(resp)
   883  //    }
   884  //
   885  // See also, https://docs.aws.amazon.com/goto/WebAPI/nimble-2020-08-01/DeleteStreamingImage
   886  func (c *NimbleStudio) DeleteStreamingImageRequest(input *DeleteStreamingImageInput) (req *request.Request, output *DeleteStreamingImageOutput) {
   887  	op := &request.Operation{
   888  		Name:       opDeleteStreamingImage,
   889  		HTTPMethod: "DELETE",
   890  		HTTPPath:   "/2020-08-01/studios/{studioId}/streaming-images/{streamingImageId}",
   891  	}
   892  
   893  	if input == nil {
   894  		input = &DeleteStreamingImageInput{}
   895  	}
   896  
   897  	output = &DeleteStreamingImageOutput{}
   898  	req = c.newRequest(op, input, output)
   899  	return
   900  }
   901  
   902  // DeleteStreamingImage API operation for AmazonNimbleStudio.
   903  //
   904  // Delete streaming image.
   905  //
   906  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
   907  // with awserr.Error's Code and Message methods to get detailed information about
   908  // the error.
   909  //
   910  // See the AWS API reference guide for AmazonNimbleStudio's
   911  // API operation DeleteStreamingImage for usage and error information.
   912  //
   913  // Returned Error Types:
   914  //   * ValidationException
   915  //
   916  //   * InternalServerErrorException
   917  //
   918  //   * ServiceQuotaExceededException
   919  //
   920  //   * AccessDeniedException
   921  //
   922  //   * ResourceNotFoundException
   923  //
   924  //   * ThrottlingException
   925  //
   926  //   * ConflictException
   927  //
   928  // See also, https://docs.aws.amazon.com/goto/WebAPI/nimble-2020-08-01/DeleteStreamingImage
   929  func (c *NimbleStudio) DeleteStreamingImage(input *DeleteStreamingImageInput) (*DeleteStreamingImageOutput, error) {
   930  	req, out := c.DeleteStreamingImageRequest(input)
   931  	return out, req.Send()
   932  }
   933  
   934  // DeleteStreamingImageWithContext is the same as DeleteStreamingImage with the addition of
   935  // the ability to pass a context and additional request options.
   936  //
   937  // See DeleteStreamingImage for details on how to use this API operation.
   938  //
   939  // The context must be non-nil and will be used for request cancellation. If
   940  // the context is nil a panic will occur. In the future the SDK may create
   941  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
   942  // for more information on using Contexts.
   943  func (c *NimbleStudio) DeleteStreamingImageWithContext(ctx aws.Context, input *DeleteStreamingImageInput, opts ...request.Option) (*DeleteStreamingImageOutput, error) {
   944  	req, out := c.DeleteStreamingImageRequest(input)
   945  	req.SetContext(ctx)
   946  	req.ApplyOptions(opts...)
   947  	return out, req.Send()
   948  }
   949  
   950  const opDeleteStreamingSession = "DeleteStreamingSession"
   951  
   952  // DeleteStreamingSessionRequest generates a "aws/request.Request" representing the
   953  // client's request for the DeleteStreamingSession operation. The "output" return
   954  // value will be populated with the request's response once the request completes
   955  // successfully.
   956  //
   957  // Use "Send" method on the returned Request to send the API call to the service.
   958  // the "output" return value is not valid until after Send returns without error.
   959  //
   960  // See DeleteStreamingSession for more information on using the DeleteStreamingSession
   961  // API call, and error handling.
   962  //
   963  // This method is useful when you want to inject custom logic or configuration
   964  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
   965  //
   966  //
   967  //    // Example sending a request using the DeleteStreamingSessionRequest method.
   968  //    req, resp := client.DeleteStreamingSessionRequest(params)
   969  //
   970  //    err := req.Send()
   971  //    if err == nil { // resp is now filled
   972  //        fmt.Println(resp)
   973  //    }
   974  //
   975  // See also, https://docs.aws.amazon.com/goto/WebAPI/nimble-2020-08-01/DeleteStreamingSession
   976  func (c *NimbleStudio) DeleteStreamingSessionRequest(input *DeleteStreamingSessionInput) (req *request.Request, output *DeleteStreamingSessionOutput) {
   977  	op := &request.Operation{
   978  		Name:       opDeleteStreamingSession,
   979  		HTTPMethod: "DELETE",
   980  		HTTPPath:   "/2020-08-01/studios/{studioId}/streaming-sessions/{sessionId}",
   981  	}
   982  
   983  	if input == nil {
   984  		input = &DeleteStreamingSessionInput{}
   985  	}
   986  
   987  	output = &DeleteStreamingSessionOutput{}
   988  	req = c.newRequest(op, input, output)
   989  	return
   990  }
   991  
   992  // DeleteStreamingSession API operation for AmazonNimbleStudio.
   993  //
   994  // Deletes streaming session resource.
   995  //
   996  // After invoking this operation, use GetStreamingSession to poll the resource
   997  // until it transitions to a DELETED state.
   998  //
   999  // A streaming session will count against your streaming session quota until
  1000  // it is marked DELETED.
  1001  //
  1002  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  1003  // with awserr.Error's Code and Message methods to get detailed information about
  1004  // the error.
  1005  //
  1006  // See the AWS API reference guide for AmazonNimbleStudio's
  1007  // API operation DeleteStreamingSession for usage and error information.
  1008  //
  1009  // Returned Error Types:
  1010  //   * ValidationException
  1011  //
  1012  //   * InternalServerErrorException
  1013  //
  1014  //   * ServiceQuotaExceededException
  1015  //
  1016  //   * AccessDeniedException
  1017  //
  1018  //   * ResourceNotFoundException
  1019  //
  1020  //   * ThrottlingException
  1021  //
  1022  //   * ConflictException
  1023  //
  1024  // See also, https://docs.aws.amazon.com/goto/WebAPI/nimble-2020-08-01/DeleteStreamingSession
  1025  func (c *NimbleStudio) DeleteStreamingSession(input *DeleteStreamingSessionInput) (*DeleteStreamingSessionOutput, error) {
  1026  	req, out := c.DeleteStreamingSessionRequest(input)
  1027  	return out, req.Send()
  1028  }
  1029  
  1030  // DeleteStreamingSessionWithContext is the same as DeleteStreamingSession with the addition of
  1031  // the ability to pass a context and additional request options.
  1032  //
  1033  // See DeleteStreamingSession for details on how to use this API operation.
  1034  //
  1035  // The context must be non-nil and will be used for request cancellation. If
  1036  // the context is nil a panic will occur. In the future the SDK may create
  1037  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  1038  // for more information on using Contexts.
  1039  func (c *NimbleStudio) DeleteStreamingSessionWithContext(ctx aws.Context, input *DeleteStreamingSessionInput, opts ...request.Option) (*DeleteStreamingSessionOutput, error) {
  1040  	req, out := c.DeleteStreamingSessionRequest(input)
  1041  	req.SetContext(ctx)
  1042  	req.ApplyOptions(opts...)
  1043  	return out, req.Send()
  1044  }
  1045  
  1046  const opDeleteStudio = "DeleteStudio"
  1047  
  1048  // DeleteStudioRequest generates a "aws/request.Request" representing the
  1049  // client's request for the DeleteStudio operation. The "output" return
  1050  // value will be populated with the request's response once the request completes
  1051  // successfully.
  1052  //
  1053  // Use "Send" method on the returned Request to send the API call to the service.
  1054  // the "output" return value is not valid until after Send returns without error.
  1055  //
  1056  // See DeleteStudio for more information on using the DeleteStudio
  1057  // API call, and error handling.
  1058  //
  1059  // This method is useful when you want to inject custom logic or configuration
  1060  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  1061  //
  1062  //
  1063  //    // Example sending a request using the DeleteStudioRequest method.
  1064  //    req, resp := client.DeleteStudioRequest(params)
  1065  //
  1066  //    err := req.Send()
  1067  //    if err == nil { // resp is now filled
  1068  //        fmt.Println(resp)
  1069  //    }
  1070  //
  1071  // See also, https://docs.aws.amazon.com/goto/WebAPI/nimble-2020-08-01/DeleteStudio
  1072  func (c *NimbleStudio) DeleteStudioRequest(input *DeleteStudioInput) (req *request.Request, output *DeleteStudioOutput) {
  1073  	op := &request.Operation{
  1074  		Name:       opDeleteStudio,
  1075  		HTTPMethod: "DELETE",
  1076  		HTTPPath:   "/2020-08-01/studios/{studioId}",
  1077  	}
  1078  
  1079  	if input == nil {
  1080  		input = &DeleteStudioInput{}
  1081  	}
  1082  
  1083  	output = &DeleteStudioOutput{}
  1084  	req = c.newRequest(op, input, output)
  1085  	return
  1086  }
  1087  
  1088  // DeleteStudio API operation for AmazonNimbleStudio.
  1089  //
  1090  // Delete a studio resource.
  1091  //
  1092  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  1093  // with awserr.Error's Code and Message methods to get detailed information about
  1094  // the error.
  1095  //
  1096  // See the AWS API reference guide for AmazonNimbleStudio's
  1097  // API operation DeleteStudio for usage and error information.
  1098  //
  1099  // Returned Error Types:
  1100  //   * ValidationException
  1101  //
  1102  //   * InternalServerErrorException
  1103  //
  1104  //   * ServiceQuotaExceededException
  1105  //
  1106  //   * AccessDeniedException
  1107  //
  1108  //   * ResourceNotFoundException
  1109  //
  1110  //   * ThrottlingException
  1111  //
  1112  //   * ConflictException
  1113  //
  1114  // See also, https://docs.aws.amazon.com/goto/WebAPI/nimble-2020-08-01/DeleteStudio
  1115  func (c *NimbleStudio) DeleteStudio(input *DeleteStudioInput) (*DeleteStudioOutput, error) {
  1116  	req, out := c.DeleteStudioRequest(input)
  1117  	return out, req.Send()
  1118  }
  1119  
  1120  // DeleteStudioWithContext is the same as DeleteStudio with the addition of
  1121  // the ability to pass a context and additional request options.
  1122  //
  1123  // See DeleteStudio for details on how to use this API operation.
  1124  //
  1125  // The context must be non-nil and will be used for request cancellation. If
  1126  // the context is nil a panic will occur. In the future the SDK may create
  1127  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  1128  // for more information on using Contexts.
  1129  func (c *NimbleStudio) DeleteStudioWithContext(ctx aws.Context, input *DeleteStudioInput, opts ...request.Option) (*DeleteStudioOutput, error) {
  1130  	req, out := c.DeleteStudioRequest(input)
  1131  	req.SetContext(ctx)
  1132  	req.ApplyOptions(opts...)
  1133  	return out, req.Send()
  1134  }
  1135  
  1136  const opDeleteStudioComponent = "DeleteStudioComponent"
  1137  
  1138  // DeleteStudioComponentRequest generates a "aws/request.Request" representing the
  1139  // client's request for the DeleteStudioComponent operation. The "output" return
  1140  // value will be populated with the request's response once the request completes
  1141  // successfully.
  1142  //
  1143  // Use "Send" method on the returned Request to send the API call to the service.
  1144  // the "output" return value is not valid until after Send returns without error.
  1145  //
  1146  // See DeleteStudioComponent for more information on using the DeleteStudioComponent
  1147  // API call, and error handling.
  1148  //
  1149  // This method is useful when you want to inject custom logic or configuration
  1150  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  1151  //
  1152  //
  1153  //    // Example sending a request using the DeleteStudioComponentRequest method.
  1154  //    req, resp := client.DeleteStudioComponentRequest(params)
  1155  //
  1156  //    err := req.Send()
  1157  //    if err == nil { // resp is now filled
  1158  //        fmt.Println(resp)
  1159  //    }
  1160  //
  1161  // See also, https://docs.aws.amazon.com/goto/WebAPI/nimble-2020-08-01/DeleteStudioComponent
  1162  func (c *NimbleStudio) DeleteStudioComponentRequest(input *DeleteStudioComponentInput) (req *request.Request, output *DeleteStudioComponentOutput) {
  1163  	op := &request.Operation{
  1164  		Name:       opDeleteStudioComponent,
  1165  		HTTPMethod: "DELETE",
  1166  		HTTPPath:   "/2020-08-01/studios/{studioId}/studio-components/{studioComponentId}",
  1167  	}
  1168  
  1169  	if input == nil {
  1170  		input = &DeleteStudioComponentInput{}
  1171  	}
  1172  
  1173  	output = &DeleteStudioComponentOutput{}
  1174  	req = c.newRequest(op, input, output)
  1175  	return
  1176  }
  1177  
  1178  // DeleteStudioComponent API operation for AmazonNimbleStudio.
  1179  //
  1180  // Deletes a studio component resource.
  1181  //
  1182  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  1183  // with awserr.Error's Code and Message methods to get detailed information about
  1184  // the error.
  1185  //
  1186  // See the AWS API reference guide for AmazonNimbleStudio's
  1187  // API operation DeleteStudioComponent for usage and error information.
  1188  //
  1189  // Returned Error Types:
  1190  //   * ValidationException
  1191  //
  1192  //   * InternalServerErrorException
  1193  //
  1194  //   * ServiceQuotaExceededException
  1195  //
  1196  //   * AccessDeniedException
  1197  //
  1198  //   * ResourceNotFoundException
  1199  //
  1200  //   * ThrottlingException
  1201  //
  1202  //   * ConflictException
  1203  //
  1204  // See also, https://docs.aws.amazon.com/goto/WebAPI/nimble-2020-08-01/DeleteStudioComponent
  1205  func (c *NimbleStudio) DeleteStudioComponent(input *DeleteStudioComponentInput) (*DeleteStudioComponentOutput, error) {
  1206  	req, out := c.DeleteStudioComponentRequest(input)
  1207  	return out, req.Send()
  1208  }
  1209  
  1210  // DeleteStudioComponentWithContext is the same as DeleteStudioComponent with the addition of
  1211  // the ability to pass a context and additional request options.
  1212  //
  1213  // See DeleteStudioComponent for details on how to use this API operation.
  1214  //
  1215  // The context must be non-nil and will be used for request cancellation. If
  1216  // the context is nil a panic will occur. In the future the SDK may create
  1217  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  1218  // for more information on using Contexts.
  1219  func (c *NimbleStudio) DeleteStudioComponentWithContext(ctx aws.Context, input *DeleteStudioComponentInput, opts ...request.Option) (*DeleteStudioComponentOutput, error) {
  1220  	req, out := c.DeleteStudioComponentRequest(input)
  1221  	req.SetContext(ctx)
  1222  	req.ApplyOptions(opts...)
  1223  	return out, req.Send()
  1224  }
  1225  
  1226  const opDeleteStudioMember = "DeleteStudioMember"
  1227  
  1228  // DeleteStudioMemberRequest generates a "aws/request.Request" representing the
  1229  // client's request for the DeleteStudioMember operation. The "output" return
  1230  // value will be populated with the request's response once the request completes
  1231  // successfully.
  1232  //
  1233  // Use "Send" method on the returned Request to send the API call to the service.
  1234  // the "output" return value is not valid until after Send returns without error.
  1235  //
  1236  // See DeleteStudioMember for more information on using the DeleteStudioMember
  1237  // API call, and error handling.
  1238  //
  1239  // This method is useful when you want to inject custom logic or configuration
  1240  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  1241  //
  1242  //
  1243  //    // Example sending a request using the DeleteStudioMemberRequest method.
  1244  //    req, resp := client.DeleteStudioMemberRequest(params)
  1245  //
  1246  //    err := req.Send()
  1247  //    if err == nil { // resp is now filled
  1248  //        fmt.Println(resp)
  1249  //    }
  1250  //
  1251  // See also, https://docs.aws.amazon.com/goto/WebAPI/nimble-2020-08-01/DeleteStudioMember
  1252  func (c *NimbleStudio) DeleteStudioMemberRequest(input *DeleteStudioMemberInput) (req *request.Request, output *DeleteStudioMemberOutput) {
  1253  	op := &request.Operation{
  1254  		Name:       opDeleteStudioMember,
  1255  		HTTPMethod: "DELETE",
  1256  		HTTPPath:   "/2020-08-01/studios/{studioId}/membership/{principalId}",
  1257  	}
  1258  
  1259  	if input == nil {
  1260  		input = &DeleteStudioMemberInput{}
  1261  	}
  1262  
  1263  	output = &DeleteStudioMemberOutput{}
  1264  	req = c.newRequest(op, input, output)
  1265  	req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
  1266  	return
  1267  }
  1268  
  1269  // DeleteStudioMember API operation for AmazonNimbleStudio.
  1270  //
  1271  // Delete a user from studio membership.
  1272  //
  1273  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  1274  // with awserr.Error's Code and Message methods to get detailed information about
  1275  // the error.
  1276  //
  1277  // See the AWS API reference guide for AmazonNimbleStudio's
  1278  // API operation DeleteStudioMember for usage and error information.
  1279  //
  1280  // Returned Error Types:
  1281  //   * ValidationException
  1282  //
  1283  //   * InternalServerErrorException
  1284  //
  1285  //   * ServiceQuotaExceededException
  1286  //
  1287  //   * AccessDeniedException
  1288  //
  1289  //   * ResourceNotFoundException
  1290  //
  1291  //   * ThrottlingException
  1292  //
  1293  //   * ConflictException
  1294  //
  1295  // See also, https://docs.aws.amazon.com/goto/WebAPI/nimble-2020-08-01/DeleteStudioMember
  1296  func (c *NimbleStudio) DeleteStudioMember(input *DeleteStudioMemberInput) (*DeleteStudioMemberOutput, error) {
  1297  	req, out := c.DeleteStudioMemberRequest(input)
  1298  	return out, req.Send()
  1299  }
  1300  
  1301  // DeleteStudioMemberWithContext is the same as DeleteStudioMember with the addition of
  1302  // the ability to pass a context and additional request options.
  1303  //
  1304  // See DeleteStudioMember for details on how to use this API operation.
  1305  //
  1306  // The context must be non-nil and will be used for request cancellation. If
  1307  // the context is nil a panic will occur. In the future the SDK may create
  1308  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  1309  // for more information on using Contexts.
  1310  func (c *NimbleStudio) DeleteStudioMemberWithContext(ctx aws.Context, input *DeleteStudioMemberInput, opts ...request.Option) (*DeleteStudioMemberOutput, error) {
  1311  	req, out := c.DeleteStudioMemberRequest(input)
  1312  	req.SetContext(ctx)
  1313  	req.ApplyOptions(opts...)
  1314  	return out, req.Send()
  1315  }
  1316  
  1317  const opGetEula = "GetEula"
  1318  
  1319  // GetEulaRequest generates a "aws/request.Request" representing the
  1320  // client's request for the GetEula operation. The "output" return
  1321  // value will be populated with the request's response once the request completes
  1322  // successfully.
  1323  //
  1324  // Use "Send" method on the returned Request to send the API call to the service.
  1325  // the "output" return value is not valid until after Send returns without error.
  1326  //
  1327  // See GetEula for more information on using the GetEula
  1328  // API call, and error handling.
  1329  //
  1330  // This method is useful when you want to inject custom logic or configuration
  1331  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  1332  //
  1333  //
  1334  //    // Example sending a request using the GetEulaRequest method.
  1335  //    req, resp := client.GetEulaRequest(params)
  1336  //
  1337  //    err := req.Send()
  1338  //    if err == nil { // resp is now filled
  1339  //        fmt.Println(resp)
  1340  //    }
  1341  //
  1342  // See also, https://docs.aws.amazon.com/goto/WebAPI/nimble-2020-08-01/GetEula
  1343  func (c *NimbleStudio) GetEulaRequest(input *GetEulaInput) (req *request.Request, output *GetEulaOutput) {
  1344  	op := &request.Operation{
  1345  		Name:       opGetEula,
  1346  		HTTPMethod: "GET",
  1347  		HTTPPath:   "/2020-08-01/eulas/{eulaId}",
  1348  	}
  1349  
  1350  	if input == nil {
  1351  		input = &GetEulaInput{}
  1352  	}
  1353  
  1354  	output = &GetEulaOutput{}
  1355  	req = c.newRequest(op, input, output)
  1356  	return
  1357  }
  1358  
  1359  // GetEula API operation for AmazonNimbleStudio.
  1360  //
  1361  // Get Eula.
  1362  //
  1363  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  1364  // with awserr.Error's Code and Message methods to get detailed information about
  1365  // the error.
  1366  //
  1367  // See the AWS API reference guide for AmazonNimbleStudio's
  1368  // API operation GetEula for usage and error information.
  1369  //
  1370  // Returned Error Types:
  1371  //   * ValidationException
  1372  //
  1373  //   * InternalServerErrorException
  1374  //
  1375  //   * ServiceQuotaExceededException
  1376  //
  1377  //   * AccessDeniedException
  1378  //
  1379  //   * ResourceNotFoundException
  1380  //
  1381  //   * ThrottlingException
  1382  //
  1383  //   * ConflictException
  1384  //
  1385  // See also, https://docs.aws.amazon.com/goto/WebAPI/nimble-2020-08-01/GetEula
  1386  func (c *NimbleStudio) GetEula(input *GetEulaInput) (*GetEulaOutput, error) {
  1387  	req, out := c.GetEulaRequest(input)
  1388  	return out, req.Send()
  1389  }
  1390  
  1391  // GetEulaWithContext is the same as GetEula with the addition of
  1392  // the ability to pass a context and additional request options.
  1393  //
  1394  // See GetEula for details on how to use this API operation.
  1395  //
  1396  // The context must be non-nil and will be used for request cancellation. If
  1397  // the context is nil a panic will occur. In the future the SDK may create
  1398  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  1399  // for more information on using Contexts.
  1400  func (c *NimbleStudio) GetEulaWithContext(ctx aws.Context, input *GetEulaInput, opts ...request.Option) (*GetEulaOutput, error) {
  1401  	req, out := c.GetEulaRequest(input)
  1402  	req.SetContext(ctx)
  1403  	req.ApplyOptions(opts...)
  1404  	return out, req.Send()
  1405  }
  1406  
  1407  const opGetLaunchProfile = "GetLaunchProfile"
  1408  
  1409  // GetLaunchProfileRequest generates a "aws/request.Request" representing the
  1410  // client's request for the GetLaunchProfile operation. The "output" return
  1411  // value will be populated with the request's response once the request completes
  1412  // successfully.
  1413  //
  1414  // Use "Send" method on the returned Request to send the API call to the service.
  1415  // the "output" return value is not valid until after Send returns without error.
  1416  //
  1417  // See GetLaunchProfile for more information on using the GetLaunchProfile
  1418  // API call, and error handling.
  1419  //
  1420  // This method is useful when you want to inject custom logic or configuration
  1421  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  1422  //
  1423  //
  1424  //    // Example sending a request using the GetLaunchProfileRequest method.
  1425  //    req, resp := client.GetLaunchProfileRequest(params)
  1426  //
  1427  //    err := req.Send()
  1428  //    if err == nil { // resp is now filled
  1429  //        fmt.Println(resp)
  1430  //    }
  1431  //
  1432  // See also, https://docs.aws.amazon.com/goto/WebAPI/nimble-2020-08-01/GetLaunchProfile
  1433  func (c *NimbleStudio) GetLaunchProfileRequest(input *GetLaunchProfileInput) (req *request.Request, output *GetLaunchProfileOutput) {
  1434  	op := &request.Operation{
  1435  		Name:       opGetLaunchProfile,
  1436  		HTTPMethod: "GET",
  1437  		HTTPPath:   "/2020-08-01/studios/{studioId}/launch-profiles/{launchProfileId}",
  1438  	}
  1439  
  1440  	if input == nil {
  1441  		input = &GetLaunchProfileInput{}
  1442  	}
  1443  
  1444  	output = &GetLaunchProfileOutput{}
  1445  	req = c.newRequest(op, input, output)
  1446  	return
  1447  }
  1448  
  1449  // GetLaunchProfile API operation for AmazonNimbleStudio.
  1450  //
  1451  // Get a launch profile.
  1452  //
  1453  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  1454  // with awserr.Error's Code and Message methods to get detailed information about
  1455  // the error.
  1456  //
  1457  // See the AWS API reference guide for AmazonNimbleStudio's
  1458  // API operation GetLaunchProfile for usage and error information.
  1459  //
  1460  // Returned Error Types:
  1461  //   * ValidationException
  1462  //
  1463  //   * InternalServerErrorException
  1464  //
  1465  //   * ServiceQuotaExceededException
  1466  //
  1467  //   * AccessDeniedException
  1468  //
  1469  //   * ResourceNotFoundException
  1470  //
  1471  //   * ThrottlingException
  1472  //
  1473  //   * ConflictException
  1474  //
  1475  // See also, https://docs.aws.amazon.com/goto/WebAPI/nimble-2020-08-01/GetLaunchProfile
  1476  func (c *NimbleStudio) GetLaunchProfile(input *GetLaunchProfileInput) (*GetLaunchProfileOutput, error) {
  1477  	req, out := c.GetLaunchProfileRequest(input)
  1478  	return out, req.Send()
  1479  }
  1480  
  1481  // GetLaunchProfileWithContext is the same as GetLaunchProfile with the addition of
  1482  // the ability to pass a context and additional request options.
  1483  //
  1484  // See GetLaunchProfile for details on how to use this API operation.
  1485  //
  1486  // The context must be non-nil and will be used for request cancellation. If
  1487  // the context is nil a panic will occur. In the future the SDK may create
  1488  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  1489  // for more information on using Contexts.
  1490  func (c *NimbleStudio) GetLaunchProfileWithContext(ctx aws.Context, input *GetLaunchProfileInput, opts ...request.Option) (*GetLaunchProfileOutput, error) {
  1491  	req, out := c.GetLaunchProfileRequest(input)
  1492  	req.SetContext(ctx)
  1493  	req.ApplyOptions(opts...)
  1494  	return out, req.Send()
  1495  }
  1496  
  1497  const opGetLaunchProfileDetails = "GetLaunchProfileDetails"
  1498  
  1499  // GetLaunchProfileDetailsRequest generates a "aws/request.Request" representing the
  1500  // client's request for the GetLaunchProfileDetails operation. The "output" return
  1501  // value will be populated with the request's response once the request completes
  1502  // successfully.
  1503  //
  1504  // Use "Send" method on the returned Request to send the API call to the service.
  1505  // the "output" return value is not valid until after Send returns without error.
  1506  //
  1507  // See GetLaunchProfileDetails for more information on using the GetLaunchProfileDetails
  1508  // API call, and error handling.
  1509  //
  1510  // This method is useful when you want to inject custom logic or configuration
  1511  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  1512  //
  1513  //
  1514  //    // Example sending a request using the GetLaunchProfileDetailsRequest method.
  1515  //    req, resp := client.GetLaunchProfileDetailsRequest(params)
  1516  //
  1517  //    err := req.Send()
  1518  //    if err == nil { // resp is now filled
  1519  //        fmt.Println(resp)
  1520  //    }
  1521  //
  1522  // See also, https://docs.aws.amazon.com/goto/WebAPI/nimble-2020-08-01/GetLaunchProfileDetails
  1523  func (c *NimbleStudio) GetLaunchProfileDetailsRequest(input *GetLaunchProfileDetailsInput) (req *request.Request, output *GetLaunchProfileDetailsOutput) {
  1524  	op := &request.Operation{
  1525  		Name:       opGetLaunchProfileDetails,
  1526  		HTTPMethod: "GET",
  1527  		HTTPPath:   "/2020-08-01/studios/{studioId}/launch-profiles/{launchProfileId}/details",
  1528  	}
  1529  
  1530  	if input == nil {
  1531  		input = &GetLaunchProfileDetailsInput{}
  1532  	}
  1533  
  1534  	output = &GetLaunchProfileDetailsOutput{}
  1535  	req = c.newRequest(op, input, output)
  1536  	return
  1537  }
  1538  
  1539  // GetLaunchProfileDetails API operation for AmazonNimbleStudio.
  1540  //
  1541  // Launch profile details include the launch profile resource and summary information
  1542  // of resources that are used by, or available to, the launch profile. This
  1543  // includes the name and description of all studio components used by the launch
  1544  // profiles, and the name and description of streaming images that can be used
  1545  // with this launch profile.
  1546  //
  1547  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  1548  // with awserr.Error's Code and Message methods to get detailed information about
  1549  // the error.
  1550  //
  1551  // See the AWS API reference guide for AmazonNimbleStudio's
  1552  // API operation GetLaunchProfileDetails for usage and error information.
  1553  //
  1554  // Returned Error Types:
  1555  //   * ValidationException
  1556  //
  1557  //   * InternalServerErrorException
  1558  //
  1559  //   * ServiceQuotaExceededException
  1560  //
  1561  //   * AccessDeniedException
  1562  //
  1563  //   * ResourceNotFoundException
  1564  //
  1565  //   * ThrottlingException
  1566  //
  1567  //   * ConflictException
  1568  //
  1569  // See also, https://docs.aws.amazon.com/goto/WebAPI/nimble-2020-08-01/GetLaunchProfileDetails
  1570  func (c *NimbleStudio) GetLaunchProfileDetails(input *GetLaunchProfileDetailsInput) (*GetLaunchProfileDetailsOutput, error) {
  1571  	req, out := c.GetLaunchProfileDetailsRequest(input)
  1572  	return out, req.Send()
  1573  }
  1574  
  1575  // GetLaunchProfileDetailsWithContext is the same as GetLaunchProfileDetails with the addition of
  1576  // the ability to pass a context and additional request options.
  1577  //
  1578  // See GetLaunchProfileDetails for details on how to use this API operation.
  1579  //
  1580  // The context must be non-nil and will be used for request cancellation. If
  1581  // the context is nil a panic will occur. In the future the SDK may create
  1582  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  1583  // for more information on using Contexts.
  1584  func (c *NimbleStudio) GetLaunchProfileDetailsWithContext(ctx aws.Context, input *GetLaunchProfileDetailsInput, opts ...request.Option) (*GetLaunchProfileDetailsOutput, error) {
  1585  	req, out := c.GetLaunchProfileDetailsRequest(input)
  1586  	req.SetContext(ctx)
  1587  	req.ApplyOptions(opts...)
  1588  	return out, req.Send()
  1589  }
  1590  
  1591  const opGetLaunchProfileInitialization = "GetLaunchProfileInitialization"
  1592  
  1593  // GetLaunchProfileInitializationRequest generates a "aws/request.Request" representing the
  1594  // client's request for the GetLaunchProfileInitialization operation. The "output" return
  1595  // value will be populated with the request's response once the request completes
  1596  // successfully.
  1597  //
  1598  // Use "Send" method on the returned Request to send the API call to the service.
  1599  // the "output" return value is not valid until after Send returns without error.
  1600  //
  1601  // See GetLaunchProfileInitialization for more information on using the GetLaunchProfileInitialization
  1602  // API call, and error handling.
  1603  //
  1604  // This method is useful when you want to inject custom logic or configuration
  1605  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  1606  //
  1607  //
  1608  //    // Example sending a request using the GetLaunchProfileInitializationRequest method.
  1609  //    req, resp := client.GetLaunchProfileInitializationRequest(params)
  1610  //
  1611  //    err := req.Send()
  1612  //    if err == nil { // resp is now filled
  1613  //        fmt.Println(resp)
  1614  //    }
  1615  //
  1616  // See also, https://docs.aws.amazon.com/goto/WebAPI/nimble-2020-08-01/GetLaunchProfileInitialization
  1617  func (c *NimbleStudio) GetLaunchProfileInitializationRequest(input *GetLaunchProfileInitializationInput) (req *request.Request, output *GetLaunchProfileInitializationOutput) {
  1618  	op := &request.Operation{
  1619  		Name:       opGetLaunchProfileInitialization,
  1620  		HTTPMethod: "GET",
  1621  		HTTPPath:   "/2020-08-01/studios/{studioId}/launch-profiles/{launchProfileId}/init",
  1622  	}
  1623  
  1624  	if input == nil {
  1625  		input = &GetLaunchProfileInitializationInput{}
  1626  	}
  1627  
  1628  	output = &GetLaunchProfileInitializationOutput{}
  1629  	req = c.newRequest(op, input, output)
  1630  	return
  1631  }
  1632  
  1633  // GetLaunchProfileInitialization API operation for AmazonNimbleStudio.
  1634  //
  1635  // Get a launch profile initialization.
  1636  //
  1637  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  1638  // with awserr.Error's Code and Message methods to get detailed information about
  1639  // the error.
  1640  //
  1641  // See the AWS API reference guide for AmazonNimbleStudio's
  1642  // API operation GetLaunchProfileInitialization for usage and error information.
  1643  //
  1644  // Returned Error Types:
  1645  //   * ValidationException
  1646  //
  1647  //   * InternalServerErrorException
  1648  //
  1649  //   * ServiceQuotaExceededException
  1650  //
  1651  //   * AccessDeniedException
  1652  //
  1653  //   * ResourceNotFoundException
  1654  //
  1655  //   * ThrottlingException
  1656  //
  1657  //   * ConflictException
  1658  //
  1659  // See also, https://docs.aws.amazon.com/goto/WebAPI/nimble-2020-08-01/GetLaunchProfileInitialization
  1660  func (c *NimbleStudio) GetLaunchProfileInitialization(input *GetLaunchProfileInitializationInput) (*GetLaunchProfileInitializationOutput, error) {
  1661  	req, out := c.GetLaunchProfileInitializationRequest(input)
  1662  	return out, req.Send()
  1663  }
  1664  
  1665  // GetLaunchProfileInitializationWithContext is the same as GetLaunchProfileInitialization with the addition of
  1666  // the ability to pass a context and additional request options.
  1667  //
  1668  // See GetLaunchProfileInitialization for details on how to use this API operation.
  1669  //
  1670  // The context must be non-nil and will be used for request cancellation. If
  1671  // the context is nil a panic will occur. In the future the SDK may create
  1672  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  1673  // for more information on using Contexts.
  1674  func (c *NimbleStudio) GetLaunchProfileInitializationWithContext(ctx aws.Context, input *GetLaunchProfileInitializationInput, opts ...request.Option) (*GetLaunchProfileInitializationOutput, error) {
  1675  	req, out := c.GetLaunchProfileInitializationRequest(input)
  1676  	req.SetContext(ctx)
  1677  	req.ApplyOptions(opts...)
  1678  	return out, req.Send()
  1679  }
  1680  
  1681  const opGetLaunchProfileMember = "GetLaunchProfileMember"
  1682  
  1683  // GetLaunchProfileMemberRequest generates a "aws/request.Request" representing the
  1684  // client's request for the GetLaunchProfileMember operation. The "output" return
  1685  // value will be populated with the request's response once the request completes
  1686  // successfully.
  1687  //
  1688  // Use "Send" method on the returned Request to send the API call to the service.
  1689  // the "output" return value is not valid until after Send returns without error.
  1690  //
  1691  // See GetLaunchProfileMember for more information on using the GetLaunchProfileMember
  1692  // API call, and error handling.
  1693  //
  1694  // This method is useful when you want to inject custom logic or configuration
  1695  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  1696  //
  1697  //
  1698  //    // Example sending a request using the GetLaunchProfileMemberRequest method.
  1699  //    req, resp := client.GetLaunchProfileMemberRequest(params)
  1700  //
  1701  //    err := req.Send()
  1702  //    if err == nil { // resp is now filled
  1703  //        fmt.Println(resp)
  1704  //    }
  1705  //
  1706  // See also, https://docs.aws.amazon.com/goto/WebAPI/nimble-2020-08-01/GetLaunchProfileMember
  1707  func (c *NimbleStudio) GetLaunchProfileMemberRequest(input *GetLaunchProfileMemberInput) (req *request.Request, output *GetLaunchProfileMemberOutput) {
  1708  	op := &request.Operation{
  1709  		Name:       opGetLaunchProfileMember,
  1710  		HTTPMethod: "GET",
  1711  		HTTPPath:   "/2020-08-01/studios/{studioId}/launch-profiles/{launchProfileId}/membership/{principalId}",
  1712  	}
  1713  
  1714  	if input == nil {
  1715  		input = &GetLaunchProfileMemberInput{}
  1716  	}
  1717  
  1718  	output = &GetLaunchProfileMemberOutput{}
  1719  	req = c.newRequest(op, input, output)
  1720  	return
  1721  }
  1722  
  1723  // GetLaunchProfileMember API operation for AmazonNimbleStudio.
  1724  //
  1725  // Get a user persona in launch profile membership.
  1726  //
  1727  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  1728  // with awserr.Error's Code and Message methods to get detailed information about
  1729  // the error.
  1730  //
  1731  // See the AWS API reference guide for AmazonNimbleStudio's
  1732  // API operation GetLaunchProfileMember for usage and error information.
  1733  //
  1734  // Returned Error Types:
  1735  //   * ValidationException
  1736  //
  1737  //   * InternalServerErrorException
  1738  //
  1739  //   * ServiceQuotaExceededException
  1740  //
  1741  //   * AccessDeniedException
  1742  //
  1743  //   * ResourceNotFoundException
  1744  //
  1745  //   * ThrottlingException
  1746  //
  1747  //   * ConflictException
  1748  //
  1749  // See also, https://docs.aws.amazon.com/goto/WebAPI/nimble-2020-08-01/GetLaunchProfileMember
  1750  func (c *NimbleStudio) GetLaunchProfileMember(input *GetLaunchProfileMemberInput) (*GetLaunchProfileMemberOutput, error) {
  1751  	req, out := c.GetLaunchProfileMemberRequest(input)
  1752  	return out, req.Send()
  1753  }
  1754  
  1755  // GetLaunchProfileMemberWithContext is the same as GetLaunchProfileMember with the addition of
  1756  // the ability to pass a context and additional request options.
  1757  //
  1758  // See GetLaunchProfileMember for details on how to use this API operation.
  1759  //
  1760  // The context must be non-nil and will be used for request cancellation. If
  1761  // the context is nil a panic will occur. In the future the SDK may create
  1762  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  1763  // for more information on using Contexts.
  1764  func (c *NimbleStudio) GetLaunchProfileMemberWithContext(ctx aws.Context, input *GetLaunchProfileMemberInput, opts ...request.Option) (*GetLaunchProfileMemberOutput, error) {
  1765  	req, out := c.GetLaunchProfileMemberRequest(input)
  1766  	req.SetContext(ctx)
  1767  	req.ApplyOptions(opts...)
  1768  	return out, req.Send()
  1769  }
  1770  
  1771  const opGetStreamingImage = "GetStreamingImage"
  1772  
  1773  // GetStreamingImageRequest generates a "aws/request.Request" representing the
  1774  // client's request for the GetStreamingImage operation. The "output" return
  1775  // value will be populated with the request's response once the request completes
  1776  // successfully.
  1777  //
  1778  // Use "Send" method on the returned Request to send the API call to the service.
  1779  // the "output" return value is not valid until after Send returns without error.
  1780  //
  1781  // See GetStreamingImage for more information on using the GetStreamingImage
  1782  // API call, and error handling.
  1783  //
  1784  // This method is useful when you want to inject custom logic or configuration
  1785  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  1786  //
  1787  //
  1788  //    // Example sending a request using the GetStreamingImageRequest method.
  1789  //    req, resp := client.GetStreamingImageRequest(params)
  1790  //
  1791  //    err := req.Send()
  1792  //    if err == nil { // resp is now filled
  1793  //        fmt.Println(resp)
  1794  //    }
  1795  //
  1796  // See also, https://docs.aws.amazon.com/goto/WebAPI/nimble-2020-08-01/GetStreamingImage
  1797  func (c *NimbleStudio) GetStreamingImageRequest(input *GetStreamingImageInput) (req *request.Request, output *GetStreamingImageOutput) {
  1798  	op := &request.Operation{
  1799  		Name:       opGetStreamingImage,
  1800  		HTTPMethod: "GET",
  1801  		HTTPPath:   "/2020-08-01/studios/{studioId}/streaming-images/{streamingImageId}",
  1802  	}
  1803  
  1804  	if input == nil {
  1805  		input = &GetStreamingImageInput{}
  1806  	}
  1807  
  1808  	output = &GetStreamingImageOutput{}
  1809  	req = c.newRequest(op, input, output)
  1810  	return
  1811  }
  1812  
  1813  // GetStreamingImage API operation for AmazonNimbleStudio.
  1814  //
  1815  // Get streaming image.
  1816  //
  1817  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  1818  // with awserr.Error's Code and Message methods to get detailed information about
  1819  // the error.
  1820  //
  1821  // See the AWS API reference guide for AmazonNimbleStudio's
  1822  // API operation GetStreamingImage for usage and error information.
  1823  //
  1824  // Returned Error Types:
  1825  //   * ValidationException
  1826  //
  1827  //   * InternalServerErrorException
  1828  //
  1829  //   * ServiceQuotaExceededException
  1830  //
  1831  //   * AccessDeniedException
  1832  //
  1833  //   * ResourceNotFoundException
  1834  //
  1835  //   * ThrottlingException
  1836  //
  1837  //   * ConflictException
  1838  //
  1839  // See also, https://docs.aws.amazon.com/goto/WebAPI/nimble-2020-08-01/GetStreamingImage
  1840  func (c *NimbleStudio) GetStreamingImage(input *GetStreamingImageInput) (*GetStreamingImageOutput, error) {
  1841  	req, out := c.GetStreamingImageRequest(input)
  1842  	return out, req.Send()
  1843  }
  1844  
  1845  // GetStreamingImageWithContext is the same as GetStreamingImage with the addition of
  1846  // the ability to pass a context and additional request options.
  1847  //
  1848  // See GetStreamingImage for details on how to use this API operation.
  1849  //
  1850  // The context must be non-nil and will be used for request cancellation. If
  1851  // the context is nil a panic will occur. In the future the SDK may create
  1852  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  1853  // for more information on using Contexts.
  1854  func (c *NimbleStudio) GetStreamingImageWithContext(ctx aws.Context, input *GetStreamingImageInput, opts ...request.Option) (*GetStreamingImageOutput, error) {
  1855  	req, out := c.GetStreamingImageRequest(input)
  1856  	req.SetContext(ctx)
  1857  	req.ApplyOptions(opts...)
  1858  	return out, req.Send()
  1859  }
  1860  
  1861  const opGetStreamingSession = "GetStreamingSession"
  1862  
  1863  // GetStreamingSessionRequest generates a "aws/request.Request" representing the
  1864  // client's request for the GetStreamingSession operation. The "output" return
  1865  // value will be populated with the request's response once the request completes
  1866  // successfully.
  1867  //
  1868  // Use "Send" method on the returned Request to send the API call to the service.
  1869  // the "output" return value is not valid until after Send returns without error.
  1870  //
  1871  // See GetStreamingSession for more information on using the GetStreamingSession
  1872  // API call, and error handling.
  1873  //
  1874  // This method is useful when you want to inject custom logic or configuration
  1875  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  1876  //
  1877  //
  1878  //    // Example sending a request using the GetStreamingSessionRequest method.
  1879  //    req, resp := client.GetStreamingSessionRequest(params)
  1880  //
  1881  //    err := req.Send()
  1882  //    if err == nil { // resp is now filled
  1883  //        fmt.Println(resp)
  1884  //    }
  1885  //
  1886  // See also, https://docs.aws.amazon.com/goto/WebAPI/nimble-2020-08-01/GetStreamingSession
  1887  func (c *NimbleStudio) GetStreamingSessionRequest(input *GetStreamingSessionInput) (req *request.Request, output *GetStreamingSessionOutput) {
  1888  	op := &request.Operation{
  1889  		Name:       opGetStreamingSession,
  1890  		HTTPMethod: "GET",
  1891  		HTTPPath:   "/2020-08-01/studios/{studioId}/streaming-sessions/{sessionId}",
  1892  	}
  1893  
  1894  	if input == nil {
  1895  		input = &GetStreamingSessionInput{}
  1896  	}
  1897  
  1898  	output = &GetStreamingSessionOutput{}
  1899  	req = c.newRequest(op, input, output)
  1900  	return
  1901  }
  1902  
  1903  // GetStreamingSession API operation for AmazonNimbleStudio.
  1904  //
  1905  // Gets StreamingSession resource.
  1906  //
  1907  // Invoke this operation to poll for a streaming session state while creating
  1908  // or deleting a session.
  1909  //
  1910  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  1911  // with awserr.Error's Code and Message methods to get detailed information about
  1912  // the error.
  1913  //
  1914  // See the AWS API reference guide for AmazonNimbleStudio's
  1915  // API operation GetStreamingSession for usage and error information.
  1916  //
  1917  // Returned Error Types:
  1918  //   * ValidationException
  1919  //
  1920  //   * InternalServerErrorException
  1921  //
  1922  //   * ServiceQuotaExceededException
  1923  //
  1924  //   * AccessDeniedException
  1925  //
  1926  //   * ResourceNotFoundException
  1927  //
  1928  //   * ThrottlingException
  1929  //
  1930  //   * ConflictException
  1931  //
  1932  // See also, https://docs.aws.amazon.com/goto/WebAPI/nimble-2020-08-01/GetStreamingSession
  1933  func (c *NimbleStudio) GetStreamingSession(input *GetStreamingSessionInput) (*GetStreamingSessionOutput, error) {
  1934  	req, out := c.GetStreamingSessionRequest(input)
  1935  	return out, req.Send()
  1936  }
  1937  
  1938  // GetStreamingSessionWithContext is the same as GetStreamingSession with the addition of
  1939  // the ability to pass a context and additional request options.
  1940  //
  1941  // See GetStreamingSession for details on how to use this API operation.
  1942  //
  1943  // The context must be non-nil and will be used for request cancellation. If
  1944  // the context is nil a panic will occur. In the future the SDK may create
  1945  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  1946  // for more information on using Contexts.
  1947  func (c *NimbleStudio) GetStreamingSessionWithContext(ctx aws.Context, input *GetStreamingSessionInput, opts ...request.Option) (*GetStreamingSessionOutput, error) {
  1948  	req, out := c.GetStreamingSessionRequest(input)
  1949  	req.SetContext(ctx)
  1950  	req.ApplyOptions(opts...)
  1951  	return out, req.Send()
  1952  }
  1953  
  1954  const opGetStreamingSessionStream = "GetStreamingSessionStream"
  1955  
  1956  // GetStreamingSessionStreamRequest generates a "aws/request.Request" representing the
  1957  // client's request for the GetStreamingSessionStream operation. The "output" return
  1958  // value will be populated with the request's response once the request completes
  1959  // successfully.
  1960  //
  1961  // Use "Send" method on the returned Request to send the API call to the service.
  1962  // the "output" return value is not valid until after Send returns without error.
  1963  //
  1964  // See GetStreamingSessionStream for more information on using the GetStreamingSessionStream
  1965  // API call, and error handling.
  1966  //
  1967  // This method is useful when you want to inject custom logic or configuration
  1968  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  1969  //
  1970  //
  1971  //    // Example sending a request using the GetStreamingSessionStreamRequest method.
  1972  //    req, resp := client.GetStreamingSessionStreamRequest(params)
  1973  //
  1974  //    err := req.Send()
  1975  //    if err == nil { // resp is now filled
  1976  //        fmt.Println(resp)
  1977  //    }
  1978  //
  1979  // See also, https://docs.aws.amazon.com/goto/WebAPI/nimble-2020-08-01/GetStreamingSessionStream
  1980  func (c *NimbleStudio) GetStreamingSessionStreamRequest(input *GetStreamingSessionStreamInput) (req *request.Request, output *GetStreamingSessionStreamOutput) {
  1981  	op := &request.Operation{
  1982  		Name:       opGetStreamingSessionStream,
  1983  		HTTPMethod: "GET",
  1984  		HTTPPath:   "/2020-08-01/studios/{studioId}/streaming-sessions/{sessionId}/streams/{streamId}",
  1985  	}
  1986  
  1987  	if input == nil {
  1988  		input = &GetStreamingSessionStreamInput{}
  1989  	}
  1990  
  1991  	output = &GetStreamingSessionStreamOutput{}
  1992  	req = c.newRequest(op, input, output)
  1993  	return
  1994  }
  1995  
  1996  // GetStreamingSessionStream API operation for AmazonNimbleStudio.
  1997  //
  1998  // Gets a StreamingSessionStream for a streaming session.
  1999  //
  2000  // Invoke this operation to poll the resource after invoking CreateStreamingSessionStream.
  2001  //
  2002  // After the StreamingSessionStream changes to the state READY, the url property
  2003  // will contain a stream to be used with the DCV streaming client.
  2004  //
  2005  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  2006  // with awserr.Error's Code and Message methods to get detailed information about
  2007  // the error.
  2008  //
  2009  // See the AWS API reference guide for AmazonNimbleStudio's
  2010  // API operation GetStreamingSessionStream for usage and error information.
  2011  //
  2012  // Returned Error Types:
  2013  //   * ValidationException
  2014  //
  2015  //   * InternalServerErrorException
  2016  //
  2017  //   * ServiceQuotaExceededException
  2018  //
  2019  //   * AccessDeniedException
  2020  //
  2021  //   * ResourceNotFoundException
  2022  //
  2023  //   * ThrottlingException
  2024  //
  2025  //   * ConflictException
  2026  //
  2027  // See also, https://docs.aws.amazon.com/goto/WebAPI/nimble-2020-08-01/GetStreamingSessionStream
  2028  func (c *NimbleStudio) GetStreamingSessionStream(input *GetStreamingSessionStreamInput) (*GetStreamingSessionStreamOutput, error) {
  2029  	req, out := c.GetStreamingSessionStreamRequest(input)
  2030  	return out, req.Send()
  2031  }
  2032  
  2033  // GetStreamingSessionStreamWithContext is the same as GetStreamingSessionStream with the addition of
  2034  // the ability to pass a context and additional request options.
  2035  //
  2036  // See GetStreamingSessionStream for details on how to use this API operation.
  2037  //
  2038  // The context must be non-nil and will be used for request cancellation. If
  2039  // the context is nil a panic will occur. In the future the SDK may create
  2040  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  2041  // for more information on using Contexts.
  2042  func (c *NimbleStudio) GetStreamingSessionStreamWithContext(ctx aws.Context, input *GetStreamingSessionStreamInput, opts ...request.Option) (*GetStreamingSessionStreamOutput, error) {
  2043  	req, out := c.GetStreamingSessionStreamRequest(input)
  2044  	req.SetContext(ctx)
  2045  	req.ApplyOptions(opts...)
  2046  	return out, req.Send()
  2047  }
  2048  
  2049  const opGetStudio = "GetStudio"
  2050  
  2051  // GetStudioRequest generates a "aws/request.Request" representing the
  2052  // client's request for the GetStudio operation. The "output" return
  2053  // value will be populated with the request's response once the request completes
  2054  // successfully.
  2055  //
  2056  // Use "Send" method on the returned Request to send the API call to the service.
  2057  // the "output" return value is not valid until after Send returns without error.
  2058  //
  2059  // See GetStudio for more information on using the GetStudio
  2060  // API call, and error handling.
  2061  //
  2062  // This method is useful when you want to inject custom logic or configuration
  2063  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  2064  //
  2065  //
  2066  //    // Example sending a request using the GetStudioRequest method.
  2067  //    req, resp := client.GetStudioRequest(params)
  2068  //
  2069  //    err := req.Send()
  2070  //    if err == nil { // resp is now filled
  2071  //        fmt.Println(resp)
  2072  //    }
  2073  //
  2074  // See also, https://docs.aws.amazon.com/goto/WebAPI/nimble-2020-08-01/GetStudio
  2075  func (c *NimbleStudio) GetStudioRequest(input *GetStudioInput) (req *request.Request, output *GetStudioOutput) {
  2076  	op := &request.Operation{
  2077  		Name:       opGetStudio,
  2078  		HTTPMethod: "GET",
  2079  		HTTPPath:   "/2020-08-01/studios/{studioId}",
  2080  	}
  2081  
  2082  	if input == nil {
  2083  		input = &GetStudioInput{}
  2084  	}
  2085  
  2086  	output = &GetStudioOutput{}
  2087  	req = c.newRequest(op, input, output)
  2088  	return
  2089  }
  2090  
  2091  // GetStudio API operation for AmazonNimbleStudio.
  2092  //
  2093  // Get a Studio resource.
  2094  //
  2095  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  2096  // with awserr.Error's Code and Message methods to get detailed information about
  2097  // the error.
  2098  //
  2099  // See the AWS API reference guide for AmazonNimbleStudio's
  2100  // API operation GetStudio for usage and error information.
  2101  //
  2102  // Returned Error Types:
  2103  //   * ValidationException
  2104  //
  2105  //   * InternalServerErrorException
  2106  //
  2107  //   * ServiceQuotaExceededException
  2108  //
  2109  //   * AccessDeniedException
  2110  //
  2111  //   * ResourceNotFoundException
  2112  //
  2113  //   * ThrottlingException
  2114  //
  2115  //   * ConflictException
  2116  //
  2117  // See also, https://docs.aws.amazon.com/goto/WebAPI/nimble-2020-08-01/GetStudio
  2118  func (c *NimbleStudio) GetStudio(input *GetStudioInput) (*GetStudioOutput, error) {
  2119  	req, out := c.GetStudioRequest(input)
  2120  	return out, req.Send()
  2121  }
  2122  
  2123  // GetStudioWithContext is the same as GetStudio with the addition of
  2124  // the ability to pass a context and additional request options.
  2125  //
  2126  // See GetStudio for details on how to use this API operation.
  2127  //
  2128  // The context must be non-nil and will be used for request cancellation. If
  2129  // the context is nil a panic will occur. In the future the SDK may create
  2130  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  2131  // for more information on using Contexts.
  2132  func (c *NimbleStudio) GetStudioWithContext(ctx aws.Context, input *GetStudioInput, opts ...request.Option) (*GetStudioOutput, error) {
  2133  	req, out := c.GetStudioRequest(input)
  2134  	req.SetContext(ctx)
  2135  	req.ApplyOptions(opts...)
  2136  	return out, req.Send()
  2137  }
  2138  
  2139  const opGetStudioComponent = "GetStudioComponent"
  2140  
  2141  // GetStudioComponentRequest generates a "aws/request.Request" representing the
  2142  // client's request for the GetStudioComponent operation. The "output" return
  2143  // value will be populated with the request's response once the request completes
  2144  // successfully.
  2145  //
  2146  // Use "Send" method on the returned Request to send the API call to the service.
  2147  // the "output" return value is not valid until after Send returns without error.
  2148  //
  2149  // See GetStudioComponent for more information on using the GetStudioComponent
  2150  // API call, and error handling.
  2151  //
  2152  // This method is useful when you want to inject custom logic or configuration
  2153  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  2154  //
  2155  //
  2156  //    // Example sending a request using the GetStudioComponentRequest method.
  2157  //    req, resp := client.GetStudioComponentRequest(params)
  2158  //
  2159  //    err := req.Send()
  2160  //    if err == nil { // resp is now filled
  2161  //        fmt.Println(resp)
  2162  //    }
  2163  //
  2164  // See also, https://docs.aws.amazon.com/goto/WebAPI/nimble-2020-08-01/GetStudioComponent
  2165  func (c *NimbleStudio) GetStudioComponentRequest(input *GetStudioComponentInput) (req *request.Request, output *GetStudioComponentOutput) {
  2166  	op := &request.Operation{
  2167  		Name:       opGetStudioComponent,
  2168  		HTTPMethod: "GET",
  2169  		HTTPPath:   "/2020-08-01/studios/{studioId}/studio-components/{studioComponentId}",
  2170  	}
  2171  
  2172  	if input == nil {
  2173  		input = &GetStudioComponentInput{}
  2174  	}
  2175  
  2176  	output = &GetStudioComponentOutput{}
  2177  	req = c.newRequest(op, input, output)
  2178  	return
  2179  }
  2180  
  2181  // GetStudioComponent API operation for AmazonNimbleStudio.
  2182  //
  2183  // Gets a studio component resource.
  2184  //
  2185  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  2186  // with awserr.Error's Code and Message methods to get detailed information about
  2187  // the error.
  2188  //
  2189  // See the AWS API reference guide for AmazonNimbleStudio's
  2190  // API operation GetStudioComponent for usage and error information.
  2191  //
  2192  // Returned Error Types:
  2193  //   * ValidationException
  2194  //
  2195  //   * InternalServerErrorException
  2196  //
  2197  //   * ServiceQuotaExceededException
  2198  //
  2199  //   * AccessDeniedException
  2200  //
  2201  //   * ResourceNotFoundException
  2202  //
  2203  //   * ThrottlingException
  2204  //
  2205  //   * ConflictException
  2206  //
  2207  // See also, https://docs.aws.amazon.com/goto/WebAPI/nimble-2020-08-01/GetStudioComponent
  2208  func (c *NimbleStudio) GetStudioComponent(input *GetStudioComponentInput) (*GetStudioComponentOutput, error) {
  2209  	req, out := c.GetStudioComponentRequest(input)
  2210  	return out, req.Send()
  2211  }
  2212  
  2213  // GetStudioComponentWithContext is the same as GetStudioComponent with the addition of
  2214  // the ability to pass a context and additional request options.
  2215  //
  2216  // See GetStudioComponent for details on how to use this API operation.
  2217  //
  2218  // The context must be non-nil and will be used for request cancellation. If
  2219  // the context is nil a panic will occur. In the future the SDK may create
  2220  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  2221  // for more information on using Contexts.
  2222  func (c *NimbleStudio) GetStudioComponentWithContext(ctx aws.Context, input *GetStudioComponentInput, opts ...request.Option) (*GetStudioComponentOutput, error) {
  2223  	req, out := c.GetStudioComponentRequest(input)
  2224  	req.SetContext(ctx)
  2225  	req.ApplyOptions(opts...)
  2226  	return out, req.Send()
  2227  }
  2228  
  2229  const opGetStudioMember = "GetStudioMember"
  2230  
  2231  // GetStudioMemberRequest generates a "aws/request.Request" representing the
  2232  // client's request for the GetStudioMember operation. The "output" return
  2233  // value will be populated with the request's response once the request completes
  2234  // successfully.
  2235  //
  2236  // Use "Send" method on the returned Request to send the API call to the service.
  2237  // the "output" return value is not valid until after Send returns without error.
  2238  //
  2239  // See GetStudioMember for more information on using the GetStudioMember
  2240  // API call, and error handling.
  2241  //
  2242  // This method is useful when you want to inject custom logic or configuration
  2243  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  2244  //
  2245  //
  2246  //    // Example sending a request using the GetStudioMemberRequest method.
  2247  //    req, resp := client.GetStudioMemberRequest(params)
  2248  //
  2249  //    err := req.Send()
  2250  //    if err == nil { // resp is now filled
  2251  //        fmt.Println(resp)
  2252  //    }
  2253  //
  2254  // See also, https://docs.aws.amazon.com/goto/WebAPI/nimble-2020-08-01/GetStudioMember
  2255  func (c *NimbleStudio) GetStudioMemberRequest(input *GetStudioMemberInput) (req *request.Request, output *GetStudioMemberOutput) {
  2256  	op := &request.Operation{
  2257  		Name:       opGetStudioMember,
  2258  		HTTPMethod: "GET",
  2259  		HTTPPath:   "/2020-08-01/studios/{studioId}/membership/{principalId}",
  2260  	}
  2261  
  2262  	if input == nil {
  2263  		input = &GetStudioMemberInput{}
  2264  	}
  2265  
  2266  	output = &GetStudioMemberOutput{}
  2267  	req = c.newRequest(op, input, output)
  2268  	return
  2269  }
  2270  
  2271  // GetStudioMember API operation for AmazonNimbleStudio.
  2272  //
  2273  // Get a user's membership in a studio.
  2274  //
  2275  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  2276  // with awserr.Error's Code and Message methods to get detailed information about
  2277  // the error.
  2278  //
  2279  // See the AWS API reference guide for AmazonNimbleStudio's
  2280  // API operation GetStudioMember for usage and error information.
  2281  //
  2282  // Returned Error Types:
  2283  //   * ValidationException
  2284  //
  2285  //   * InternalServerErrorException
  2286  //
  2287  //   * ServiceQuotaExceededException
  2288  //
  2289  //   * AccessDeniedException
  2290  //
  2291  //   * ResourceNotFoundException
  2292  //
  2293  //   * ThrottlingException
  2294  //
  2295  //   * ConflictException
  2296  //
  2297  // See also, https://docs.aws.amazon.com/goto/WebAPI/nimble-2020-08-01/GetStudioMember
  2298  func (c *NimbleStudio) GetStudioMember(input *GetStudioMemberInput) (*GetStudioMemberOutput, error) {
  2299  	req, out := c.GetStudioMemberRequest(input)
  2300  	return out, req.Send()
  2301  }
  2302  
  2303  // GetStudioMemberWithContext is the same as GetStudioMember with the addition of
  2304  // the ability to pass a context and additional request options.
  2305  //
  2306  // See GetStudioMember for details on how to use this API operation.
  2307  //
  2308  // The context must be non-nil and will be used for request cancellation. If
  2309  // the context is nil a panic will occur. In the future the SDK may create
  2310  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  2311  // for more information on using Contexts.
  2312  func (c *NimbleStudio) GetStudioMemberWithContext(ctx aws.Context, input *GetStudioMemberInput, opts ...request.Option) (*GetStudioMemberOutput, error) {
  2313  	req, out := c.GetStudioMemberRequest(input)
  2314  	req.SetContext(ctx)
  2315  	req.ApplyOptions(opts...)
  2316  	return out, req.Send()
  2317  }
  2318  
  2319  const opListEulaAcceptances = "ListEulaAcceptances"
  2320  
  2321  // ListEulaAcceptancesRequest generates a "aws/request.Request" representing the
  2322  // client's request for the ListEulaAcceptances operation. The "output" return
  2323  // value will be populated with the request's response once the request completes
  2324  // successfully.
  2325  //
  2326  // Use "Send" method on the returned Request to send the API call to the service.
  2327  // the "output" return value is not valid until after Send returns without error.
  2328  //
  2329  // See ListEulaAcceptances for more information on using the ListEulaAcceptances
  2330  // API call, and error handling.
  2331  //
  2332  // This method is useful when you want to inject custom logic or configuration
  2333  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  2334  //
  2335  //
  2336  //    // Example sending a request using the ListEulaAcceptancesRequest method.
  2337  //    req, resp := client.ListEulaAcceptancesRequest(params)
  2338  //
  2339  //    err := req.Send()
  2340  //    if err == nil { // resp is now filled
  2341  //        fmt.Println(resp)
  2342  //    }
  2343  //
  2344  // See also, https://docs.aws.amazon.com/goto/WebAPI/nimble-2020-08-01/ListEulaAcceptances
  2345  func (c *NimbleStudio) ListEulaAcceptancesRequest(input *ListEulaAcceptancesInput) (req *request.Request, output *ListEulaAcceptancesOutput) {
  2346  	op := &request.Operation{
  2347  		Name:       opListEulaAcceptances,
  2348  		HTTPMethod: "GET",
  2349  		HTTPPath:   "/2020-08-01/studios/{studioId}/eula-acceptances",
  2350  		Paginator: &request.Paginator{
  2351  			InputTokens:     []string{"nextToken"},
  2352  			OutputTokens:    []string{"nextToken"},
  2353  			LimitToken:      "",
  2354  			TruncationToken: "",
  2355  		},
  2356  	}
  2357  
  2358  	if input == nil {
  2359  		input = &ListEulaAcceptancesInput{}
  2360  	}
  2361  
  2362  	output = &ListEulaAcceptancesOutput{}
  2363  	req = c.newRequest(op, input, output)
  2364  	return
  2365  }
  2366  
  2367  // ListEulaAcceptances API operation for AmazonNimbleStudio.
  2368  //
  2369  // List Eula Acceptances.
  2370  //
  2371  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  2372  // with awserr.Error's Code and Message methods to get detailed information about
  2373  // the error.
  2374  //
  2375  // See the AWS API reference guide for AmazonNimbleStudio's
  2376  // API operation ListEulaAcceptances for usage and error information.
  2377  //
  2378  // Returned Error Types:
  2379  //   * ValidationException
  2380  //
  2381  //   * InternalServerErrorException
  2382  //
  2383  //   * ServiceQuotaExceededException
  2384  //
  2385  //   * AccessDeniedException
  2386  //
  2387  //   * ResourceNotFoundException
  2388  //
  2389  //   * ThrottlingException
  2390  //
  2391  //   * ConflictException
  2392  //
  2393  // See also, https://docs.aws.amazon.com/goto/WebAPI/nimble-2020-08-01/ListEulaAcceptances
  2394  func (c *NimbleStudio) ListEulaAcceptances(input *ListEulaAcceptancesInput) (*ListEulaAcceptancesOutput, error) {
  2395  	req, out := c.ListEulaAcceptancesRequest(input)
  2396  	return out, req.Send()
  2397  }
  2398  
  2399  // ListEulaAcceptancesWithContext is the same as ListEulaAcceptances with the addition of
  2400  // the ability to pass a context and additional request options.
  2401  //
  2402  // See ListEulaAcceptances for details on how to use this API operation.
  2403  //
  2404  // The context must be non-nil and will be used for request cancellation. If
  2405  // the context is nil a panic will occur. In the future the SDK may create
  2406  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  2407  // for more information on using Contexts.
  2408  func (c *NimbleStudio) ListEulaAcceptancesWithContext(ctx aws.Context, input *ListEulaAcceptancesInput, opts ...request.Option) (*ListEulaAcceptancesOutput, error) {
  2409  	req, out := c.ListEulaAcceptancesRequest(input)
  2410  	req.SetContext(ctx)
  2411  	req.ApplyOptions(opts...)
  2412  	return out, req.Send()
  2413  }
  2414  
  2415  // ListEulaAcceptancesPages iterates over the pages of a ListEulaAcceptances operation,
  2416  // calling the "fn" function with the response data for each page. To stop
  2417  // iterating, return false from the fn function.
  2418  //
  2419  // See ListEulaAcceptances method for more information on how to use this operation.
  2420  //
  2421  // Note: This operation can generate multiple requests to a service.
  2422  //
  2423  //    // Example iterating over at most 3 pages of a ListEulaAcceptances operation.
  2424  //    pageNum := 0
  2425  //    err := client.ListEulaAcceptancesPages(params,
  2426  //        func(page *nimblestudio.ListEulaAcceptancesOutput, lastPage bool) bool {
  2427  //            pageNum++
  2428  //            fmt.Println(page)
  2429  //            return pageNum <= 3
  2430  //        })
  2431  //
  2432  func (c *NimbleStudio) ListEulaAcceptancesPages(input *ListEulaAcceptancesInput, fn func(*ListEulaAcceptancesOutput, bool) bool) error {
  2433  	return c.ListEulaAcceptancesPagesWithContext(aws.BackgroundContext(), input, fn)
  2434  }
  2435  
  2436  // ListEulaAcceptancesPagesWithContext same as ListEulaAcceptancesPages except
  2437  // it takes a Context and allows setting request options on the pages.
  2438  //
  2439  // The context must be non-nil and will be used for request cancellation. If
  2440  // the context is nil a panic will occur. In the future the SDK may create
  2441  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  2442  // for more information on using Contexts.
  2443  func (c *NimbleStudio) ListEulaAcceptancesPagesWithContext(ctx aws.Context, input *ListEulaAcceptancesInput, fn func(*ListEulaAcceptancesOutput, bool) bool, opts ...request.Option) error {
  2444  	p := request.Pagination{
  2445  		NewRequest: func() (*request.Request, error) {
  2446  			var inCpy *ListEulaAcceptancesInput
  2447  			if input != nil {
  2448  				tmp := *input
  2449  				inCpy = &tmp
  2450  			}
  2451  			req, _ := c.ListEulaAcceptancesRequest(inCpy)
  2452  			req.SetContext(ctx)
  2453  			req.ApplyOptions(opts...)
  2454  			return req, nil
  2455  		},
  2456  	}
  2457  
  2458  	for p.Next() {
  2459  		if !fn(p.Page().(*ListEulaAcceptancesOutput), !p.HasNextPage()) {
  2460  			break
  2461  		}
  2462  	}
  2463  
  2464  	return p.Err()
  2465  }
  2466  
  2467  const opListEulas = "ListEulas"
  2468  
  2469  // ListEulasRequest generates a "aws/request.Request" representing the
  2470  // client's request for the ListEulas operation. The "output" return
  2471  // value will be populated with the request's response once the request completes
  2472  // successfully.
  2473  //
  2474  // Use "Send" method on the returned Request to send the API call to the service.
  2475  // the "output" return value is not valid until after Send returns without error.
  2476  //
  2477  // See ListEulas for more information on using the ListEulas
  2478  // API call, and error handling.
  2479  //
  2480  // This method is useful when you want to inject custom logic or configuration
  2481  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  2482  //
  2483  //
  2484  //    // Example sending a request using the ListEulasRequest method.
  2485  //    req, resp := client.ListEulasRequest(params)
  2486  //
  2487  //    err := req.Send()
  2488  //    if err == nil { // resp is now filled
  2489  //        fmt.Println(resp)
  2490  //    }
  2491  //
  2492  // See also, https://docs.aws.amazon.com/goto/WebAPI/nimble-2020-08-01/ListEulas
  2493  func (c *NimbleStudio) ListEulasRequest(input *ListEulasInput) (req *request.Request, output *ListEulasOutput) {
  2494  	op := &request.Operation{
  2495  		Name:       opListEulas,
  2496  		HTTPMethod: "GET",
  2497  		HTTPPath:   "/2020-08-01/eulas",
  2498  		Paginator: &request.Paginator{
  2499  			InputTokens:     []string{"nextToken"},
  2500  			OutputTokens:    []string{"nextToken"},
  2501  			LimitToken:      "",
  2502  			TruncationToken: "",
  2503  		},
  2504  	}
  2505  
  2506  	if input == nil {
  2507  		input = &ListEulasInput{}
  2508  	}
  2509  
  2510  	output = &ListEulasOutput{}
  2511  	req = c.newRequest(op, input, output)
  2512  	return
  2513  }
  2514  
  2515  // ListEulas API operation for AmazonNimbleStudio.
  2516  //
  2517  // List Eulas.
  2518  //
  2519  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  2520  // with awserr.Error's Code and Message methods to get detailed information about
  2521  // the error.
  2522  //
  2523  // See the AWS API reference guide for AmazonNimbleStudio's
  2524  // API operation ListEulas for usage and error information.
  2525  //
  2526  // Returned Error Types:
  2527  //   * ValidationException
  2528  //
  2529  //   * InternalServerErrorException
  2530  //
  2531  //   * ServiceQuotaExceededException
  2532  //
  2533  //   * AccessDeniedException
  2534  //
  2535  //   * ResourceNotFoundException
  2536  //
  2537  //   * ThrottlingException
  2538  //
  2539  //   * ConflictException
  2540  //
  2541  // See also, https://docs.aws.amazon.com/goto/WebAPI/nimble-2020-08-01/ListEulas
  2542  func (c *NimbleStudio) ListEulas(input *ListEulasInput) (*ListEulasOutput, error) {
  2543  	req, out := c.ListEulasRequest(input)
  2544  	return out, req.Send()
  2545  }
  2546  
  2547  // ListEulasWithContext is the same as ListEulas with the addition of
  2548  // the ability to pass a context and additional request options.
  2549  //
  2550  // See ListEulas for details on how to use this API operation.
  2551  //
  2552  // The context must be non-nil and will be used for request cancellation. If
  2553  // the context is nil a panic will occur. In the future the SDK may create
  2554  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  2555  // for more information on using Contexts.
  2556  func (c *NimbleStudio) ListEulasWithContext(ctx aws.Context, input *ListEulasInput, opts ...request.Option) (*ListEulasOutput, error) {
  2557  	req, out := c.ListEulasRequest(input)
  2558  	req.SetContext(ctx)
  2559  	req.ApplyOptions(opts...)
  2560  	return out, req.Send()
  2561  }
  2562  
  2563  // ListEulasPages iterates over the pages of a ListEulas operation,
  2564  // calling the "fn" function with the response data for each page. To stop
  2565  // iterating, return false from the fn function.
  2566  //
  2567  // See ListEulas method for more information on how to use this operation.
  2568  //
  2569  // Note: This operation can generate multiple requests to a service.
  2570  //
  2571  //    // Example iterating over at most 3 pages of a ListEulas operation.
  2572  //    pageNum := 0
  2573  //    err := client.ListEulasPages(params,
  2574  //        func(page *nimblestudio.ListEulasOutput, lastPage bool) bool {
  2575  //            pageNum++
  2576  //            fmt.Println(page)
  2577  //            return pageNum <= 3
  2578  //        })
  2579  //
  2580  func (c *NimbleStudio) ListEulasPages(input *ListEulasInput, fn func(*ListEulasOutput, bool) bool) error {
  2581  	return c.ListEulasPagesWithContext(aws.BackgroundContext(), input, fn)
  2582  }
  2583  
  2584  // ListEulasPagesWithContext same as ListEulasPages except
  2585  // it takes a Context and allows setting request options on the pages.
  2586  //
  2587  // The context must be non-nil and will be used for request cancellation. If
  2588  // the context is nil a panic will occur. In the future the SDK may create
  2589  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  2590  // for more information on using Contexts.
  2591  func (c *NimbleStudio) ListEulasPagesWithContext(ctx aws.Context, input *ListEulasInput, fn func(*ListEulasOutput, bool) bool, opts ...request.Option) error {
  2592  	p := request.Pagination{
  2593  		NewRequest: func() (*request.Request, error) {
  2594  			var inCpy *ListEulasInput
  2595  			if input != nil {
  2596  				tmp := *input
  2597  				inCpy = &tmp
  2598  			}
  2599  			req, _ := c.ListEulasRequest(inCpy)
  2600  			req.SetContext(ctx)
  2601  			req.ApplyOptions(opts...)
  2602  			return req, nil
  2603  		},
  2604  	}
  2605  
  2606  	for p.Next() {
  2607  		if !fn(p.Page().(*ListEulasOutput), !p.HasNextPage()) {
  2608  			break
  2609  		}
  2610  	}
  2611  
  2612  	return p.Err()
  2613  }
  2614  
  2615  const opListLaunchProfileMembers = "ListLaunchProfileMembers"
  2616  
  2617  // ListLaunchProfileMembersRequest generates a "aws/request.Request" representing the
  2618  // client's request for the ListLaunchProfileMembers operation. The "output" return
  2619  // value will be populated with the request's response once the request completes
  2620  // successfully.
  2621  //
  2622  // Use "Send" method on the returned Request to send the API call to the service.
  2623  // the "output" return value is not valid until after Send returns without error.
  2624  //
  2625  // See ListLaunchProfileMembers for more information on using the ListLaunchProfileMembers
  2626  // API call, and error handling.
  2627  //
  2628  // This method is useful when you want to inject custom logic or configuration
  2629  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  2630  //
  2631  //
  2632  //    // Example sending a request using the ListLaunchProfileMembersRequest method.
  2633  //    req, resp := client.ListLaunchProfileMembersRequest(params)
  2634  //
  2635  //    err := req.Send()
  2636  //    if err == nil { // resp is now filled
  2637  //        fmt.Println(resp)
  2638  //    }
  2639  //
  2640  // See also, https://docs.aws.amazon.com/goto/WebAPI/nimble-2020-08-01/ListLaunchProfileMembers
  2641  func (c *NimbleStudio) ListLaunchProfileMembersRequest(input *ListLaunchProfileMembersInput) (req *request.Request, output *ListLaunchProfileMembersOutput) {
  2642  	op := &request.Operation{
  2643  		Name:       opListLaunchProfileMembers,
  2644  		HTTPMethod: "GET",
  2645  		HTTPPath:   "/2020-08-01/studios/{studioId}/launch-profiles/{launchProfileId}/membership",
  2646  		Paginator: &request.Paginator{
  2647  			InputTokens:     []string{"nextToken"},
  2648  			OutputTokens:    []string{"nextToken"},
  2649  			LimitToken:      "maxResults",
  2650  			TruncationToken: "",
  2651  		},
  2652  	}
  2653  
  2654  	if input == nil {
  2655  		input = &ListLaunchProfileMembersInput{}
  2656  	}
  2657  
  2658  	output = &ListLaunchProfileMembersOutput{}
  2659  	req = c.newRequest(op, input, output)
  2660  	return
  2661  }
  2662  
  2663  // ListLaunchProfileMembers API operation for AmazonNimbleStudio.
  2664  //
  2665  // Get all users in a given launch profile membership.
  2666  //
  2667  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  2668  // with awserr.Error's Code and Message methods to get detailed information about
  2669  // the error.
  2670  //
  2671  // See the AWS API reference guide for AmazonNimbleStudio's
  2672  // API operation ListLaunchProfileMembers for usage and error information.
  2673  //
  2674  // Returned Error Types:
  2675  //   * ValidationException
  2676  //
  2677  //   * InternalServerErrorException
  2678  //
  2679  //   * ServiceQuotaExceededException
  2680  //
  2681  //   * AccessDeniedException
  2682  //
  2683  //   * ResourceNotFoundException
  2684  //
  2685  //   * ThrottlingException
  2686  //
  2687  //   * ConflictException
  2688  //
  2689  // See also, https://docs.aws.amazon.com/goto/WebAPI/nimble-2020-08-01/ListLaunchProfileMembers
  2690  func (c *NimbleStudio) ListLaunchProfileMembers(input *ListLaunchProfileMembersInput) (*ListLaunchProfileMembersOutput, error) {
  2691  	req, out := c.ListLaunchProfileMembersRequest(input)
  2692  	return out, req.Send()
  2693  }
  2694  
  2695  // ListLaunchProfileMembersWithContext is the same as ListLaunchProfileMembers with the addition of
  2696  // the ability to pass a context and additional request options.
  2697  //
  2698  // See ListLaunchProfileMembers for details on how to use this API operation.
  2699  //
  2700  // The context must be non-nil and will be used for request cancellation. If
  2701  // the context is nil a panic will occur. In the future the SDK may create
  2702  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  2703  // for more information on using Contexts.
  2704  func (c *NimbleStudio) ListLaunchProfileMembersWithContext(ctx aws.Context, input *ListLaunchProfileMembersInput, opts ...request.Option) (*ListLaunchProfileMembersOutput, error) {
  2705  	req, out := c.ListLaunchProfileMembersRequest(input)
  2706  	req.SetContext(ctx)
  2707  	req.ApplyOptions(opts...)
  2708  	return out, req.Send()
  2709  }
  2710  
  2711  // ListLaunchProfileMembersPages iterates over the pages of a ListLaunchProfileMembers operation,
  2712  // calling the "fn" function with the response data for each page. To stop
  2713  // iterating, return false from the fn function.
  2714  //
  2715  // See ListLaunchProfileMembers method for more information on how to use this operation.
  2716  //
  2717  // Note: This operation can generate multiple requests to a service.
  2718  //
  2719  //    // Example iterating over at most 3 pages of a ListLaunchProfileMembers operation.
  2720  //    pageNum := 0
  2721  //    err := client.ListLaunchProfileMembersPages(params,
  2722  //        func(page *nimblestudio.ListLaunchProfileMembersOutput, lastPage bool) bool {
  2723  //            pageNum++
  2724  //            fmt.Println(page)
  2725  //            return pageNum <= 3
  2726  //        })
  2727  //
  2728  func (c *NimbleStudio) ListLaunchProfileMembersPages(input *ListLaunchProfileMembersInput, fn func(*ListLaunchProfileMembersOutput, bool) bool) error {
  2729  	return c.ListLaunchProfileMembersPagesWithContext(aws.BackgroundContext(), input, fn)
  2730  }
  2731  
  2732  // ListLaunchProfileMembersPagesWithContext same as ListLaunchProfileMembersPages except
  2733  // it takes a Context and allows setting request options on the pages.
  2734  //
  2735  // The context must be non-nil and will be used for request cancellation. If
  2736  // the context is nil a panic will occur. In the future the SDK may create
  2737  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  2738  // for more information on using Contexts.
  2739  func (c *NimbleStudio) ListLaunchProfileMembersPagesWithContext(ctx aws.Context, input *ListLaunchProfileMembersInput, fn func(*ListLaunchProfileMembersOutput, bool) bool, opts ...request.Option) error {
  2740  	p := request.Pagination{
  2741  		NewRequest: func() (*request.Request, error) {
  2742  			var inCpy *ListLaunchProfileMembersInput
  2743  			if input != nil {
  2744  				tmp := *input
  2745  				inCpy = &tmp
  2746  			}
  2747  			req, _ := c.ListLaunchProfileMembersRequest(inCpy)
  2748  			req.SetContext(ctx)
  2749  			req.ApplyOptions(opts...)
  2750  			return req, nil
  2751  		},
  2752  	}
  2753  
  2754  	for p.Next() {
  2755  		if !fn(p.Page().(*ListLaunchProfileMembersOutput), !p.HasNextPage()) {
  2756  			break
  2757  		}
  2758  	}
  2759  
  2760  	return p.Err()
  2761  }
  2762  
  2763  const opListLaunchProfiles = "ListLaunchProfiles"
  2764  
  2765  // ListLaunchProfilesRequest generates a "aws/request.Request" representing the
  2766  // client's request for the ListLaunchProfiles operation. The "output" return
  2767  // value will be populated with the request's response once the request completes
  2768  // successfully.
  2769  //
  2770  // Use "Send" method on the returned Request to send the API call to the service.
  2771  // the "output" return value is not valid until after Send returns without error.
  2772  //
  2773  // See ListLaunchProfiles for more information on using the ListLaunchProfiles
  2774  // API call, and error handling.
  2775  //
  2776  // This method is useful when you want to inject custom logic or configuration
  2777  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  2778  //
  2779  //
  2780  //    // Example sending a request using the ListLaunchProfilesRequest method.
  2781  //    req, resp := client.ListLaunchProfilesRequest(params)
  2782  //
  2783  //    err := req.Send()
  2784  //    if err == nil { // resp is now filled
  2785  //        fmt.Println(resp)
  2786  //    }
  2787  //
  2788  // See also, https://docs.aws.amazon.com/goto/WebAPI/nimble-2020-08-01/ListLaunchProfiles
  2789  func (c *NimbleStudio) ListLaunchProfilesRequest(input *ListLaunchProfilesInput) (req *request.Request, output *ListLaunchProfilesOutput) {
  2790  	op := &request.Operation{
  2791  		Name:       opListLaunchProfiles,
  2792  		HTTPMethod: "GET",
  2793  		HTTPPath:   "/2020-08-01/studios/{studioId}/launch-profiles",
  2794  		Paginator: &request.Paginator{
  2795  			InputTokens:     []string{"nextToken"},
  2796  			OutputTokens:    []string{"nextToken"},
  2797  			LimitToken:      "maxResults",
  2798  			TruncationToken: "",
  2799  		},
  2800  	}
  2801  
  2802  	if input == nil {
  2803  		input = &ListLaunchProfilesInput{}
  2804  	}
  2805  
  2806  	output = &ListLaunchProfilesOutput{}
  2807  	req = c.newRequest(op, input, output)
  2808  	return
  2809  }
  2810  
  2811  // ListLaunchProfiles API operation for AmazonNimbleStudio.
  2812  //
  2813  // List all the launch profiles a studio.
  2814  //
  2815  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  2816  // with awserr.Error's Code and Message methods to get detailed information about
  2817  // the error.
  2818  //
  2819  // See the AWS API reference guide for AmazonNimbleStudio's
  2820  // API operation ListLaunchProfiles for usage and error information.
  2821  //
  2822  // Returned Error Types:
  2823  //   * ValidationException
  2824  //
  2825  //   * InternalServerErrorException
  2826  //
  2827  //   * ServiceQuotaExceededException
  2828  //
  2829  //   * AccessDeniedException
  2830  //
  2831  //   * ResourceNotFoundException
  2832  //
  2833  //   * ThrottlingException
  2834  //
  2835  //   * ConflictException
  2836  //
  2837  // See also, https://docs.aws.amazon.com/goto/WebAPI/nimble-2020-08-01/ListLaunchProfiles
  2838  func (c *NimbleStudio) ListLaunchProfiles(input *ListLaunchProfilesInput) (*ListLaunchProfilesOutput, error) {
  2839  	req, out := c.ListLaunchProfilesRequest(input)
  2840  	return out, req.Send()
  2841  }
  2842  
  2843  // ListLaunchProfilesWithContext is the same as ListLaunchProfiles with the addition of
  2844  // the ability to pass a context and additional request options.
  2845  //
  2846  // See ListLaunchProfiles for details on how to use this API operation.
  2847  //
  2848  // The context must be non-nil and will be used for request cancellation. If
  2849  // the context is nil a panic will occur. In the future the SDK may create
  2850  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  2851  // for more information on using Contexts.
  2852  func (c *NimbleStudio) ListLaunchProfilesWithContext(ctx aws.Context, input *ListLaunchProfilesInput, opts ...request.Option) (*ListLaunchProfilesOutput, error) {
  2853  	req, out := c.ListLaunchProfilesRequest(input)
  2854  	req.SetContext(ctx)
  2855  	req.ApplyOptions(opts...)
  2856  	return out, req.Send()
  2857  }
  2858  
  2859  // ListLaunchProfilesPages iterates over the pages of a ListLaunchProfiles operation,
  2860  // calling the "fn" function with the response data for each page. To stop
  2861  // iterating, return false from the fn function.
  2862  //
  2863  // See ListLaunchProfiles method for more information on how to use this operation.
  2864  //
  2865  // Note: This operation can generate multiple requests to a service.
  2866  //
  2867  //    // Example iterating over at most 3 pages of a ListLaunchProfiles operation.
  2868  //    pageNum := 0
  2869  //    err := client.ListLaunchProfilesPages(params,
  2870  //        func(page *nimblestudio.ListLaunchProfilesOutput, lastPage bool) bool {
  2871  //            pageNum++
  2872  //            fmt.Println(page)
  2873  //            return pageNum <= 3
  2874  //        })
  2875  //
  2876  func (c *NimbleStudio) ListLaunchProfilesPages(input *ListLaunchProfilesInput, fn func(*ListLaunchProfilesOutput, bool) bool) error {
  2877  	return c.ListLaunchProfilesPagesWithContext(aws.BackgroundContext(), input, fn)
  2878  }
  2879  
  2880  // ListLaunchProfilesPagesWithContext same as ListLaunchProfilesPages except
  2881  // it takes a Context and allows setting request options on the pages.
  2882  //
  2883  // The context must be non-nil and will be used for request cancellation. If
  2884  // the context is nil a panic will occur. In the future the SDK may create
  2885  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  2886  // for more information on using Contexts.
  2887  func (c *NimbleStudio) ListLaunchProfilesPagesWithContext(ctx aws.Context, input *ListLaunchProfilesInput, fn func(*ListLaunchProfilesOutput, bool) bool, opts ...request.Option) error {
  2888  	p := request.Pagination{
  2889  		NewRequest: func() (*request.Request, error) {
  2890  			var inCpy *ListLaunchProfilesInput
  2891  			if input != nil {
  2892  				tmp := *input
  2893  				inCpy = &tmp
  2894  			}
  2895  			req, _ := c.ListLaunchProfilesRequest(inCpy)
  2896  			req.SetContext(ctx)
  2897  			req.ApplyOptions(opts...)
  2898  			return req, nil
  2899  		},
  2900  	}
  2901  
  2902  	for p.Next() {
  2903  		if !fn(p.Page().(*ListLaunchProfilesOutput), !p.HasNextPage()) {
  2904  			break
  2905  		}
  2906  	}
  2907  
  2908  	return p.Err()
  2909  }
  2910  
  2911  const opListStreamingImages = "ListStreamingImages"
  2912  
  2913  // ListStreamingImagesRequest generates a "aws/request.Request" representing the
  2914  // client's request for the ListStreamingImages operation. The "output" return
  2915  // value will be populated with the request's response once the request completes
  2916  // successfully.
  2917  //
  2918  // Use "Send" method on the returned Request to send the API call to the service.
  2919  // the "output" return value is not valid until after Send returns without error.
  2920  //
  2921  // See ListStreamingImages for more information on using the ListStreamingImages
  2922  // API call, and error handling.
  2923  //
  2924  // This method is useful when you want to inject custom logic or configuration
  2925  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  2926  //
  2927  //
  2928  //    // Example sending a request using the ListStreamingImagesRequest method.
  2929  //    req, resp := client.ListStreamingImagesRequest(params)
  2930  //
  2931  //    err := req.Send()
  2932  //    if err == nil { // resp is now filled
  2933  //        fmt.Println(resp)
  2934  //    }
  2935  //
  2936  // See also, https://docs.aws.amazon.com/goto/WebAPI/nimble-2020-08-01/ListStreamingImages
  2937  func (c *NimbleStudio) ListStreamingImagesRequest(input *ListStreamingImagesInput) (req *request.Request, output *ListStreamingImagesOutput) {
  2938  	op := &request.Operation{
  2939  		Name:       opListStreamingImages,
  2940  		HTTPMethod: "GET",
  2941  		HTTPPath:   "/2020-08-01/studios/{studioId}/streaming-images",
  2942  		Paginator: &request.Paginator{
  2943  			InputTokens:     []string{"nextToken"},
  2944  			OutputTokens:    []string{"nextToken"},
  2945  			LimitToken:      "",
  2946  			TruncationToken: "",
  2947  		},
  2948  	}
  2949  
  2950  	if input == nil {
  2951  		input = &ListStreamingImagesInput{}
  2952  	}
  2953  
  2954  	output = &ListStreamingImagesOutput{}
  2955  	req = c.newRequest(op, input, output)
  2956  	return
  2957  }
  2958  
  2959  // ListStreamingImages API operation for AmazonNimbleStudio.
  2960  //
  2961  // List the streaming image resources available to this studio.
  2962  //
  2963  // This list will contain both images provided by Amazon Web Services, as well
  2964  // as streaming images that you have created in your studio.
  2965  //
  2966  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  2967  // with awserr.Error's Code and Message methods to get detailed information about
  2968  // the error.
  2969  //
  2970  // See the AWS API reference guide for AmazonNimbleStudio's
  2971  // API operation ListStreamingImages for usage and error information.
  2972  //
  2973  // Returned Error Types:
  2974  //   * ValidationException
  2975  //
  2976  //   * InternalServerErrorException
  2977  //
  2978  //   * ServiceQuotaExceededException
  2979  //
  2980  //   * AccessDeniedException
  2981  //
  2982  //   * ResourceNotFoundException
  2983  //
  2984  //   * ThrottlingException
  2985  //
  2986  //   * ConflictException
  2987  //
  2988  // See also, https://docs.aws.amazon.com/goto/WebAPI/nimble-2020-08-01/ListStreamingImages
  2989  func (c *NimbleStudio) ListStreamingImages(input *ListStreamingImagesInput) (*ListStreamingImagesOutput, error) {
  2990  	req, out := c.ListStreamingImagesRequest(input)
  2991  	return out, req.Send()
  2992  }
  2993  
  2994  // ListStreamingImagesWithContext is the same as ListStreamingImages with the addition of
  2995  // the ability to pass a context and additional request options.
  2996  //
  2997  // See ListStreamingImages for details on how to use this API operation.
  2998  //
  2999  // The context must be non-nil and will be used for request cancellation. If
  3000  // the context is nil a panic will occur. In the future the SDK may create
  3001  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  3002  // for more information on using Contexts.
  3003  func (c *NimbleStudio) ListStreamingImagesWithContext(ctx aws.Context, input *ListStreamingImagesInput, opts ...request.Option) (*ListStreamingImagesOutput, error) {
  3004  	req, out := c.ListStreamingImagesRequest(input)
  3005  	req.SetContext(ctx)
  3006  	req.ApplyOptions(opts...)
  3007  	return out, req.Send()
  3008  }
  3009  
  3010  // ListStreamingImagesPages iterates over the pages of a ListStreamingImages operation,
  3011  // calling the "fn" function with the response data for each page. To stop
  3012  // iterating, return false from the fn function.
  3013  //
  3014  // See ListStreamingImages method for more information on how to use this operation.
  3015  //
  3016  // Note: This operation can generate multiple requests to a service.
  3017  //
  3018  //    // Example iterating over at most 3 pages of a ListStreamingImages operation.
  3019  //    pageNum := 0
  3020  //    err := client.ListStreamingImagesPages(params,
  3021  //        func(page *nimblestudio.ListStreamingImagesOutput, lastPage bool) bool {
  3022  //            pageNum++
  3023  //            fmt.Println(page)
  3024  //            return pageNum <= 3
  3025  //        })
  3026  //
  3027  func (c *NimbleStudio) ListStreamingImagesPages(input *ListStreamingImagesInput, fn func(*ListStreamingImagesOutput, bool) bool) error {
  3028  	return c.ListStreamingImagesPagesWithContext(aws.BackgroundContext(), input, fn)
  3029  }
  3030  
  3031  // ListStreamingImagesPagesWithContext same as ListStreamingImagesPages except
  3032  // it takes a Context and allows setting request options on the pages.
  3033  //
  3034  // The context must be non-nil and will be used for request cancellation. If
  3035  // the context is nil a panic will occur. In the future the SDK may create
  3036  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  3037  // for more information on using Contexts.
  3038  func (c *NimbleStudio) ListStreamingImagesPagesWithContext(ctx aws.Context, input *ListStreamingImagesInput, fn func(*ListStreamingImagesOutput, bool) bool, opts ...request.Option) error {
  3039  	p := request.Pagination{
  3040  		NewRequest: func() (*request.Request, error) {
  3041  			var inCpy *ListStreamingImagesInput
  3042  			if input != nil {
  3043  				tmp := *input
  3044  				inCpy = &tmp
  3045  			}
  3046  			req, _ := c.ListStreamingImagesRequest(inCpy)
  3047  			req.SetContext(ctx)
  3048  			req.ApplyOptions(opts...)
  3049  			return req, nil
  3050  		},
  3051  	}
  3052  
  3053  	for p.Next() {
  3054  		if !fn(p.Page().(*ListStreamingImagesOutput), !p.HasNextPage()) {
  3055  			break
  3056  		}
  3057  	}
  3058  
  3059  	return p.Err()
  3060  }
  3061  
  3062  const opListStreamingSessions = "ListStreamingSessions"
  3063  
  3064  // ListStreamingSessionsRequest generates a "aws/request.Request" representing the
  3065  // client's request for the ListStreamingSessions operation. The "output" return
  3066  // value will be populated with the request's response once the request completes
  3067  // successfully.
  3068  //
  3069  // Use "Send" method on the returned Request to send the API call to the service.
  3070  // the "output" return value is not valid until after Send returns without error.
  3071  //
  3072  // See ListStreamingSessions for more information on using the ListStreamingSessions
  3073  // API call, and error handling.
  3074  //
  3075  // This method is useful when you want to inject custom logic or configuration
  3076  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  3077  //
  3078  //
  3079  //    // Example sending a request using the ListStreamingSessionsRequest method.
  3080  //    req, resp := client.ListStreamingSessionsRequest(params)
  3081  //
  3082  //    err := req.Send()
  3083  //    if err == nil { // resp is now filled
  3084  //        fmt.Println(resp)
  3085  //    }
  3086  //
  3087  // See also, https://docs.aws.amazon.com/goto/WebAPI/nimble-2020-08-01/ListStreamingSessions
  3088  func (c *NimbleStudio) ListStreamingSessionsRequest(input *ListStreamingSessionsInput) (req *request.Request, output *ListStreamingSessionsOutput) {
  3089  	op := &request.Operation{
  3090  		Name:       opListStreamingSessions,
  3091  		HTTPMethod: "GET",
  3092  		HTTPPath:   "/2020-08-01/studios/{studioId}/streaming-sessions",
  3093  		Paginator: &request.Paginator{
  3094  			InputTokens:     []string{"nextToken"},
  3095  			OutputTokens:    []string{"nextToken"},
  3096  			LimitToken:      "",
  3097  			TruncationToken: "",
  3098  		},
  3099  	}
  3100  
  3101  	if input == nil {
  3102  		input = &ListStreamingSessionsInput{}
  3103  	}
  3104  
  3105  	output = &ListStreamingSessionsOutput{}
  3106  	req = c.newRequest(op, input, output)
  3107  	return
  3108  }
  3109  
  3110  // ListStreamingSessions API operation for AmazonNimbleStudio.
  3111  //
  3112  // Lists the streaming image resources in a studio.
  3113  //
  3114  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  3115  // with awserr.Error's Code and Message methods to get detailed information about
  3116  // the error.
  3117  //
  3118  // See the AWS API reference guide for AmazonNimbleStudio's
  3119  // API operation ListStreamingSessions for usage and error information.
  3120  //
  3121  // Returned Error Types:
  3122  //   * ValidationException
  3123  //
  3124  //   * InternalServerErrorException
  3125  //
  3126  //   * ServiceQuotaExceededException
  3127  //
  3128  //   * AccessDeniedException
  3129  //
  3130  //   * ResourceNotFoundException
  3131  //
  3132  //   * ThrottlingException
  3133  //
  3134  //   * ConflictException
  3135  //
  3136  // See also, https://docs.aws.amazon.com/goto/WebAPI/nimble-2020-08-01/ListStreamingSessions
  3137  func (c *NimbleStudio) ListStreamingSessions(input *ListStreamingSessionsInput) (*ListStreamingSessionsOutput, error) {
  3138  	req, out := c.ListStreamingSessionsRequest(input)
  3139  	return out, req.Send()
  3140  }
  3141  
  3142  // ListStreamingSessionsWithContext is the same as ListStreamingSessions with the addition of
  3143  // the ability to pass a context and additional request options.
  3144  //
  3145  // See ListStreamingSessions for details on how to use this API operation.
  3146  //
  3147  // The context must be non-nil and will be used for request cancellation. If
  3148  // the context is nil a panic will occur. In the future the SDK may create
  3149  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  3150  // for more information on using Contexts.
  3151  func (c *NimbleStudio) ListStreamingSessionsWithContext(ctx aws.Context, input *ListStreamingSessionsInput, opts ...request.Option) (*ListStreamingSessionsOutput, error) {
  3152  	req, out := c.ListStreamingSessionsRequest(input)
  3153  	req.SetContext(ctx)
  3154  	req.ApplyOptions(opts...)
  3155  	return out, req.Send()
  3156  }
  3157  
  3158  // ListStreamingSessionsPages iterates over the pages of a ListStreamingSessions operation,
  3159  // calling the "fn" function with the response data for each page. To stop
  3160  // iterating, return false from the fn function.
  3161  //
  3162  // See ListStreamingSessions method for more information on how to use this operation.
  3163  //
  3164  // Note: This operation can generate multiple requests to a service.
  3165  //
  3166  //    // Example iterating over at most 3 pages of a ListStreamingSessions operation.
  3167  //    pageNum := 0
  3168  //    err := client.ListStreamingSessionsPages(params,
  3169  //        func(page *nimblestudio.ListStreamingSessionsOutput, lastPage bool) bool {
  3170  //            pageNum++
  3171  //            fmt.Println(page)
  3172  //            return pageNum <= 3
  3173  //        })
  3174  //
  3175  func (c *NimbleStudio) ListStreamingSessionsPages(input *ListStreamingSessionsInput, fn func(*ListStreamingSessionsOutput, bool) bool) error {
  3176  	return c.ListStreamingSessionsPagesWithContext(aws.BackgroundContext(), input, fn)
  3177  }
  3178  
  3179  // ListStreamingSessionsPagesWithContext same as ListStreamingSessionsPages except
  3180  // it takes a Context and allows setting request options on the pages.
  3181  //
  3182  // The context must be non-nil and will be used for request cancellation. If
  3183  // the context is nil a panic will occur. In the future the SDK may create
  3184  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  3185  // for more information on using Contexts.
  3186  func (c *NimbleStudio) ListStreamingSessionsPagesWithContext(ctx aws.Context, input *ListStreamingSessionsInput, fn func(*ListStreamingSessionsOutput, bool) bool, opts ...request.Option) error {
  3187  	p := request.Pagination{
  3188  		NewRequest: func() (*request.Request, error) {
  3189  			var inCpy *ListStreamingSessionsInput
  3190  			if input != nil {
  3191  				tmp := *input
  3192  				inCpy = &tmp
  3193  			}
  3194  			req, _ := c.ListStreamingSessionsRequest(inCpy)
  3195  			req.SetContext(ctx)
  3196  			req.ApplyOptions(opts...)
  3197  			return req, nil
  3198  		},
  3199  	}
  3200  
  3201  	for p.Next() {
  3202  		if !fn(p.Page().(*ListStreamingSessionsOutput), !p.HasNextPage()) {
  3203  			break
  3204  		}
  3205  	}
  3206  
  3207  	return p.Err()
  3208  }
  3209  
  3210  const opListStudioComponents = "ListStudioComponents"
  3211  
  3212  // ListStudioComponentsRequest generates a "aws/request.Request" representing the
  3213  // client's request for the ListStudioComponents operation. The "output" return
  3214  // value will be populated with the request's response once the request completes
  3215  // successfully.
  3216  //
  3217  // Use "Send" method on the returned Request to send the API call to the service.
  3218  // the "output" return value is not valid until after Send returns without error.
  3219  //
  3220  // See ListStudioComponents for more information on using the ListStudioComponents
  3221  // API call, and error handling.
  3222  //
  3223  // This method is useful when you want to inject custom logic or configuration
  3224  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  3225  //
  3226  //
  3227  //    // Example sending a request using the ListStudioComponentsRequest method.
  3228  //    req, resp := client.ListStudioComponentsRequest(params)
  3229  //
  3230  //    err := req.Send()
  3231  //    if err == nil { // resp is now filled
  3232  //        fmt.Println(resp)
  3233  //    }
  3234  //
  3235  // See also, https://docs.aws.amazon.com/goto/WebAPI/nimble-2020-08-01/ListStudioComponents
  3236  func (c *NimbleStudio) ListStudioComponentsRequest(input *ListStudioComponentsInput) (req *request.Request, output *ListStudioComponentsOutput) {
  3237  	op := &request.Operation{
  3238  		Name:       opListStudioComponents,
  3239  		HTTPMethod: "GET",
  3240  		HTTPPath:   "/2020-08-01/studios/{studioId}/studio-components",
  3241  		Paginator: &request.Paginator{
  3242  			InputTokens:     []string{"nextToken"},
  3243  			OutputTokens:    []string{"nextToken"},
  3244  			LimitToken:      "maxResults",
  3245  			TruncationToken: "",
  3246  		},
  3247  	}
  3248  
  3249  	if input == nil {
  3250  		input = &ListStudioComponentsInput{}
  3251  	}
  3252  
  3253  	output = &ListStudioComponentsOutput{}
  3254  	req = c.newRequest(op, input, output)
  3255  	return
  3256  }
  3257  
  3258  // ListStudioComponents API operation for AmazonNimbleStudio.
  3259  //
  3260  // Lists the StudioComponents in a studio.
  3261  //
  3262  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  3263  // with awserr.Error's Code and Message methods to get detailed information about
  3264  // the error.
  3265  //
  3266  // See the AWS API reference guide for AmazonNimbleStudio's
  3267  // API operation ListStudioComponents for usage and error information.
  3268  //
  3269  // Returned Error Types:
  3270  //   * ValidationException
  3271  //
  3272  //   * InternalServerErrorException
  3273  //
  3274  //   * ServiceQuotaExceededException
  3275  //
  3276  //   * AccessDeniedException
  3277  //
  3278  //   * ResourceNotFoundException
  3279  //
  3280  //   * ThrottlingException
  3281  //
  3282  //   * ConflictException
  3283  //
  3284  // See also, https://docs.aws.amazon.com/goto/WebAPI/nimble-2020-08-01/ListStudioComponents
  3285  func (c *NimbleStudio) ListStudioComponents(input *ListStudioComponentsInput) (*ListStudioComponentsOutput, error) {
  3286  	req, out := c.ListStudioComponentsRequest(input)
  3287  	return out, req.Send()
  3288  }
  3289  
  3290  // ListStudioComponentsWithContext is the same as ListStudioComponents with the addition of
  3291  // the ability to pass a context and additional request options.
  3292  //
  3293  // See ListStudioComponents for details on how to use this API operation.
  3294  //
  3295  // The context must be non-nil and will be used for request cancellation. If
  3296  // the context is nil a panic will occur. In the future the SDK may create
  3297  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  3298  // for more information on using Contexts.
  3299  func (c *NimbleStudio) ListStudioComponentsWithContext(ctx aws.Context, input *ListStudioComponentsInput, opts ...request.Option) (*ListStudioComponentsOutput, error) {
  3300  	req, out := c.ListStudioComponentsRequest(input)
  3301  	req.SetContext(ctx)
  3302  	req.ApplyOptions(opts...)
  3303  	return out, req.Send()
  3304  }
  3305  
  3306  // ListStudioComponentsPages iterates over the pages of a ListStudioComponents operation,
  3307  // calling the "fn" function with the response data for each page. To stop
  3308  // iterating, return false from the fn function.
  3309  //
  3310  // See ListStudioComponents method for more information on how to use this operation.
  3311  //
  3312  // Note: This operation can generate multiple requests to a service.
  3313  //
  3314  //    // Example iterating over at most 3 pages of a ListStudioComponents operation.
  3315  //    pageNum := 0
  3316  //    err := client.ListStudioComponentsPages(params,
  3317  //        func(page *nimblestudio.ListStudioComponentsOutput, lastPage bool) bool {
  3318  //            pageNum++
  3319  //            fmt.Println(page)
  3320  //            return pageNum <= 3
  3321  //        })
  3322  //
  3323  func (c *NimbleStudio) ListStudioComponentsPages(input *ListStudioComponentsInput, fn func(*ListStudioComponentsOutput, bool) bool) error {
  3324  	return c.ListStudioComponentsPagesWithContext(aws.BackgroundContext(), input, fn)
  3325  }
  3326  
  3327  // ListStudioComponentsPagesWithContext same as ListStudioComponentsPages except
  3328  // it takes a Context and allows setting request options on the pages.
  3329  //
  3330  // The context must be non-nil and will be used for request cancellation. If
  3331  // the context is nil a panic will occur. In the future the SDK may create
  3332  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  3333  // for more information on using Contexts.
  3334  func (c *NimbleStudio) ListStudioComponentsPagesWithContext(ctx aws.Context, input *ListStudioComponentsInput, fn func(*ListStudioComponentsOutput, bool) bool, opts ...request.Option) error {
  3335  	p := request.Pagination{
  3336  		NewRequest: func() (*request.Request, error) {
  3337  			var inCpy *ListStudioComponentsInput
  3338  			if input != nil {
  3339  				tmp := *input
  3340  				inCpy = &tmp
  3341  			}
  3342  			req, _ := c.ListStudioComponentsRequest(inCpy)
  3343  			req.SetContext(ctx)
  3344  			req.ApplyOptions(opts...)
  3345  			return req, nil
  3346  		},
  3347  	}
  3348  
  3349  	for p.Next() {
  3350  		if !fn(p.Page().(*ListStudioComponentsOutput), !p.HasNextPage()) {
  3351  			break
  3352  		}
  3353  	}
  3354  
  3355  	return p.Err()
  3356  }
  3357  
  3358  const opListStudioMembers = "ListStudioMembers"
  3359  
  3360  // ListStudioMembersRequest generates a "aws/request.Request" representing the
  3361  // client's request for the ListStudioMembers operation. The "output" return
  3362  // value will be populated with the request's response once the request completes
  3363  // successfully.
  3364  //
  3365  // Use "Send" method on the returned Request to send the API call to the service.
  3366  // the "output" return value is not valid until after Send returns without error.
  3367  //
  3368  // See ListStudioMembers for more information on using the ListStudioMembers
  3369  // API call, and error handling.
  3370  //
  3371  // This method is useful when you want to inject custom logic or configuration
  3372  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  3373  //
  3374  //
  3375  //    // Example sending a request using the ListStudioMembersRequest method.
  3376  //    req, resp := client.ListStudioMembersRequest(params)
  3377  //
  3378  //    err := req.Send()
  3379  //    if err == nil { // resp is now filled
  3380  //        fmt.Println(resp)
  3381  //    }
  3382  //
  3383  // See also, https://docs.aws.amazon.com/goto/WebAPI/nimble-2020-08-01/ListStudioMembers
  3384  func (c *NimbleStudio) ListStudioMembersRequest(input *ListStudioMembersInput) (req *request.Request, output *ListStudioMembersOutput) {
  3385  	op := &request.Operation{
  3386  		Name:       opListStudioMembers,
  3387  		HTTPMethod: "GET",
  3388  		HTTPPath:   "/2020-08-01/studios/{studioId}/membership",
  3389  		Paginator: &request.Paginator{
  3390  			InputTokens:     []string{"nextToken"},
  3391  			OutputTokens:    []string{"nextToken"},
  3392  			LimitToken:      "maxResults",
  3393  			TruncationToken: "",
  3394  		},
  3395  	}
  3396  
  3397  	if input == nil {
  3398  		input = &ListStudioMembersInput{}
  3399  	}
  3400  
  3401  	output = &ListStudioMembersOutput{}
  3402  	req = c.newRequest(op, input, output)
  3403  	return
  3404  }
  3405  
  3406  // ListStudioMembers API operation for AmazonNimbleStudio.
  3407  //
  3408  // Get all users in a given studio membership.
  3409  //
  3410  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  3411  // with awserr.Error's Code and Message methods to get detailed information about
  3412  // the error.
  3413  //
  3414  // See the AWS API reference guide for AmazonNimbleStudio's
  3415  // API operation ListStudioMembers for usage and error information.
  3416  //
  3417  // Returned Error Types:
  3418  //   * ValidationException
  3419  //
  3420  //   * InternalServerErrorException
  3421  //
  3422  //   * ServiceQuotaExceededException
  3423  //
  3424  //   * AccessDeniedException
  3425  //
  3426  //   * ResourceNotFoundException
  3427  //
  3428  //   * ThrottlingException
  3429  //
  3430  //   * ConflictException
  3431  //
  3432  // See also, https://docs.aws.amazon.com/goto/WebAPI/nimble-2020-08-01/ListStudioMembers
  3433  func (c *NimbleStudio) ListStudioMembers(input *ListStudioMembersInput) (*ListStudioMembersOutput, error) {
  3434  	req, out := c.ListStudioMembersRequest(input)
  3435  	return out, req.Send()
  3436  }
  3437  
  3438  // ListStudioMembersWithContext is the same as ListStudioMembers with the addition of
  3439  // the ability to pass a context and additional request options.
  3440  //
  3441  // See ListStudioMembers for details on how to use this API operation.
  3442  //
  3443  // The context must be non-nil and will be used for request cancellation. If
  3444  // the context is nil a panic will occur. In the future the SDK may create
  3445  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  3446  // for more information on using Contexts.
  3447  func (c *NimbleStudio) ListStudioMembersWithContext(ctx aws.Context, input *ListStudioMembersInput, opts ...request.Option) (*ListStudioMembersOutput, error) {
  3448  	req, out := c.ListStudioMembersRequest(input)
  3449  	req.SetContext(ctx)
  3450  	req.ApplyOptions(opts...)
  3451  	return out, req.Send()
  3452  }
  3453  
  3454  // ListStudioMembersPages iterates over the pages of a ListStudioMembers operation,
  3455  // calling the "fn" function with the response data for each page. To stop
  3456  // iterating, return false from the fn function.
  3457  //
  3458  // See ListStudioMembers method for more information on how to use this operation.
  3459  //
  3460  // Note: This operation can generate multiple requests to a service.
  3461  //
  3462  //    // Example iterating over at most 3 pages of a ListStudioMembers operation.
  3463  //    pageNum := 0
  3464  //    err := client.ListStudioMembersPages(params,
  3465  //        func(page *nimblestudio.ListStudioMembersOutput, lastPage bool) bool {
  3466  //            pageNum++
  3467  //            fmt.Println(page)
  3468  //            return pageNum <= 3
  3469  //        })
  3470  //
  3471  func (c *NimbleStudio) ListStudioMembersPages(input *ListStudioMembersInput, fn func(*ListStudioMembersOutput, bool) bool) error {
  3472  	return c.ListStudioMembersPagesWithContext(aws.BackgroundContext(), input, fn)
  3473  }
  3474  
  3475  // ListStudioMembersPagesWithContext same as ListStudioMembersPages except
  3476  // it takes a Context and allows setting request options on the pages.
  3477  //
  3478  // The context must be non-nil and will be used for request cancellation. If
  3479  // the context is nil a panic will occur. In the future the SDK may create
  3480  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  3481  // for more information on using Contexts.
  3482  func (c *NimbleStudio) ListStudioMembersPagesWithContext(ctx aws.Context, input *ListStudioMembersInput, fn func(*ListStudioMembersOutput, bool) bool, opts ...request.Option) error {
  3483  	p := request.Pagination{
  3484  		NewRequest: func() (*request.Request, error) {
  3485  			var inCpy *ListStudioMembersInput
  3486  			if input != nil {
  3487  				tmp := *input
  3488  				inCpy = &tmp
  3489  			}
  3490  			req, _ := c.ListStudioMembersRequest(inCpy)
  3491  			req.SetContext(ctx)
  3492  			req.ApplyOptions(opts...)
  3493  			return req, nil
  3494  		},
  3495  	}
  3496  
  3497  	for p.Next() {
  3498  		if !fn(p.Page().(*ListStudioMembersOutput), !p.HasNextPage()) {
  3499  			break
  3500  		}
  3501  	}
  3502  
  3503  	return p.Err()
  3504  }
  3505  
  3506  const opListStudios = "ListStudios"
  3507  
  3508  // ListStudiosRequest generates a "aws/request.Request" representing the
  3509  // client's request for the ListStudios operation. The "output" return
  3510  // value will be populated with the request's response once the request completes
  3511  // successfully.
  3512  //
  3513  // Use "Send" method on the returned Request to send the API call to the service.
  3514  // the "output" return value is not valid until after Send returns without error.
  3515  //
  3516  // See ListStudios for more information on using the ListStudios
  3517  // API call, and error handling.
  3518  //
  3519  // This method is useful when you want to inject custom logic or configuration
  3520  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  3521  //
  3522  //
  3523  //    // Example sending a request using the ListStudiosRequest method.
  3524  //    req, resp := client.ListStudiosRequest(params)
  3525  //
  3526  //    err := req.Send()
  3527  //    if err == nil { // resp is now filled
  3528  //        fmt.Println(resp)
  3529  //    }
  3530  //
  3531  // See also, https://docs.aws.amazon.com/goto/WebAPI/nimble-2020-08-01/ListStudios
  3532  func (c *NimbleStudio) ListStudiosRequest(input *ListStudiosInput) (req *request.Request, output *ListStudiosOutput) {
  3533  	op := &request.Operation{
  3534  		Name:       opListStudios,
  3535  		HTTPMethod: "GET",
  3536  		HTTPPath:   "/2020-08-01/studios",
  3537  		Paginator: &request.Paginator{
  3538  			InputTokens:     []string{"nextToken"},
  3539  			OutputTokens:    []string{"nextToken"},
  3540  			LimitToken:      "",
  3541  			TruncationToken: "",
  3542  		},
  3543  	}
  3544  
  3545  	if input == nil {
  3546  		input = &ListStudiosInput{}
  3547  	}
  3548  
  3549  	output = &ListStudiosOutput{}
  3550  	req = c.newRequest(op, input, output)
  3551  	return
  3552  }
  3553  
  3554  // ListStudios API operation for AmazonNimbleStudio.
  3555  //
  3556  // List studios in your Amazon Web Services account in the requested Amazon
  3557  // Web Services Region.
  3558  //
  3559  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  3560  // with awserr.Error's Code and Message methods to get detailed information about
  3561  // the error.
  3562  //
  3563  // See the AWS API reference guide for AmazonNimbleStudio's
  3564  // API operation ListStudios for usage and error information.
  3565  //
  3566  // Returned Error Types:
  3567  //   * ValidationException
  3568  //
  3569  //   * InternalServerErrorException
  3570  //
  3571  //   * ServiceQuotaExceededException
  3572  //
  3573  //   * AccessDeniedException
  3574  //
  3575  //   * ResourceNotFoundException
  3576  //
  3577  //   * ThrottlingException
  3578  //
  3579  //   * ConflictException
  3580  //
  3581  // See also, https://docs.aws.amazon.com/goto/WebAPI/nimble-2020-08-01/ListStudios
  3582  func (c *NimbleStudio) ListStudios(input *ListStudiosInput) (*ListStudiosOutput, error) {
  3583  	req, out := c.ListStudiosRequest(input)
  3584  	return out, req.Send()
  3585  }
  3586  
  3587  // ListStudiosWithContext is the same as ListStudios with the addition of
  3588  // the ability to pass a context and additional request options.
  3589  //
  3590  // See ListStudios for details on how to use this API operation.
  3591  //
  3592  // The context must be non-nil and will be used for request cancellation. If
  3593  // the context is nil a panic will occur. In the future the SDK may create
  3594  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  3595  // for more information on using Contexts.
  3596  func (c *NimbleStudio) ListStudiosWithContext(ctx aws.Context, input *ListStudiosInput, opts ...request.Option) (*ListStudiosOutput, error) {
  3597  	req, out := c.ListStudiosRequest(input)
  3598  	req.SetContext(ctx)
  3599  	req.ApplyOptions(opts...)
  3600  	return out, req.Send()
  3601  }
  3602  
  3603  // ListStudiosPages iterates over the pages of a ListStudios operation,
  3604  // calling the "fn" function with the response data for each page. To stop
  3605  // iterating, return false from the fn function.
  3606  //
  3607  // See ListStudios method for more information on how to use this operation.
  3608  //
  3609  // Note: This operation can generate multiple requests to a service.
  3610  //
  3611  //    // Example iterating over at most 3 pages of a ListStudios operation.
  3612  //    pageNum := 0
  3613  //    err := client.ListStudiosPages(params,
  3614  //        func(page *nimblestudio.ListStudiosOutput, lastPage bool) bool {
  3615  //            pageNum++
  3616  //            fmt.Println(page)
  3617  //            return pageNum <= 3
  3618  //        })
  3619  //
  3620  func (c *NimbleStudio) ListStudiosPages(input *ListStudiosInput, fn func(*ListStudiosOutput, bool) bool) error {
  3621  	return c.ListStudiosPagesWithContext(aws.BackgroundContext(), input, fn)
  3622  }
  3623  
  3624  // ListStudiosPagesWithContext same as ListStudiosPages except
  3625  // it takes a Context and allows setting request options on the pages.
  3626  //
  3627  // The context must be non-nil and will be used for request cancellation. If
  3628  // the context is nil a panic will occur. In the future the SDK may create
  3629  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  3630  // for more information on using Contexts.
  3631  func (c *NimbleStudio) ListStudiosPagesWithContext(ctx aws.Context, input *ListStudiosInput, fn func(*ListStudiosOutput, bool) bool, opts ...request.Option) error {
  3632  	p := request.Pagination{
  3633  		NewRequest: func() (*request.Request, error) {
  3634  			var inCpy *ListStudiosInput
  3635  			if input != nil {
  3636  				tmp := *input
  3637  				inCpy = &tmp
  3638  			}
  3639  			req, _ := c.ListStudiosRequest(inCpy)
  3640  			req.SetContext(ctx)
  3641  			req.ApplyOptions(opts...)
  3642  			return req, nil
  3643  		},
  3644  	}
  3645  
  3646  	for p.Next() {
  3647  		if !fn(p.Page().(*ListStudiosOutput), !p.HasNextPage()) {
  3648  			break
  3649  		}
  3650  	}
  3651  
  3652  	return p.Err()
  3653  }
  3654  
  3655  const opListTagsForResource = "ListTagsForResource"
  3656  
  3657  // ListTagsForResourceRequest generates a "aws/request.Request" representing the
  3658  // client's request for the ListTagsForResource operation. The "output" return
  3659  // value will be populated with the request's response once the request completes
  3660  // successfully.
  3661  //
  3662  // Use "Send" method on the returned Request to send the API call to the service.
  3663  // the "output" return value is not valid until after Send returns without error.
  3664  //
  3665  // See ListTagsForResource for more information on using the ListTagsForResource
  3666  // API call, and error handling.
  3667  //
  3668  // This method is useful when you want to inject custom logic or configuration
  3669  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  3670  //
  3671  //
  3672  //    // Example sending a request using the ListTagsForResourceRequest method.
  3673  //    req, resp := client.ListTagsForResourceRequest(params)
  3674  //
  3675  //    err := req.Send()
  3676  //    if err == nil { // resp is now filled
  3677  //        fmt.Println(resp)
  3678  //    }
  3679  //
  3680  // See also, https://docs.aws.amazon.com/goto/WebAPI/nimble-2020-08-01/ListTagsForResource
  3681  func (c *NimbleStudio) ListTagsForResourceRequest(input *ListTagsForResourceInput) (req *request.Request, output *ListTagsForResourceOutput) {
  3682  	op := &request.Operation{
  3683  		Name:       opListTagsForResource,
  3684  		HTTPMethod: "GET",
  3685  		HTTPPath:   "/2020-08-01/tags/{resourceArn}",
  3686  	}
  3687  
  3688  	if input == nil {
  3689  		input = &ListTagsForResourceInput{}
  3690  	}
  3691  
  3692  	output = &ListTagsForResourceOutput{}
  3693  	req = c.newRequest(op, input, output)
  3694  	return
  3695  }
  3696  
  3697  // ListTagsForResource API operation for AmazonNimbleStudio.
  3698  //
  3699  // Gets the tags for a resource, given its Amazon Resource Names (ARN).
  3700  //
  3701  // This operation supports ARNs for all resource types in Nimble Studio that
  3702  // support tags, including studio, studio component, launch profile, streaming
  3703  // image, and streaming session. All resources that can be tagged will contain
  3704  // an ARN property, so you do not have to create this ARN yourself.
  3705  //
  3706  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  3707  // with awserr.Error's Code and Message methods to get detailed information about
  3708  // the error.
  3709  //
  3710  // See the AWS API reference guide for AmazonNimbleStudio's
  3711  // API operation ListTagsForResource for usage and error information.
  3712  //
  3713  // Returned Error Types:
  3714  //   * ValidationException
  3715  //
  3716  //   * InternalServerErrorException
  3717  //
  3718  //   * ServiceQuotaExceededException
  3719  //
  3720  //   * AccessDeniedException
  3721  //
  3722  //   * ResourceNotFoundException
  3723  //
  3724  //   * ThrottlingException
  3725  //
  3726  //   * ConflictException
  3727  //
  3728  // See also, https://docs.aws.amazon.com/goto/WebAPI/nimble-2020-08-01/ListTagsForResource
  3729  func (c *NimbleStudio) ListTagsForResource(input *ListTagsForResourceInput) (*ListTagsForResourceOutput, error) {
  3730  	req, out := c.ListTagsForResourceRequest(input)
  3731  	return out, req.Send()
  3732  }
  3733  
  3734  // ListTagsForResourceWithContext is the same as ListTagsForResource with the addition of
  3735  // the ability to pass a context and additional request options.
  3736  //
  3737  // See ListTagsForResource for details on how to use this API operation.
  3738  //
  3739  // The context must be non-nil and will be used for request cancellation. If
  3740  // the context is nil a panic will occur. In the future the SDK may create
  3741  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  3742  // for more information on using Contexts.
  3743  func (c *NimbleStudio) ListTagsForResourceWithContext(ctx aws.Context, input *ListTagsForResourceInput, opts ...request.Option) (*ListTagsForResourceOutput, error) {
  3744  	req, out := c.ListTagsForResourceRequest(input)
  3745  	req.SetContext(ctx)
  3746  	req.ApplyOptions(opts...)
  3747  	return out, req.Send()
  3748  }
  3749  
  3750  const opPutLaunchProfileMembers = "PutLaunchProfileMembers"
  3751  
  3752  // PutLaunchProfileMembersRequest generates a "aws/request.Request" representing the
  3753  // client's request for the PutLaunchProfileMembers operation. The "output" return
  3754  // value will be populated with the request's response once the request completes
  3755  // successfully.
  3756  //
  3757  // Use "Send" method on the returned Request to send the API call to the service.
  3758  // the "output" return value is not valid until after Send returns without error.
  3759  //
  3760  // See PutLaunchProfileMembers for more information on using the PutLaunchProfileMembers
  3761  // API call, and error handling.
  3762  //
  3763  // This method is useful when you want to inject custom logic or configuration
  3764  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  3765  //
  3766  //
  3767  //    // Example sending a request using the PutLaunchProfileMembersRequest method.
  3768  //    req, resp := client.PutLaunchProfileMembersRequest(params)
  3769  //
  3770  //    err := req.Send()
  3771  //    if err == nil { // resp is now filled
  3772  //        fmt.Println(resp)
  3773  //    }
  3774  //
  3775  // See also, https://docs.aws.amazon.com/goto/WebAPI/nimble-2020-08-01/PutLaunchProfileMembers
  3776  func (c *NimbleStudio) PutLaunchProfileMembersRequest(input *PutLaunchProfileMembersInput) (req *request.Request, output *PutLaunchProfileMembersOutput) {
  3777  	op := &request.Operation{
  3778  		Name:       opPutLaunchProfileMembers,
  3779  		HTTPMethod: "POST",
  3780  		HTTPPath:   "/2020-08-01/studios/{studioId}/launch-profiles/{launchProfileId}/membership",
  3781  	}
  3782  
  3783  	if input == nil {
  3784  		input = &PutLaunchProfileMembersInput{}
  3785  	}
  3786  
  3787  	output = &PutLaunchProfileMembersOutput{}
  3788  	req = c.newRequest(op, input, output)
  3789  	req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
  3790  	return
  3791  }
  3792  
  3793  // PutLaunchProfileMembers API operation for AmazonNimbleStudio.
  3794  //
  3795  // Add/update users with given persona to launch profile membership.
  3796  //
  3797  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  3798  // with awserr.Error's Code and Message methods to get detailed information about
  3799  // the error.
  3800  //
  3801  // See the AWS API reference guide for AmazonNimbleStudio's
  3802  // API operation PutLaunchProfileMembers for usage and error information.
  3803  //
  3804  // Returned Error Types:
  3805  //   * ValidationException
  3806  //
  3807  //   * InternalServerErrorException
  3808  //
  3809  //   * ServiceQuotaExceededException
  3810  //
  3811  //   * AccessDeniedException
  3812  //
  3813  //   * ResourceNotFoundException
  3814  //
  3815  //   * ThrottlingException
  3816  //
  3817  //   * ConflictException
  3818  //
  3819  // See also, https://docs.aws.amazon.com/goto/WebAPI/nimble-2020-08-01/PutLaunchProfileMembers
  3820  func (c *NimbleStudio) PutLaunchProfileMembers(input *PutLaunchProfileMembersInput) (*PutLaunchProfileMembersOutput, error) {
  3821  	req, out := c.PutLaunchProfileMembersRequest(input)
  3822  	return out, req.Send()
  3823  }
  3824  
  3825  // PutLaunchProfileMembersWithContext is the same as PutLaunchProfileMembers with the addition of
  3826  // the ability to pass a context and additional request options.
  3827  //
  3828  // See PutLaunchProfileMembers for details on how to use this API operation.
  3829  //
  3830  // The context must be non-nil and will be used for request cancellation. If
  3831  // the context is nil a panic will occur. In the future the SDK may create
  3832  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  3833  // for more information on using Contexts.
  3834  func (c *NimbleStudio) PutLaunchProfileMembersWithContext(ctx aws.Context, input *PutLaunchProfileMembersInput, opts ...request.Option) (*PutLaunchProfileMembersOutput, error) {
  3835  	req, out := c.PutLaunchProfileMembersRequest(input)
  3836  	req.SetContext(ctx)
  3837  	req.ApplyOptions(opts...)
  3838  	return out, req.Send()
  3839  }
  3840  
  3841  const opPutStudioMembers = "PutStudioMembers"
  3842  
  3843  // PutStudioMembersRequest generates a "aws/request.Request" representing the
  3844  // client's request for the PutStudioMembers operation. The "output" return
  3845  // value will be populated with the request's response once the request completes
  3846  // successfully.
  3847  //
  3848  // Use "Send" method on the returned Request to send the API call to the service.
  3849  // the "output" return value is not valid until after Send returns without error.
  3850  //
  3851  // See PutStudioMembers for more information on using the PutStudioMembers
  3852  // API call, and error handling.
  3853  //
  3854  // This method is useful when you want to inject custom logic or configuration
  3855  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  3856  //
  3857  //
  3858  //    // Example sending a request using the PutStudioMembersRequest method.
  3859  //    req, resp := client.PutStudioMembersRequest(params)
  3860  //
  3861  //    err := req.Send()
  3862  //    if err == nil { // resp is now filled
  3863  //        fmt.Println(resp)
  3864  //    }
  3865  //
  3866  // See also, https://docs.aws.amazon.com/goto/WebAPI/nimble-2020-08-01/PutStudioMembers
  3867  func (c *NimbleStudio) PutStudioMembersRequest(input *PutStudioMembersInput) (req *request.Request, output *PutStudioMembersOutput) {
  3868  	op := &request.Operation{
  3869  		Name:       opPutStudioMembers,
  3870  		HTTPMethod: "POST",
  3871  		HTTPPath:   "/2020-08-01/studios/{studioId}/membership",
  3872  	}
  3873  
  3874  	if input == nil {
  3875  		input = &PutStudioMembersInput{}
  3876  	}
  3877  
  3878  	output = &PutStudioMembersOutput{}
  3879  	req = c.newRequest(op, input, output)
  3880  	req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
  3881  	return
  3882  }
  3883  
  3884  // PutStudioMembers API operation for AmazonNimbleStudio.
  3885  //
  3886  // Add/update users with given persona to studio membership.
  3887  //
  3888  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  3889  // with awserr.Error's Code and Message methods to get detailed information about
  3890  // the error.
  3891  //
  3892  // See the AWS API reference guide for AmazonNimbleStudio's
  3893  // API operation PutStudioMembers for usage and error information.
  3894  //
  3895  // Returned Error Types:
  3896  //   * ValidationException
  3897  //
  3898  //   * InternalServerErrorException
  3899  //
  3900  //   * ServiceQuotaExceededException
  3901  //
  3902  //   * AccessDeniedException
  3903  //
  3904  //   * ResourceNotFoundException
  3905  //
  3906  //   * ThrottlingException
  3907  //
  3908  //   * ConflictException
  3909  //
  3910  // See also, https://docs.aws.amazon.com/goto/WebAPI/nimble-2020-08-01/PutStudioMembers
  3911  func (c *NimbleStudio) PutStudioMembers(input *PutStudioMembersInput) (*PutStudioMembersOutput, error) {
  3912  	req, out := c.PutStudioMembersRequest(input)
  3913  	return out, req.Send()
  3914  }
  3915  
  3916  // PutStudioMembersWithContext is the same as PutStudioMembers with the addition of
  3917  // the ability to pass a context and additional request options.
  3918  //
  3919  // See PutStudioMembers for details on how to use this API operation.
  3920  //
  3921  // The context must be non-nil and will be used for request cancellation. If
  3922  // the context is nil a panic will occur. In the future the SDK may create
  3923  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  3924  // for more information on using Contexts.
  3925  func (c *NimbleStudio) PutStudioMembersWithContext(ctx aws.Context, input *PutStudioMembersInput, opts ...request.Option) (*PutStudioMembersOutput, error) {
  3926  	req, out := c.PutStudioMembersRequest(input)
  3927  	req.SetContext(ctx)
  3928  	req.ApplyOptions(opts...)
  3929  	return out, req.Send()
  3930  }
  3931  
  3932  const opStartStudioSSOConfigurationRepair = "StartStudioSSOConfigurationRepair"
  3933  
  3934  // StartStudioSSOConfigurationRepairRequest generates a "aws/request.Request" representing the
  3935  // client's request for the StartStudioSSOConfigurationRepair operation. The "output" return
  3936  // value will be populated with the request's response once the request completes
  3937  // successfully.
  3938  //
  3939  // Use "Send" method on the returned Request to send the API call to the service.
  3940  // the "output" return value is not valid until after Send returns without error.
  3941  //
  3942  // See StartStudioSSOConfigurationRepair for more information on using the StartStudioSSOConfigurationRepair
  3943  // API call, and error handling.
  3944  //
  3945  // This method is useful when you want to inject custom logic or configuration
  3946  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  3947  //
  3948  //
  3949  //    // Example sending a request using the StartStudioSSOConfigurationRepairRequest method.
  3950  //    req, resp := client.StartStudioSSOConfigurationRepairRequest(params)
  3951  //
  3952  //    err := req.Send()
  3953  //    if err == nil { // resp is now filled
  3954  //        fmt.Println(resp)
  3955  //    }
  3956  //
  3957  // See also, https://docs.aws.amazon.com/goto/WebAPI/nimble-2020-08-01/StartStudioSSOConfigurationRepair
  3958  func (c *NimbleStudio) StartStudioSSOConfigurationRepairRequest(input *StartStudioSSOConfigurationRepairInput) (req *request.Request, output *StartStudioSSOConfigurationRepairOutput) {
  3959  	op := &request.Operation{
  3960  		Name:       opStartStudioSSOConfigurationRepair,
  3961  		HTTPMethod: "PUT",
  3962  		HTTPPath:   "/2020-08-01/studios/{studioId}/sso-configuration",
  3963  	}
  3964  
  3965  	if input == nil {
  3966  		input = &StartStudioSSOConfigurationRepairInput{}
  3967  	}
  3968  
  3969  	output = &StartStudioSSOConfigurationRepairOutput{}
  3970  	req = c.newRequest(op, input, output)
  3971  	return
  3972  }
  3973  
  3974  // StartStudioSSOConfigurationRepair API operation for AmazonNimbleStudio.
  3975  //
  3976  // Repairs the SSO configuration for a given studio.
  3977  //
  3978  // If the studio has a valid Amazon Web Services SSO configuration currently
  3979  // associated with it, this operation will fail with a validation error.
  3980  //
  3981  // If the studio does not have a valid Amazon Web Services SSO configuration
  3982  // currently associated with it, then a new Amazon Web Services SSO application
  3983  // is created for the studio and the studio is changed to the READY state.
  3984  //
  3985  // After the Amazon Web Services SSO application is repaired, you must use the
  3986  // Amazon Nimble Studio console to add administrators and users to your studio.
  3987  //
  3988  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  3989  // with awserr.Error's Code and Message methods to get detailed information about
  3990  // the error.
  3991  //
  3992  // See the AWS API reference guide for AmazonNimbleStudio's
  3993  // API operation StartStudioSSOConfigurationRepair for usage and error information.
  3994  //
  3995  // Returned Error Types:
  3996  //   * ValidationException
  3997  //
  3998  //   * InternalServerErrorException
  3999  //
  4000  //   * ServiceQuotaExceededException
  4001  //
  4002  //   * AccessDeniedException
  4003  //
  4004  //   * ResourceNotFoundException
  4005  //
  4006  //   * ThrottlingException
  4007  //
  4008  //   * ConflictException
  4009  //
  4010  // See also, https://docs.aws.amazon.com/goto/WebAPI/nimble-2020-08-01/StartStudioSSOConfigurationRepair
  4011  func (c *NimbleStudio) StartStudioSSOConfigurationRepair(input *StartStudioSSOConfigurationRepairInput) (*StartStudioSSOConfigurationRepairOutput, error) {
  4012  	req, out := c.StartStudioSSOConfigurationRepairRequest(input)
  4013  	return out, req.Send()
  4014  }
  4015  
  4016  // StartStudioSSOConfigurationRepairWithContext is the same as StartStudioSSOConfigurationRepair with the addition of
  4017  // the ability to pass a context and additional request options.
  4018  //
  4019  // See StartStudioSSOConfigurationRepair for details on how to use this API operation.
  4020  //
  4021  // The context must be non-nil and will be used for request cancellation. If
  4022  // the context is nil a panic will occur. In the future the SDK may create
  4023  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  4024  // for more information on using Contexts.
  4025  func (c *NimbleStudio) StartStudioSSOConfigurationRepairWithContext(ctx aws.Context, input *StartStudioSSOConfigurationRepairInput, opts ...request.Option) (*StartStudioSSOConfigurationRepairOutput, error) {
  4026  	req, out := c.StartStudioSSOConfigurationRepairRequest(input)
  4027  	req.SetContext(ctx)
  4028  	req.ApplyOptions(opts...)
  4029  	return out, req.Send()
  4030  }
  4031  
  4032  const opTagResource = "TagResource"
  4033  
  4034  // TagResourceRequest generates a "aws/request.Request" representing the
  4035  // client's request for the TagResource operation. The "output" return
  4036  // value will be populated with the request's response once the request completes
  4037  // successfully.
  4038  //
  4039  // Use "Send" method on the returned Request to send the API call to the service.
  4040  // the "output" return value is not valid until after Send returns without error.
  4041  //
  4042  // See TagResource for more information on using the TagResource
  4043  // API call, and error handling.
  4044  //
  4045  // This method is useful when you want to inject custom logic or configuration
  4046  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  4047  //
  4048  //
  4049  //    // Example sending a request using the TagResourceRequest method.
  4050  //    req, resp := client.TagResourceRequest(params)
  4051  //
  4052  //    err := req.Send()
  4053  //    if err == nil { // resp is now filled
  4054  //        fmt.Println(resp)
  4055  //    }
  4056  //
  4057  // See also, https://docs.aws.amazon.com/goto/WebAPI/nimble-2020-08-01/TagResource
  4058  func (c *NimbleStudio) TagResourceRequest(input *TagResourceInput) (req *request.Request, output *TagResourceOutput) {
  4059  	op := &request.Operation{
  4060  		Name:       opTagResource,
  4061  		HTTPMethod: "POST",
  4062  		HTTPPath:   "/2020-08-01/tags/{resourceArn}",
  4063  	}
  4064  
  4065  	if input == nil {
  4066  		input = &TagResourceInput{}
  4067  	}
  4068  
  4069  	output = &TagResourceOutput{}
  4070  	req = c.newRequest(op, input, output)
  4071  	req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
  4072  	return
  4073  }
  4074  
  4075  // TagResource API operation for AmazonNimbleStudio.
  4076  //
  4077  // Creates tags for a resource, given its ARN.
  4078  //
  4079  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  4080  // with awserr.Error's Code and Message methods to get detailed information about
  4081  // the error.
  4082  //
  4083  // See the AWS API reference guide for AmazonNimbleStudio's
  4084  // API operation TagResource for usage and error information.
  4085  //
  4086  // Returned Error Types:
  4087  //   * ValidationException
  4088  //
  4089  //   * InternalServerErrorException
  4090  //
  4091  //   * ServiceQuotaExceededException
  4092  //
  4093  //   * AccessDeniedException
  4094  //
  4095  //   * ResourceNotFoundException
  4096  //
  4097  //   * ThrottlingException
  4098  //
  4099  //   * ConflictException
  4100  //
  4101  // See also, https://docs.aws.amazon.com/goto/WebAPI/nimble-2020-08-01/TagResource
  4102  func (c *NimbleStudio) TagResource(input *TagResourceInput) (*TagResourceOutput, error) {
  4103  	req, out := c.TagResourceRequest(input)
  4104  	return out, req.Send()
  4105  }
  4106  
  4107  // TagResourceWithContext is the same as TagResource with the addition of
  4108  // the ability to pass a context and additional request options.
  4109  //
  4110  // See TagResource for details on how to use this API operation.
  4111  //
  4112  // The context must be non-nil and will be used for request cancellation. If
  4113  // the context is nil a panic will occur. In the future the SDK may create
  4114  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  4115  // for more information on using Contexts.
  4116  func (c *NimbleStudio) TagResourceWithContext(ctx aws.Context, input *TagResourceInput, opts ...request.Option) (*TagResourceOutput, error) {
  4117  	req, out := c.TagResourceRequest(input)
  4118  	req.SetContext(ctx)
  4119  	req.ApplyOptions(opts...)
  4120  	return out, req.Send()
  4121  }
  4122  
  4123  const opUntagResource = "UntagResource"
  4124  
  4125  // UntagResourceRequest generates a "aws/request.Request" representing the
  4126  // client's request for the UntagResource operation. The "output" return
  4127  // value will be populated with the request's response once the request completes
  4128  // successfully.
  4129  //
  4130  // Use "Send" method on the returned Request to send the API call to the service.
  4131  // the "output" return value is not valid until after Send returns without error.
  4132  //
  4133  // See UntagResource for more information on using the UntagResource
  4134  // API call, and error handling.
  4135  //
  4136  // This method is useful when you want to inject custom logic or configuration
  4137  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  4138  //
  4139  //
  4140  //    // Example sending a request using the UntagResourceRequest method.
  4141  //    req, resp := client.UntagResourceRequest(params)
  4142  //
  4143  //    err := req.Send()
  4144  //    if err == nil { // resp is now filled
  4145  //        fmt.Println(resp)
  4146  //    }
  4147  //
  4148  // See also, https://docs.aws.amazon.com/goto/WebAPI/nimble-2020-08-01/UntagResource
  4149  func (c *NimbleStudio) UntagResourceRequest(input *UntagResourceInput) (req *request.Request, output *UntagResourceOutput) {
  4150  	op := &request.Operation{
  4151  		Name:       opUntagResource,
  4152  		HTTPMethod: "DELETE",
  4153  		HTTPPath:   "/2020-08-01/tags/{resourceArn}",
  4154  	}
  4155  
  4156  	if input == nil {
  4157  		input = &UntagResourceInput{}
  4158  	}
  4159  
  4160  	output = &UntagResourceOutput{}
  4161  	req = c.newRequest(op, input, output)
  4162  	req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
  4163  	return
  4164  }
  4165  
  4166  // UntagResource API operation for AmazonNimbleStudio.
  4167  //
  4168  // Deletes the tags for a resource.
  4169  //
  4170  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  4171  // with awserr.Error's Code and Message methods to get detailed information about
  4172  // the error.
  4173  //
  4174  // See the AWS API reference guide for AmazonNimbleStudio's
  4175  // API operation UntagResource for usage and error information.
  4176  //
  4177  // Returned Error Types:
  4178  //   * ValidationException
  4179  //
  4180  //   * InternalServerErrorException
  4181  //
  4182  //   * ServiceQuotaExceededException
  4183  //
  4184  //   * AccessDeniedException
  4185  //
  4186  //   * ResourceNotFoundException
  4187  //
  4188  //   * ThrottlingException
  4189  //
  4190  //   * ConflictException
  4191  //
  4192  // See also, https://docs.aws.amazon.com/goto/WebAPI/nimble-2020-08-01/UntagResource
  4193  func (c *NimbleStudio) UntagResource(input *UntagResourceInput) (*UntagResourceOutput, error) {
  4194  	req, out := c.UntagResourceRequest(input)
  4195  	return out, req.Send()
  4196  }
  4197  
  4198  // UntagResourceWithContext is the same as UntagResource with the addition of
  4199  // the ability to pass a context and additional request options.
  4200  //
  4201  // See UntagResource for details on how to use this API operation.
  4202  //
  4203  // The context must be non-nil and will be used for request cancellation. If
  4204  // the context is nil a panic will occur. In the future the SDK may create
  4205  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  4206  // for more information on using Contexts.
  4207  func (c *NimbleStudio) UntagResourceWithContext(ctx aws.Context, input *UntagResourceInput, opts ...request.Option) (*UntagResourceOutput, error) {
  4208  	req, out := c.UntagResourceRequest(input)
  4209  	req.SetContext(ctx)
  4210  	req.ApplyOptions(opts...)
  4211  	return out, req.Send()
  4212  }
  4213  
  4214  const opUpdateLaunchProfile = "UpdateLaunchProfile"
  4215  
  4216  // UpdateLaunchProfileRequest generates a "aws/request.Request" representing the
  4217  // client's request for the UpdateLaunchProfile operation. The "output" return
  4218  // value will be populated with the request's response once the request completes
  4219  // successfully.
  4220  //
  4221  // Use "Send" method on the returned Request to send the API call to the service.
  4222  // the "output" return value is not valid until after Send returns without error.
  4223  //
  4224  // See UpdateLaunchProfile for more information on using the UpdateLaunchProfile
  4225  // API call, and error handling.
  4226  //
  4227  // This method is useful when you want to inject custom logic or configuration
  4228  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  4229  //
  4230  //
  4231  //    // Example sending a request using the UpdateLaunchProfileRequest method.
  4232  //    req, resp := client.UpdateLaunchProfileRequest(params)
  4233  //
  4234  //    err := req.Send()
  4235  //    if err == nil { // resp is now filled
  4236  //        fmt.Println(resp)
  4237  //    }
  4238  //
  4239  // See also, https://docs.aws.amazon.com/goto/WebAPI/nimble-2020-08-01/UpdateLaunchProfile
  4240  func (c *NimbleStudio) UpdateLaunchProfileRequest(input *UpdateLaunchProfileInput) (req *request.Request, output *UpdateLaunchProfileOutput) {
  4241  	op := &request.Operation{
  4242  		Name:       opUpdateLaunchProfile,
  4243  		HTTPMethod: "PATCH",
  4244  		HTTPPath:   "/2020-08-01/studios/{studioId}/launch-profiles/{launchProfileId}",
  4245  	}
  4246  
  4247  	if input == nil {
  4248  		input = &UpdateLaunchProfileInput{}
  4249  	}
  4250  
  4251  	output = &UpdateLaunchProfileOutput{}
  4252  	req = c.newRequest(op, input, output)
  4253  	return
  4254  }
  4255  
  4256  // UpdateLaunchProfile API operation for AmazonNimbleStudio.
  4257  //
  4258  // Update a launch profile.
  4259  //
  4260  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  4261  // with awserr.Error's Code and Message methods to get detailed information about
  4262  // the error.
  4263  //
  4264  // See the AWS API reference guide for AmazonNimbleStudio's
  4265  // API operation UpdateLaunchProfile for usage and error information.
  4266  //
  4267  // Returned Error Types:
  4268  //   * ValidationException
  4269  //
  4270  //   * InternalServerErrorException
  4271  //
  4272  //   * ServiceQuotaExceededException
  4273  //
  4274  //   * AccessDeniedException
  4275  //
  4276  //   * ResourceNotFoundException
  4277  //
  4278  //   * ThrottlingException
  4279  //
  4280  //   * ConflictException
  4281  //
  4282  // See also, https://docs.aws.amazon.com/goto/WebAPI/nimble-2020-08-01/UpdateLaunchProfile
  4283  func (c *NimbleStudio) UpdateLaunchProfile(input *UpdateLaunchProfileInput) (*UpdateLaunchProfileOutput, error) {
  4284  	req, out := c.UpdateLaunchProfileRequest(input)
  4285  	return out, req.Send()
  4286  }
  4287  
  4288  // UpdateLaunchProfileWithContext is the same as UpdateLaunchProfile with the addition of
  4289  // the ability to pass a context and additional request options.
  4290  //
  4291  // See UpdateLaunchProfile for details on how to use this API operation.
  4292  //
  4293  // The context must be non-nil and will be used for request cancellation. If
  4294  // the context is nil a panic will occur. In the future the SDK may create
  4295  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  4296  // for more information on using Contexts.
  4297  func (c *NimbleStudio) UpdateLaunchProfileWithContext(ctx aws.Context, input *UpdateLaunchProfileInput, opts ...request.Option) (*UpdateLaunchProfileOutput, error) {
  4298  	req, out := c.UpdateLaunchProfileRequest(input)
  4299  	req.SetContext(ctx)
  4300  	req.ApplyOptions(opts...)
  4301  	return out, req.Send()
  4302  }
  4303  
  4304  const opUpdateLaunchProfileMember = "UpdateLaunchProfileMember"
  4305  
  4306  // UpdateLaunchProfileMemberRequest generates a "aws/request.Request" representing the
  4307  // client's request for the UpdateLaunchProfileMember operation. The "output" return
  4308  // value will be populated with the request's response once the request completes
  4309  // successfully.
  4310  //
  4311  // Use "Send" method on the returned Request to send the API call to the service.
  4312  // the "output" return value is not valid until after Send returns without error.
  4313  //
  4314  // See UpdateLaunchProfileMember for more information on using the UpdateLaunchProfileMember
  4315  // API call, and error handling.
  4316  //
  4317  // This method is useful when you want to inject custom logic or configuration
  4318  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  4319  //
  4320  //
  4321  //    // Example sending a request using the UpdateLaunchProfileMemberRequest method.
  4322  //    req, resp := client.UpdateLaunchProfileMemberRequest(params)
  4323  //
  4324  //    err := req.Send()
  4325  //    if err == nil { // resp is now filled
  4326  //        fmt.Println(resp)
  4327  //    }
  4328  //
  4329  // See also, https://docs.aws.amazon.com/goto/WebAPI/nimble-2020-08-01/UpdateLaunchProfileMember
  4330  func (c *NimbleStudio) UpdateLaunchProfileMemberRequest(input *UpdateLaunchProfileMemberInput) (req *request.Request, output *UpdateLaunchProfileMemberOutput) {
  4331  	op := &request.Operation{
  4332  		Name:       opUpdateLaunchProfileMember,
  4333  		HTTPMethod: "PATCH",
  4334  		HTTPPath:   "/2020-08-01/studios/{studioId}/launch-profiles/{launchProfileId}/membership/{principalId}",
  4335  	}
  4336  
  4337  	if input == nil {
  4338  		input = &UpdateLaunchProfileMemberInput{}
  4339  	}
  4340  
  4341  	output = &UpdateLaunchProfileMemberOutput{}
  4342  	req = c.newRequest(op, input, output)
  4343  	return
  4344  }
  4345  
  4346  // UpdateLaunchProfileMember API operation for AmazonNimbleStudio.
  4347  //
  4348  // Update a user persona in launch profile membership.
  4349  //
  4350  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  4351  // with awserr.Error's Code and Message methods to get detailed information about
  4352  // the error.
  4353  //
  4354  // See the AWS API reference guide for AmazonNimbleStudio's
  4355  // API operation UpdateLaunchProfileMember for usage and error information.
  4356  //
  4357  // Returned Error Types:
  4358  //   * ValidationException
  4359  //
  4360  //   * InternalServerErrorException
  4361  //
  4362  //   * ServiceQuotaExceededException
  4363  //
  4364  //   * AccessDeniedException
  4365  //
  4366  //   * ResourceNotFoundException
  4367  //
  4368  //   * ThrottlingException
  4369  //
  4370  //   * ConflictException
  4371  //
  4372  // See also, https://docs.aws.amazon.com/goto/WebAPI/nimble-2020-08-01/UpdateLaunchProfileMember
  4373  func (c *NimbleStudio) UpdateLaunchProfileMember(input *UpdateLaunchProfileMemberInput) (*UpdateLaunchProfileMemberOutput, error) {
  4374  	req, out := c.UpdateLaunchProfileMemberRequest(input)
  4375  	return out, req.Send()
  4376  }
  4377  
  4378  // UpdateLaunchProfileMemberWithContext is the same as UpdateLaunchProfileMember with the addition of
  4379  // the ability to pass a context and additional request options.
  4380  //
  4381  // See UpdateLaunchProfileMember for details on how to use this API operation.
  4382  //
  4383  // The context must be non-nil and will be used for request cancellation. If
  4384  // the context is nil a panic will occur. In the future the SDK may create
  4385  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  4386  // for more information on using Contexts.
  4387  func (c *NimbleStudio) UpdateLaunchProfileMemberWithContext(ctx aws.Context, input *UpdateLaunchProfileMemberInput, opts ...request.Option) (*UpdateLaunchProfileMemberOutput, error) {
  4388  	req, out := c.UpdateLaunchProfileMemberRequest(input)
  4389  	req.SetContext(ctx)
  4390  	req.ApplyOptions(opts...)
  4391  	return out, req.Send()
  4392  }
  4393  
  4394  const opUpdateStreamingImage = "UpdateStreamingImage"
  4395  
  4396  // UpdateStreamingImageRequest generates a "aws/request.Request" representing the
  4397  // client's request for the UpdateStreamingImage operation. The "output" return
  4398  // value will be populated with the request's response once the request completes
  4399  // successfully.
  4400  //
  4401  // Use "Send" method on the returned Request to send the API call to the service.
  4402  // the "output" return value is not valid until after Send returns without error.
  4403  //
  4404  // See UpdateStreamingImage for more information on using the UpdateStreamingImage
  4405  // API call, and error handling.
  4406  //
  4407  // This method is useful when you want to inject custom logic or configuration
  4408  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  4409  //
  4410  //
  4411  //    // Example sending a request using the UpdateStreamingImageRequest method.
  4412  //    req, resp := client.UpdateStreamingImageRequest(params)
  4413  //
  4414  //    err := req.Send()
  4415  //    if err == nil { // resp is now filled
  4416  //        fmt.Println(resp)
  4417  //    }
  4418  //
  4419  // See also, https://docs.aws.amazon.com/goto/WebAPI/nimble-2020-08-01/UpdateStreamingImage
  4420  func (c *NimbleStudio) UpdateStreamingImageRequest(input *UpdateStreamingImageInput) (req *request.Request, output *UpdateStreamingImageOutput) {
  4421  	op := &request.Operation{
  4422  		Name:       opUpdateStreamingImage,
  4423  		HTTPMethod: "PATCH",
  4424  		HTTPPath:   "/2020-08-01/studios/{studioId}/streaming-images/{streamingImageId}",
  4425  	}
  4426  
  4427  	if input == nil {
  4428  		input = &UpdateStreamingImageInput{}
  4429  	}
  4430  
  4431  	output = &UpdateStreamingImageOutput{}
  4432  	req = c.newRequest(op, input, output)
  4433  	return
  4434  }
  4435  
  4436  // UpdateStreamingImage API operation for AmazonNimbleStudio.
  4437  //
  4438  // Update streaming image.
  4439  //
  4440  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  4441  // with awserr.Error's Code and Message methods to get detailed information about
  4442  // the error.
  4443  //
  4444  // See the AWS API reference guide for AmazonNimbleStudio's
  4445  // API operation UpdateStreamingImage for usage and error information.
  4446  //
  4447  // Returned Error Types:
  4448  //   * ValidationException
  4449  //
  4450  //   * InternalServerErrorException
  4451  //
  4452  //   * ServiceQuotaExceededException
  4453  //
  4454  //   * AccessDeniedException
  4455  //
  4456  //   * ResourceNotFoundException
  4457  //
  4458  //   * ThrottlingException
  4459  //
  4460  //   * ConflictException
  4461  //
  4462  // See also, https://docs.aws.amazon.com/goto/WebAPI/nimble-2020-08-01/UpdateStreamingImage
  4463  func (c *NimbleStudio) UpdateStreamingImage(input *UpdateStreamingImageInput) (*UpdateStreamingImageOutput, error) {
  4464  	req, out := c.UpdateStreamingImageRequest(input)
  4465  	return out, req.Send()
  4466  }
  4467  
  4468  // UpdateStreamingImageWithContext is the same as UpdateStreamingImage with the addition of
  4469  // the ability to pass a context and additional request options.
  4470  //
  4471  // See UpdateStreamingImage for details on how to use this API operation.
  4472  //
  4473  // The context must be non-nil and will be used for request cancellation. If
  4474  // the context is nil a panic will occur. In the future the SDK may create
  4475  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  4476  // for more information on using Contexts.
  4477  func (c *NimbleStudio) UpdateStreamingImageWithContext(ctx aws.Context, input *UpdateStreamingImageInput, opts ...request.Option) (*UpdateStreamingImageOutput, error) {
  4478  	req, out := c.UpdateStreamingImageRequest(input)
  4479  	req.SetContext(ctx)
  4480  	req.ApplyOptions(opts...)
  4481  	return out, req.Send()
  4482  }
  4483  
  4484  const opUpdateStudio = "UpdateStudio"
  4485  
  4486  // UpdateStudioRequest generates a "aws/request.Request" representing the
  4487  // client's request for the UpdateStudio operation. The "output" return
  4488  // value will be populated with the request's response once the request completes
  4489  // successfully.
  4490  //
  4491  // Use "Send" method on the returned Request to send the API call to the service.
  4492  // the "output" return value is not valid until after Send returns without error.
  4493  //
  4494  // See UpdateStudio for more information on using the UpdateStudio
  4495  // API call, and error handling.
  4496  //
  4497  // This method is useful when you want to inject custom logic or configuration
  4498  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  4499  //
  4500  //
  4501  //    // Example sending a request using the UpdateStudioRequest method.
  4502  //    req, resp := client.UpdateStudioRequest(params)
  4503  //
  4504  //    err := req.Send()
  4505  //    if err == nil { // resp is now filled
  4506  //        fmt.Println(resp)
  4507  //    }
  4508  //
  4509  // See also, https://docs.aws.amazon.com/goto/WebAPI/nimble-2020-08-01/UpdateStudio
  4510  func (c *NimbleStudio) UpdateStudioRequest(input *UpdateStudioInput) (req *request.Request, output *UpdateStudioOutput) {
  4511  	op := &request.Operation{
  4512  		Name:       opUpdateStudio,
  4513  		HTTPMethod: "PATCH",
  4514  		HTTPPath:   "/2020-08-01/studios/{studioId}",
  4515  	}
  4516  
  4517  	if input == nil {
  4518  		input = &UpdateStudioInput{}
  4519  	}
  4520  
  4521  	output = &UpdateStudioOutput{}
  4522  	req = c.newRequest(op, input, output)
  4523  	return
  4524  }
  4525  
  4526  // UpdateStudio API operation for AmazonNimbleStudio.
  4527  //
  4528  // Update a Studio resource.
  4529  //
  4530  // Currently, this operation only supports updating the displayName of your
  4531  // studio.
  4532  //
  4533  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  4534  // with awserr.Error's Code and Message methods to get detailed information about
  4535  // the error.
  4536  //
  4537  // See the AWS API reference guide for AmazonNimbleStudio's
  4538  // API operation UpdateStudio for usage and error information.
  4539  //
  4540  // Returned Error Types:
  4541  //   * ValidationException
  4542  //
  4543  //   * InternalServerErrorException
  4544  //
  4545  //   * ServiceQuotaExceededException
  4546  //
  4547  //   * AccessDeniedException
  4548  //
  4549  //   * ResourceNotFoundException
  4550  //
  4551  //   * ThrottlingException
  4552  //
  4553  //   * ConflictException
  4554  //
  4555  // See also, https://docs.aws.amazon.com/goto/WebAPI/nimble-2020-08-01/UpdateStudio
  4556  func (c *NimbleStudio) UpdateStudio(input *UpdateStudioInput) (*UpdateStudioOutput, error) {
  4557  	req, out := c.UpdateStudioRequest(input)
  4558  	return out, req.Send()
  4559  }
  4560  
  4561  // UpdateStudioWithContext is the same as UpdateStudio with the addition of
  4562  // the ability to pass a context and additional request options.
  4563  //
  4564  // See UpdateStudio for details on how to use this API operation.
  4565  //
  4566  // The context must be non-nil and will be used for request cancellation. If
  4567  // the context is nil a panic will occur. In the future the SDK may create
  4568  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  4569  // for more information on using Contexts.
  4570  func (c *NimbleStudio) UpdateStudioWithContext(ctx aws.Context, input *UpdateStudioInput, opts ...request.Option) (*UpdateStudioOutput, error) {
  4571  	req, out := c.UpdateStudioRequest(input)
  4572  	req.SetContext(ctx)
  4573  	req.ApplyOptions(opts...)
  4574  	return out, req.Send()
  4575  }
  4576  
  4577  const opUpdateStudioComponent = "UpdateStudioComponent"
  4578  
  4579  // UpdateStudioComponentRequest generates a "aws/request.Request" representing the
  4580  // client's request for the UpdateStudioComponent operation. The "output" return
  4581  // value will be populated with the request's response once the request completes
  4582  // successfully.
  4583  //
  4584  // Use "Send" method on the returned Request to send the API call to the service.
  4585  // the "output" return value is not valid until after Send returns without error.
  4586  //
  4587  // See UpdateStudioComponent for more information on using the UpdateStudioComponent
  4588  // API call, and error handling.
  4589  //
  4590  // This method is useful when you want to inject custom logic or configuration
  4591  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  4592  //
  4593  //
  4594  //    // Example sending a request using the UpdateStudioComponentRequest method.
  4595  //    req, resp := client.UpdateStudioComponentRequest(params)
  4596  //
  4597  //    err := req.Send()
  4598  //    if err == nil { // resp is now filled
  4599  //        fmt.Println(resp)
  4600  //    }
  4601  //
  4602  // See also, https://docs.aws.amazon.com/goto/WebAPI/nimble-2020-08-01/UpdateStudioComponent
  4603  func (c *NimbleStudio) UpdateStudioComponentRequest(input *UpdateStudioComponentInput) (req *request.Request, output *UpdateStudioComponentOutput) {
  4604  	op := &request.Operation{
  4605  		Name:       opUpdateStudioComponent,
  4606  		HTTPMethod: "PATCH",
  4607  		HTTPPath:   "/2020-08-01/studios/{studioId}/studio-components/{studioComponentId}",
  4608  	}
  4609  
  4610  	if input == nil {
  4611  		input = &UpdateStudioComponentInput{}
  4612  	}
  4613  
  4614  	output = &UpdateStudioComponentOutput{}
  4615  	req = c.newRequest(op, input, output)
  4616  	return
  4617  }
  4618  
  4619  // UpdateStudioComponent API operation for AmazonNimbleStudio.
  4620  //
  4621  // Updates a studio component resource.
  4622  //
  4623  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  4624  // with awserr.Error's Code and Message methods to get detailed information about
  4625  // the error.
  4626  //
  4627  // See the AWS API reference guide for AmazonNimbleStudio's
  4628  // API operation UpdateStudioComponent for usage and error information.
  4629  //
  4630  // Returned Error Types:
  4631  //   * ValidationException
  4632  //
  4633  //   * InternalServerErrorException
  4634  //
  4635  //   * ServiceQuotaExceededException
  4636  //
  4637  //   * AccessDeniedException
  4638  //
  4639  //   * ResourceNotFoundException
  4640  //
  4641  //   * ThrottlingException
  4642  //
  4643  //   * ConflictException
  4644  //
  4645  // See also, https://docs.aws.amazon.com/goto/WebAPI/nimble-2020-08-01/UpdateStudioComponent
  4646  func (c *NimbleStudio) UpdateStudioComponent(input *UpdateStudioComponentInput) (*UpdateStudioComponentOutput, error) {
  4647  	req, out := c.UpdateStudioComponentRequest(input)
  4648  	return out, req.Send()
  4649  }
  4650  
  4651  // UpdateStudioComponentWithContext is the same as UpdateStudioComponent with the addition of
  4652  // the ability to pass a context and additional request options.
  4653  //
  4654  // See UpdateStudioComponent for details on how to use this API operation.
  4655  //
  4656  // The context must be non-nil and will be used for request cancellation. If
  4657  // the context is nil a panic will occur. In the future the SDK may create
  4658  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  4659  // for more information on using Contexts.
  4660  func (c *NimbleStudio) UpdateStudioComponentWithContext(ctx aws.Context, input *UpdateStudioComponentInput, opts ...request.Option) (*UpdateStudioComponentOutput, error) {
  4661  	req, out := c.UpdateStudioComponentRequest(input)
  4662  	req.SetContext(ctx)
  4663  	req.ApplyOptions(opts...)
  4664  	return out, req.Send()
  4665  }
  4666  
  4667  type AcceptEulasInput struct {
  4668  	_ struct{} `type:"structure"`
  4669  
  4670  	ClientToken *string `location:"header" locationName:"X-Amz-Client-Token" min:"1" type:"string" idempotencyToken:"true"`
  4671  
  4672  	EulaIds []*string `locationName:"eulaIds" type:"list"`
  4673  
  4674  	// StudioId is a required field
  4675  	StudioId *string `location:"uri" locationName:"studioId" type:"string" required:"true"`
  4676  }
  4677  
  4678  // String returns the string representation.
  4679  //
  4680  // API parameter values that are decorated as "sensitive" in the API will not
  4681  // be included in the string output. The member name will be present, but the
  4682  // value will be replaced with "sensitive".
  4683  func (s AcceptEulasInput) String() string {
  4684  	return awsutil.Prettify(s)
  4685  }
  4686  
  4687  // GoString returns the string representation.
  4688  //
  4689  // API parameter values that are decorated as "sensitive" in the API will not
  4690  // be included in the string output. The member name will be present, but the
  4691  // value will be replaced with "sensitive".
  4692  func (s AcceptEulasInput) GoString() string {
  4693  	return s.String()
  4694  }
  4695  
  4696  // Validate inspects the fields of the type to determine if they are valid.
  4697  func (s *AcceptEulasInput) Validate() error {
  4698  	invalidParams := request.ErrInvalidParams{Context: "AcceptEulasInput"}
  4699  	if s.ClientToken != nil && len(*s.ClientToken) < 1 {
  4700  		invalidParams.Add(request.NewErrParamMinLen("ClientToken", 1))
  4701  	}
  4702  	if s.StudioId == nil {
  4703  		invalidParams.Add(request.NewErrParamRequired("StudioId"))
  4704  	}
  4705  	if s.StudioId != nil && len(*s.StudioId) < 1 {
  4706  		invalidParams.Add(request.NewErrParamMinLen("StudioId", 1))
  4707  	}
  4708  
  4709  	if invalidParams.Len() > 0 {
  4710  		return invalidParams
  4711  	}
  4712  	return nil
  4713  }
  4714  
  4715  // SetClientToken sets the ClientToken field's value.
  4716  func (s *AcceptEulasInput) SetClientToken(v string) *AcceptEulasInput {
  4717  	s.ClientToken = &v
  4718  	return s
  4719  }
  4720  
  4721  // SetEulaIds sets the EulaIds field's value.
  4722  func (s *AcceptEulasInput) SetEulaIds(v []*string) *AcceptEulasInput {
  4723  	s.EulaIds = v
  4724  	return s
  4725  }
  4726  
  4727  // SetStudioId sets the StudioId field's value.
  4728  func (s *AcceptEulasInput) SetStudioId(v string) *AcceptEulasInput {
  4729  	s.StudioId = &v
  4730  	return s
  4731  }
  4732  
  4733  type AcceptEulasOutput struct {
  4734  	_ struct{} `type:"structure"`
  4735  
  4736  	EulaAcceptances []*EulaAcceptance `locationName:"eulaAcceptances" type:"list"`
  4737  }
  4738  
  4739  // String returns the string representation.
  4740  //
  4741  // API parameter values that are decorated as "sensitive" in the API will not
  4742  // be included in the string output. The member name will be present, but the
  4743  // value will be replaced with "sensitive".
  4744  func (s AcceptEulasOutput) String() string {
  4745  	return awsutil.Prettify(s)
  4746  }
  4747  
  4748  // GoString returns the string representation.
  4749  //
  4750  // API parameter values that are decorated as "sensitive" in the API will not
  4751  // be included in the string output. The member name will be present, but the
  4752  // value will be replaced with "sensitive".
  4753  func (s AcceptEulasOutput) GoString() string {
  4754  	return s.String()
  4755  }
  4756  
  4757  // SetEulaAcceptances sets the EulaAcceptances field's value.
  4758  func (s *AcceptEulasOutput) SetEulaAcceptances(v []*EulaAcceptance) *AcceptEulasOutput {
  4759  	s.EulaAcceptances = v
  4760  	return s
  4761  }
  4762  
  4763  type AccessDeniedException struct {
  4764  	_            struct{}                  `type:"structure"`
  4765  	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
  4766  
  4767  	Code_ *string `locationName:"code" type:"string"`
  4768  
  4769  	// ExceptionContext is a set of key-value pairs that provide you with more information
  4770  	// about the error that occurred. For example, when the service returns a 404
  4771  	// ResourceNotFound error, ExceptionContext will contain the key `resourceId`
  4772  	// with the value of resource that was not found.
  4773  	//
  4774  	// ExceptionContext enables scripts and other programmatic clients to provide
  4775  	// for better error handling.
  4776  	Context map[string]*string `locationName:"context" type:"map"`
  4777  
  4778  	Message_ *string `locationName:"message" type:"string"`
  4779  }
  4780  
  4781  // String returns the string representation.
  4782  //
  4783  // API parameter values that are decorated as "sensitive" in the API will not
  4784  // be included in the string output. The member name will be present, but the
  4785  // value will be replaced with "sensitive".
  4786  func (s AccessDeniedException) String() string {
  4787  	return awsutil.Prettify(s)
  4788  }
  4789  
  4790  // GoString returns the string representation.
  4791  //
  4792  // API parameter values that are decorated as "sensitive" in the API will not
  4793  // be included in the string output. The member name will be present, but the
  4794  // value will be replaced with "sensitive".
  4795  func (s AccessDeniedException) GoString() string {
  4796  	return s.String()
  4797  }
  4798  
  4799  func newErrorAccessDeniedException(v protocol.ResponseMetadata) error {
  4800  	return &AccessDeniedException{
  4801  		RespMetadata: v,
  4802  	}
  4803  }
  4804  
  4805  // Code returns the exception type name.
  4806  func (s *AccessDeniedException) Code() string {
  4807  	return "AccessDeniedException"
  4808  }
  4809  
  4810  // Message returns the exception's message.
  4811  func (s *AccessDeniedException) Message() string {
  4812  	if s.Message_ != nil {
  4813  		return *s.Message_
  4814  	}
  4815  	return ""
  4816  }
  4817  
  4818  // OrigErr always returns nil, satisfies awserr.Error interface.
  4819  func (s *AccessDeniedException) OrigErr() error {
  4820  	return nil
  4821  }
  4822  
  4823  func (s *AccessDeniedException) Error() string {
  4824  	return fmt.Sprintf("%s: %s\n%s", s.Code(), s.Message(), s.String())
  4825  }
  4826  
  4827  // Status code returns the HTTP status code for the request's response error.
  4828  func (s *AccessDeniedException) StatusCode() int {
  4829  	return s.RespMetadata.StatusCode
  4830  }
  4831  
  4832  // RequestID returns the service's response RequestID for request.
  4833  func (s *AccessDeniedException) RequestID() string {
  4834  	return s.RespMetadata.RequestID
  4835  }
  4836  
  4837  // An LDAP attribute of an Active Directory computer account, in the form of
  4838  // a name:value pair.
  4839  type ActiveDirectoryComputerAttribute struct {
  4840  	_ struct{} `type:"structure"`
  4841  
  4842  	// The name for the LDAP attribute.
  4843  	Name *string `locationName:"name" min:"1" type:"string"`
  4844  
  4845  	// The value for the LDAP attribute.
  4846  	Value *string `locationName:"value" min:"1" type:"string"`
  4847  }
  4848  
  4849  // String returns the string representation.
  4850  //
  4851  // API parameter values that are decorated as "sensitive" in the API will not
  4852  // be included in the string output. The member name will be present, but the
  4853  // value will be replaced with "sensitive".
  4854  func (s ActiveDirectoryComputerAttribute) String() string {
  4855  	return awsutil.Prettify(s)
  4856  }
  4857  
  4858  // GoString returns the string representation.
  4859  //
  4860  // API parameter values that are decorated as "sensitive" in the API will not
  4861  // be included in the string output. The member name will be present, but the
  4862  // value will be replaced with "sensitive".
  4863  func (s ActiveDirectoryComputerAttribute) GoString() string {
  4864  	return s.String()
  4865  }
  4866  
  4867  // Validate inspects the fields of the type to determine if they are valid.
  4868  func (s *ActiveDirectoryComputerAttribute) Validate() error {
  4869  	invalidParams := request.ErrInvalidParams{Context: "ActiveDirectoryComputerAttribute"}
  4870  	if s.Name != nil && len(*s.Name) < 1 {
  4871  		invalidParams.Add(request.NewErrParamMinLen("Name", 1))
  4872  	}
  4873  	if s.Value != nil && len(*s.Value) < 1 {
  4874  		invalidParams.Add(request.NewErrParamMinLen("Value", 1))
  4875  	}
  4876  
  4877  	if invalidParams.Len() > 0 {
  4878  		return invalidParams
  4879  	}
  4880  	return nil
  4881  }
  4882  
  4883  // SetName sets the Name field's value.
  4884  func (s *ActiveDirectoryComputerAttribute) SetName(v string) *ActiveDirectoryComputerAttribute {
  4885  	s.Name = &v
  4886  	return s
  4887  }
  4888  
  4889  // SetValue sets the Value field's value.
  4890  func (s *ActiveDirectoryComputerAttribute) SetValue(v string) *ActiveDirectoryComputerAttribute {
  4891  	s.Value = &v
  4892  	return s
  4893  }
  4894  
  4895  // The configuration for a Microsoft Active Directory (Microsoft AD) studio
  4896  // resource.
  4897  type ActiveDirectoryConfiguration struct {
  4898  	_ struct{} `type:"structure"`
  4899  
  4900  	// A collection of LDAP attributes to apply to Active Directory computer accounts
  4901  	// that are created for streaming sessions.
  4902  	ComputerAttributes []*ActiveDirectoryComputerAttribute `locationName:"computerAttributes" type:"list"`
  4903  
  4904  	DirectoryId *string `locationName:"directoryId" type:"string"`
  4905  
  4906  	// The fully-qualified distinguished name of the organizational unit to place
  4907  	// the computer account in.
  4908  	OrganizationalUnitDistinguishedName *string `locationName:"organizationalUnitDistinguishedName" min:"1" type:"string"`
  4909  }
  4910  
  4911  // String returns the string representation.
  4912  //
  4913  // API parameter values that are decorated as "sensitive" in the API will not
  4914  // be included in the string output. The member name will be present, but the
  4915  // value will be replaced with "sensitive".
  4916  func (s ActiveDirectoryConfiguration) String() string {
  4917  	return awsutil.Prettify(s)
  4918  }
  4919  
  4920  // GoString returns the string representation.
  4921  //
  4922  // API parameter values that are decorated as "sensitive" in the API will not
  4923  // be included in the string output. The member name will be present, but the
  4924  // value will be replaced with "sensitive".
  4925  func (s ActiveDirectoryConfiguration) GoString() string {
  4926  	return s.String()
  4927  }
  4928  
  4929  // Validate inspects the fields of the type to determine if they are valid.
  4930  func (s *ActiveDirectoryConfiguration) Validate() error {
  4931  	invalidParams := request.ErrInvalidParams{Context: "ActiveDirectoryConfiguration"}
  4932  	if s.OrganizationalUnitDistinguishedName != nil && len(*s.OrganizationalUnitDistinguishedName) < 1 {
  4933  		invalidParams.Add(request.NewErrParamMinLen("OrganizationalUnitDistinguishedName", 1))
  4934  	}
  4935  	if s.ComputerAttributes != nil {
  4936  		for i, v := range s.ComputerAttributes {
  4937  			if v == nil {
  4938  				continue
  4939  			}
  4940  			if err := v.Validate(); err != nil {
  4941  				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "ComputerAttributes", i), err.(request.ErrInvalidParams))
  4942  			}
  4943  		}
  4944  	}
  4945  
  4946  	if invalidParams.Len() > 0 {
  4947  		return invalidParams
  4948  	}
  4949  	return nil
  4950  }
  4951  
  4952  // SetComputerAttributes sets the ComputerAttributes field's value.
  4953  func (s *ActiveDirectoryConfiguration) SetComputerAttributes(v []*ActiveDirectoryComputerAttribute) *ActiveDirectoryConfiguration {
  4954  	s.ComputerAttributes = v
  4955  	return s
  4956  }
  4957  
  4958  // SetDirectoryId sets the DirectoryId field's value.
  4959  func (s *ActiveDirectoryConfiguration) SetDirectoryId(v string) *ActiveDirectoryConfiguration {
  4960  	s.DirectoryId = &v
  4961  	return s
  4962  }
  4963  
  4964  // SetOrganizationalUnitDistinguishedName sets the OrganizationalUnitDistinguishedName field's value.
  4965  func (s *ActiveDirectoryConfiguration) SetOrganizationalUnitDistinguishedName(v string) *ActiveDirectoryConfiguration {
  4966  	s.OrganizationalUnitDistinguishedName = &v
  4967  	return s
  4968  }
  4969  
  4970  // The configuration for a render farm that is associated with a studio resource.
  4971  type ComputeFarmConfiguration struct {
  4972  	_ struct{} `type:"structure"`
  4973  
  4974  	ActiveDirectoryUser *string `locationName:"activeDirectoryUser" type:"string"`
  4975  
  4976  	Endpoint *string `locationName:"endpoint" type:"string"`
  4977  }
  4978  
  4979  // String returns the string representation.
  4980  //
  4981  // API parameter values that are decorated as "sensitive" in the API will not
  4982  // be included in the string output. The member name will be present, but the
  4983  // value will be replaced with "sensitive".
  4984  func (s ComputeFarmConfiguration) String() string {
  4985  	return awsutil.Prettify(s)
  4986  }
  4987  
  4988  // GoString returns the string representation.
  4989  //
  4990  // API parameter values that are decorated as "sensitive" in the API will not
  4991  // be included in the string output. The member name will be present, but the
  4992  // value will be replaced with "sensitive".
  4993  func (s ComputeFarmConfiguration) GoString() string {
  4994  	return s.String()
  4995  }
  4996  
  4997  // SetActiveDirectoryUser sets the ActiveDirectoryUser field's value.
  4998  func (s *ComputeFarmConfiguration) SetActiveDirectoryUser(v string) *ComputeFarmConfiguration {
  4999  	s.ActiveDirectoryUser = &v
  5000  	return s
  5001  }
  5002  
  5003  // SetEndpoint sets the Endpoint field's value.
  5004  func (s *ComputeFarmConfiguration) SetEndpoint(v string) *ComputeFarmConfiguration {
  5005  	s.Endpoint = &v
  5006  	return s
  5007  }
  5008  
  5009  type ConflictException struct {
  5010  	_            struct{}                  `type:"structure"`
  5011  	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
  5012  
  5013  	Code_ *string `locationName:"code" type:"string"`
  5014  
  5015  	// ExceptionContext is a set of key-value pairs that provide you with more information
  5016  	// about the error that occurred. For example, when the service returns a 404
  5017  	// ResourceNotFound error, ExceptionContext will contain the key `resourceId`
  5018  	// with the value of resource that was not found.
  5019  	//
  5020  	// ExceptionContext enables scripts and other programmatic clients to provide
  5021  	// for better error handling.
  5022  	Context map[string]*string `locationName:"context" type:"map"`
  5023  
  5024  	Message_ *string `locationName:"message" type:"string"`
  5025  }
  5026  
  5027  // String returns the string representation.
  5028  //
  5029  // API parameter values that are decorated as "sensitive" in the API will not
  5030  // be included in the string output. The member name will be present, but the
  5031  // value will be replaced with "sensitive".
  5032  func (s ConflictException) String() string {
  5033  	return awsutil.Prettify(s)
  5034  }
  5035  
  5036  // GoString returns the string representation.
  5037  //
  5038  // API parameter values that are decorated as "sensitive" in the API will not
  5039  // be included in the string output. The member name will be present, but the
  5040  // value will be replaced with "sensitive".
  5041  func (s ConflictException) GoString() string {
  5042  	return s.String()
  5043  }
  5044  
  5045  func newErrorConflictException(v protocol.ResponseMetadata) error {
  5046  	return &ConflictException{
  5047  		RespMetadata: v,
  5048  	}
  5049  }
  5050  
  5051  // Code returns the exception type name.
  5052  func (s *ConflictException) Code() string {
  5053  	return "ConflictException"
  5054  }
  5055  
  5056  // Message returns the exception's message.
  5057  func (s *ConflictException) Message() string {
  5058  	if s.Message_ != nil {
  5059  		return *s.Message_
  5060  	}
  5061  	return ""
  5062  }
  5063  
  5064  // OrigErr always returns nil, satisfies awserr.Error interface.
  5065  func (s *ConflictException) OrigErr() error {
  5066  	return nil
  5067  }
  5068  
  5069  func (s *ConflictException) Error() string {
  5070  	return fmt.Sprintf("%s: %s\n%s", s.Code(), s.Message(), s.String())
  5071  }
  5072  
  5073  // Status code returns the HTTP status code for the request's response error.
  5074  func (s *ConflictException) StatusCode() int {
  5075  	return s.RespMetadata.StatusCode
  5076  }
  5077  
  5078  // RequestID returns the service's response RequestID for request.
  5079  func (s *ConflictException) RequestID() string {
  5080  	return s.RespMetadata.RequestID
  5081  }
  5082  
  5083  type CreateLaunchProfileInput struct {
  5084  	_ struct{} `type:"structure"`
  5085  
  5086  	ClientToken *string `location:"header" locationName:"X-Amz-Client-Token" min:"1" type:"string" idempotencyToken:"true"`
  5087  
  5088  	Description *string `locationName:"description" type:"string"`
  5089  
  5090  	// Ec2SubnetIds is a required field
  5091  	Ec2SubnetIds []*string `locationName:"ec2SubnetIds" type:"list" required:"true"`
  5092  
  5093  	// LaunchProfileProtocolVersions is a required field
  5094  	LaunchProfileProtocolVersions []*string `locationName:"launchProfileProtocolVersions" type:"list" required:"true"`
  5095  
  5096  	// Name is a required field
  5097  	Name *string `locationName:"name" type:"string" required:"true"`
  5098  
  5099  	// StreamConfiguration is a required field
  5100  	StreamConfiguration *StreamConfigurationCreate `locationName:"streamConfiguration" type:"structure" required:"true"`
  5101  
  5102  	// StudioComponentIds is a required field
  5103  	StudioComponentIds []*string `locationName:"studioComponentIds" min:"1" type:"list" required:"true"`
  5104  
  5105  	// StudioId is a required field
  5106  	StudioId *string `location:"uri" locationName:"studioId" type:"string" required:"true"`
  5107  
  5108  	Tags map[string]*string `locationName:"tags" type:"map"`
  5109  }
  5110  
  5111  // String returns the string representation.
  5112  //
  5113  // API parameter values that are decorated as "sensitive" in the API will not
  5114  // be included in the string output. The member name will be present, but the
  5115  // value will be replaced with "sensitive".
  5116  func (s CreateLaunchProfileInput) String() string {
  5117  	return awsutil.Prettify(s)
  5118  }
  5119  
  5120  // GoString returns the string representation.
  5121  //
  5122  // API parameter values that are decorated as "sensitive" in the API will not
  5123  // be included in the string output. The member name will be present, but the
  5124  // value will be replaced with "sensitive".
  5125  func (s CreateLaunchProfileInput) GoString() string {
  5126  	return s.String()
  5127  }
  5128  
  5129  // Validate inspects the fields of the type to determine if they are valid.
  5130  func (s *CreateLaunchProfileInput) Validate() error {
  5131  	invalidParams := request.ErrInvalidParams{Context: "CreateLaunchProfileInput"}
  5132  	if s.ClientToken != nil && len(*s.ClientToken) < 1 {
  5133  		invalidParams.Add(request.NewErrParamMinLen("ClientToken", 1))
  5134  	}
  5135  	if s.Ec2SubnetIds == nil {
  5136  		invalidParams.Add(request.NewErrParamRequired("Ec2SubnetIds"))
  5137  	}
  5138  	if s.LaunchProfileProtocolVersions == nil {
  5139  		invalidParams.Add(request.NewErrParamRequired("LaunchProfileProtocolVersions"))
  5140  	}
  5141  	if s.Name == nil {
  5142  		invalidParams.Add(request.NewErrParamRequired("Name"))
  5143  	}
  5144  	if s.StreamConfiguration == nil {
  5145  		invalidParams.Add(request.NewErrParamRequired("StreamConfiguration"))
  5146  	}
  5147  	if s.StudioComponentIds == nil {
  5148  		invalidParams.Add(request.NewErrParamRequired("StudioComponentIds"))
  5149  	}
  5150  	if s.StudioComponentIds != nil && len(s.StudioComponentIds) < 1 {
  5151  		invalidParams.Add(request.NewErrParamMinLen("StudioComponentIds", 1))
  5152  	}
  5153  	if s.StudioId == nil {
  5154  		invalidParams.Add(request.NewErrParamRequired("StudioId"))
  5155  	}
  5156  	if s.StudioId != nil && len(*s.StudioId) < 1 {
  5157  		invalidParams.Add(request.NewErrParamMinLen("StudioId", 1))
  5158  	}
  5159  	if s.StreamConfiguration != nil {
  5160  		if err := s.StreamConfiguration.Validate(); err != nil {
  5161  			invalidParams.AddNested("StreamConfiguration", err.(request.ErrInvalidParams))
  5162  		}
  5163  	}
  5164  
  5165  	if invalidParams.Len() > 0 {
  5166  		return invalidParams
  5167  	}
  5168  	return nil
  5169  }
  5170  
  5171  // SetClientToken sets the ClientToken field's value.
  5172  func (s *CreateLaunchProfileInput) SetClientToken(v string) *CreateLaunchProfileInput {
  5173  	s.ClientToken = &v
  5174  	return s
  5175  }
  5176  
  5177  // SetDescription sets the Description field's value.
  5178  func (s *CreateLaunchProfileInput) SetDescription(v string) *CreateLaunchProfileInput {
  5179  	s.Description = &v
  5180  	return s
  5181  }
  5182  
  5183  // SetEc2SubnetIds sets the Ec2SubnetIds field's value.
  5184  func (s *CreateLaunchProfileInput) SetEc2SubnetIds(v []*string) *CreateLaunchProfileInput {
  5185  	s.Ec2SubnetIds = v
  5186  	return s
  5187  }
  5188  
  5189  // SetLaunchProfileProtocolVersions sets the LaunchProfileProtocolVersions field's value.
  5190  func (s *CreateLaunchProfileInput) SetLaunchProfileProtocolVersions(v []*string) *CreateLaunchProfileInput {
  5191  	s.LaunchProfileProtocolVersions = v
  5192  	return s
  5193  }
  5194  
  5195  // SetName sets the Name field's value.
  5196  func (s *CreateLaunchProfileInput) SetName(v string) *CreateLaunchProfileInput {
  5197  	s.Name = &v
  5198  	return s
  5199  }
  5200  
  5201  // SetStreamConfiguration sets the StreamConfiguration field's value.
  5202  func (s *CreateLaunchProfileInput) SetStreamConfiguration(v *StreamConfigurationCreate) *CreateLaunchProfileInput {
  5203  	s.StreamConfiguration = v
  5204  	return s
  5205  }
  5206  
  5207  // SetStudioComponentIds sets the StudioComponentIds field's value.
  5208  func (s *CreateLaunchProfileInput) SetStudioComponentIds(v []*string) *CreateLaunchProfileInput {
  5209  	s.StudioComponentIds = v
  5210  	return s
  5211  }
  5212  
  5213  // SetStudioId sets the StudioId field's value.
  5214  func (s *CreateLaunchProfileInput) SetStudioId(v string) *CreateLaunchProfileInput {
  5215  	s.StudioId = &v
  5216  	return s
  5217  }
  5218  
  5219  // SetTags sets the Tags field's value.
  5220  func (s *CreateLaunchProfileInput) SetTags(v map[string]*string) *CreateLaunchProfileInput {
  5221  	s.Tags = v
  5222  	return s
  5223  }
  5224  
  5225  type CreateLaunchProfileOutput struct {
  5226  	_ struct{} `type:"structure"`
  5227  
  5228  	LaunchProfile *LaunchProfile `locationName:"launchProfile" type:"structure"`
  5229  }
  5230  
  5231  // String returns the string representation.
  5232  //
  5233  // API parameter values that are decorated as "sensitive" in the API will not
  5234  // be included in the string output. The member name will be present, but the
  5235  // value will be replaced with "sensitive".
  5236  func (s CreateLaunchProfileOutput) String() string {
  5237  	return awsutil.Prettify(s)
  5238  }
  5239  
  5240  // GoString returns the string representation.
  5241  //
  5242  // API parameter values that are decorated as "sensitive" in the API will not
  5243  // be included in the string output. The member name will be present, but the
  5244  // value will be replaced with "sensitive".
  5245  func (s CreateLaunchProfileOutput) GoString() string {
  5246  	return s.String()
  5247  }
  5248  
  5249  // SetLaunchProfile sets the LaunchProfile field's value.
  5250  func (s *CreateLaunchProfileOutput) SetLaunchProfile(v *LaunchProfile) *CreateLaunchProfileOutput {
  5251  	s.LaunchProfile = v
  5252  	return s
  5253  }
  5254  
  5255  type CreateStreamingImageInput struct {
  5256  	_ struct{} `type:"structure"`
  5257  
  5258  	ClientToken *string `location:"header" locationName:"X-Amz-Client-Token" min:"1" type:"string" idempotencyToken:"true"`
  5259  
  5260  	// The description.
  5261  	Description *string `locationName:"description" type:"string"`
  5262  
  5263  	// Ec2ImageId is a required field
  5264  	Ec2ImageId *string `locationName:"ec2ImageId" type:"string" required:"true"`
  5265  
  5266  	// A friendly name for a streaming image resource.
  5267  	//
  5268  	// Name is a required field
  5269  	Name *string `locationName:"name" type:"string" required:"true"`
  5270  
  5271  	// StudioId is a required field
  5272  	StudioId *string `location:"uri" locationName:"studioId" type:"string" required:"true"`
  5273  
  5274  	Tags map[string]*string `locationName:"tags" type:"map"`
  5275  }
  5276  
  5277  // String returns the string representation.
  5278  //
  5279  // API parameter values that are decorated as "sensitive" in the API will not
  5280  // be included in the string output. The member name will be present, but the
  5281  // value will be replaced with "sensitive".
  5282  func (s CreateStreamingImageInput) String() string {
  5283  	return awsutil.Prettify(s)
  5284  }
  5285  
  5286  // GoString returns the string representation.
  5287  //
  5288  // API parameter values that are decorated as "sensitive" in the API will not
  5289  // be included in the string output. The member name will be present, but the
  5290  // value will be replaced with "sensitive".
  5291  func (s CreateStreamingImageInput) GoString() string {
  5292  	return s.String()
  5293  }
  5294  
  5295  // Validate inspects the fields of the type to determine if they are valid.
  5296  func (s *CreateStreamingImageInput) Validate() error {
  5297  	invalidParams := request.ErrInvalidParams{Context: "CreateStreamingImageInput"}
  5298  	if s.ClientToken != nil && len(*s.ClientToken) < 1 {
  5299  		invalidParams.Add(request.NewErrParamMinLen("ClientToken", 1))
  5300  	}
  5301  	if s.Ec2ImageId == nil {
  5302  		invalidParams.Add(request.NewErrParamRequired("Ec2ImageId"))
  5303  	}
  5304  	if s.Name == nil {
  5305  		invalidParams.Add(request.NewErrParamRequired("Name"))
  5306  	}
  5307  	if s.StudioId == nil {
  5308  		invalidParams.Add(request.NewErrParamRequired("StudioId"))
  5309  	}
  5310  	if s.StudioId != nil && len(*s.StudioId) < 1 {
  5311  		invalidParams.Add(request.NewErrParamMinLen("StudioId", 1))
  5312  	}
  5313  
  5314  	if invalidParams.Len() > 0 {
  5315  		return invalidParams
  5316  	}
  5317  	return nil
  5318  }
  5319  
  5320  // SetClientToken sets the ClientToken field's value.
  5321  func (s *CreateStreamingImageInput) SetClientToken(v string) *CreateStreamingImageInput {
  5322  	s.ClientToken = &v
  5323  	return s
  5324  }
  5325  
  5326  // SetDescription sets the Description field's value.
  5327  func (s *CreateStreamingImageInput) SetDescription(v string) *CreateStreamingImageInput {
  5328  	s.Description = &v
  5329  	return s
  5330  }
  5331  
  5332  // SetEc2ImageId sets the Ec2ImageId field's value.
  5333  func (s *CreateStreamingImageInput) SetEc2ImageId(v string) *CreateStreamingImageInput {
  5334  	s.Ec2ImageId = &v
  5335  	return s
  5336  }
  5337  
  5338  // SetName sets the Name field's value.
  5339  func (s *CreateStreamingImageInput) SetName(v string) *CreateStreamingImageInput {
  5340  	s.Name = &v
  5341  	return s
  5342  }
  5343  
  5344  // SetStudioId sets the StudioId field's value.
  5345  func (s *CreateStreamingImageInput) SetStudioId(v string) *CreateStreamingImageInput {
  5346  	s.StudioId = &v
  5347  	return s
  5348  }
  5349  
  5350  // SetTags sets the Tags field's value.
  5351  func (s *CreateStreamingImageInput) SetTags(v map[string]*string) *CreateStreamingImageInput {
  5352  	s.Tags = v
  5353  	return s
  5354  }
  5355  
  5356  type CreateStreamingImageOutput struct {
  5357  	_ struct{} `type:"structure"`
  5358  
  5359  	StreamingImage *StreamingImage `locationName:"streamingImage" type:"structure"`
  5360  }
  5361  
  5362  // String returns the string representation.
  5363  //
  5364  // API parameter values that are decorated as "sensitive" in the API will not
  5365  // be included in the string output. The member name will be present, but the
  5366  // value will be replaced with "sensitive".
  5367  func (s CreateStreamingImageOutput) String() string {
  5368  	return awsutil.Prettify(s)
  5369  }
  5370  
  5371  // GoString returns the string representation.
  5372  //
  5373  // API parameter values that are decorated as "sensitive" in the API will not
  5374  // be included in the string output. The member name will be present, but the
  5375  // value will be replaced with "sensitive".
  5376  func (s CreateStreamingImageOutput) GoString() string {
  5377  	return s.String()
  5378  }
  5379  
  5380  // SetStreamingImage sets the StreamingImage field's value.
  5381  func (s *CreateStreamingImageOutput) SetStreamingImage(v *StreamingImage) *CreateStreamingImageOutput {
  5382  	s.StreamingImage = v
  5383  	return s
  5384  }
  5385  
  5386  type CreateStreamingSessionInput struct {
  5387  	_ struct{} `type:"structure"`
  5388  
  5389  	ClientToken *string `location:"header" locationName:"X-Amz-Client-Token" min:"1" type:"string" idempotencyToken:"true"`
  5390  
  5391  	Ec2InstanceType *string `locationName:"ec2InstanceType" type:"string" enum:"StreamingInstanceType"`
  5392  
  5393  	LaunchProfileId *string `locationName:"launchProfileId" type:"string"`
  5394  
  5395  	OwnedBy *string `locationName:"ownedBy" type:"string"`
  5396  
  5397  	StreamingImageId *string `locationName:"streamingImageId" type:"string"`
  5398  
  5399  	// StudioId is a required field
  5400  	StudioId *string `location:"uri" locationName:"studioId" type:"string" required:"true"`
  5401  
  5402  	Tags map[string]*string `locationName:"tags" type:"map"`
  5403  }
  5404  
  5405  // String returns the string representation.
  5406  //
  5407  // API parameter values that are decorated as "sensitive" in the API will not
  5408  // be included in the string output. The member name will be present, but the
  5409  // value will be replaced with "sensitive".
  5410  func (s CreateStreamingSessionInput) String() string {
  5411  	return awsutil.Prettify(s)
  5412  }
  5413  
  5414  // GoString returns the string representation.
  5415  //
  5416  // API parameter values that are decorated as "sensitive" in the API will not
  5417  // be included in the string output. The member name will be present, but the
  5418  // value will be replaced with "sensitive".
  5419  func (s CreateStreamingSessionInput) GoString() string {
  5420  	return s.String()
  5421  }
  5422  
  5423  // Validate inspects the fields of the type to determine if they are valid.
  5424  func (s *CreateStreamingSessionInput) Validate() error {
  5425  	invalidParams := request.ErrInvalidParams{Context: "CreateStreamingSessionInput"}
  5426  	if s.ClientToken != nil && len(*s.ClientToken) < 1 {
  5427  		invalidParams.Add(request.NewErrParamMinLen("ClientToken", 1))
  5428  	}
  5429  	if s.StudioId == nil {
  5430  		invalidParams.Add(request.NewErrParamRequired("StudioId"))
  5431  	}
  5432  	if s.StudioId != nil && len(*s.StudioId) < 1 {
  5433  		invalidParams.Add(request.NewErrParamMinLen("StudioId", 1))
  5434  	}
  5435  
  5436  	if invalidParams.Len() > 0 {
  5437  		return invalidParams
  5438  	}
  5439  	return nil
  5440  }
  5441  
  5442  // SetClientToken sets the ClientToken field's value.
  5443  func (s *CreateStreamingSessionInput) SetClientToken(v string) *CreateStreamingSessionInput {
  5444  	s.ClientToken = &v
  5445  	return s
  5446  }
  5447  
  5448  // SetEc2InstanceType sets the Ec2InstanceType field's value.
  5449  func (s *CreateStreamingSessionInput) SetEc2InstanceType(v string) *CreateStreamingSessionInput {
  5450  	s.Ec2InstanceType = &v
  5451  	return s
  5452  }
  5453  
  5454  // SetLaunchProfileId sets the LaunchProfileId field's value.
  5455  func (s *CreateStreamingSessionInput) SetLaunchProfileId(v string) *CreateStreamingSessionInput {
  5456  	s.LaunchProfileId = &v
  5457  	return s
  5458  }
  5459  
  5460  // SetOwnedBy sets the OwnedBy field's value.
  5461  func (s *CreateStreamingSessionInput) SetOwnedBy(v string) *CreateStreamingSessionInput {
  5462  	s.OwnedBy = &v
  5463  	return s
  5464  }
  5465  
  5466  // SetStreamingImageId sets the StreamingImageId field's value.
  5467  func (s *CreateStreamingSessionInput) SetStreamingImageId(v string) *CreateStreamingSessionInput {
  5468  	s.StreamingImageId = &v
  5469  	return s
  5470  }
  5471  
  5472  // SetStudioId sets the StudioId field's value.
  5473  func (s *CreateStreamingSessionInput) SetStudioId(v string) *CreateStreamingSessionInput {
  5474  	s.StudioId = &v
  5475  	return s
  5476  }
  5477  
  5478  // SetTags sets the Tags field's value.
  5479  func (s *CreateStreamingSessionInput) SetTags(v map[string]*string) *CreateStreamingSessionInput {
  5480  	s.Tags = v
  5481  	return s
  5482  }
  5483  
  5484  type CreateStreamingSessionOutput struct {
  5485  	_ struct{} `type:"structure"`
  5486  
  5487  	Session *StreamingSession `locationName:"session" type:"structure"`
  5488  }
  5489  
  5490  // String returns the string representation.
  5491  //
  5492  // API parameter values that are decorated as "sensitive" in the API will not
  5493  // be included in the string output. The member name will be present, but the
  5494  // value will be replaced with "sensitive".
  5495  func (s CreateStreamingSessionOutput) String() string {
  5496  	return awsutil.Prettify(s)
  5497  }
  5498  
  5499  // GoString returns the string representation.
  5500  //
  5501  // API parameter values that are decorated as "sensitive" in the API will not
  5502  // be included in the string output. The member name will be present, but the
  5503  // value will be replaced with "sensitive".
  5504  func (s CreateStreamingSessionOutput) GoString() string {
  5505  	return s.String()
  5506  }
  5507  
  5508  // SetSession sets the Session field's value.
  5509  func (s *CreateStreamingSessionOutput) SetSession(v *StreamingSession) *CreateStreamingSessionOutput {
  5510  	s.Session = v
  5511  	return s
  5512  }
  5513  
  5514  type CreateStreamingSessionStreamInput struct {
  5515  	_ struct{} `type:"structure"`
  5516  
  5517  	ClientToken *string `location:"header" locationName:"X-Amz-Client-Token" min:"1" type:"string" idempotencyToken:"true"`
  5518  
  5519  	ExpirationInSeconds *int64 `locationName:"expirationInSeconds" min:"60" type:"integer"`
  5520  
  5521  	// SessionId is a required field
  5522  	SessionId *string `location:"uri" locationName:"sessionId" type:"string" required:"true"`
  5523  
  5524  	// StudioId is a required field
  5525  	StudioId *string `location:"uri" locationName:"studioId" type:"string" required:"true"`
  5526  }
  5527  
  5528  // String returns the string representation.
  5529  //
  5530  // API parameter values that are decorated as "sensitive" in the API will not
  5531  // be included in the string output. The member name will be present, but the
  5532  // value will be replaced with "sensitive".
  5533  func (s CreateStreamingSessionStreamInput) String() string {
  5534  	return awsutil.Prettify(s)
  5535  }
  5536  
  5537  // GoString returns the string representation.
  5538  //
  5539  // API parameter values that are decorated as "sensitive" in the API will not
  5540  // be included in the string output. The member name will be present, but the
  5541  // value will be replaced with "sensitive".
  5542  func (s CreateStreamingSessionStreamInput) GoString() string {
  5543  	return s.String()
  5544  }
  5545  
  5546  // Validate inspects the fields of the type to determine if they are valid.
  5547  func (s *CreateStreamingSessionStreamInput) Validate() error {
  5548  	invalidParams := request.ErrInvalidParams{Context: "CreateStreamingSessionStreamInput"}
  5549  	if s.ClientToken != nil && len(*s.ClientToken) < 1 {
  5550  		invalidParams.Add(request.NewErrParamMinLen("ClientToken", 1))
  5551  	}
  5552  	if s.ExpirationInSeconds != nil && *s.ExpirationInSeconds < 60 {
  5553  		invalidParams.Add(request.NewErrParamMinValue("ExpirationInSeconds", 60))
  5554  	}
  5555  	if s.SessionId == nil {
  5556  		invalidParams.Add(request.NewErrParamRequired("SessionId"))
  5557  	}
  5558  	if s.SessionId != nil && len(*s.SessionId) < 1 {
  5559  		invalidParams.Add(request.NewErrParamMinLen("SessionId", 1))
  5560  	}
  5561  	if s.StudioId == nil {
  5562  		invalidParams.Add(request.NewErrParamRequired("StudioId"))
  5563  	}
  5564  	if s.StudioId != nil && len(*s.StudioId) < 1 {
  5565  		invalidParams.Add(request.NewErrParamMinLen("StudioId", 1))
  5566  	}
  5567  
  5568  	if invalidParams.Len() > 0 {
  5569  		return invalidParams
  5570  	}
  5571  	return nil
  5572  }
  5573  
  5574  // SetClientToken sets the ClientToken field's value.
  5575  func (s *CreateStreamingSessionStreamInput) SetClientToken(v string) *CreateStreamingSessionStreamInput {
  5576  	s.ClientToken = &v
  5577  	return s
  5578  }
  5579  
  5580  // SetExpirationInSeconds sets the ExpirationInSeconds field's value.
  5581  func (s *CreateStreamingSessionStreamInput) SetExpirationInSeconds(v int64) *CreateStreamingSessionStreamInput {
  5582  	s.ExpirationInSeconds = &v
  5583  	return s
  5584  }
  5585  
  5586  // SetSessionId sets the SessionId field's value.
  5587  func (s *CreateStreamingSessionStreamInput) SetSessionId(v string) *CreateStreamingSessionStreamInput {
  5588  	s.SessionId = &v
  5589  	return s
  5590  }
  5591  
  5592  // SetStudioId sets the StudioId field's value.
  5593  func (s *CreateStreamingSessionStreamInput) SetStudioId(v string) *CreateStreamingSessionStreamInput {
  5594  	s.StudioId = &v
  5595  	return s
  5596  }
  5597  
  5598  type CreateStreamingSessionStreamOutput struct {
  5599  	_ struct{} `type:"structure"`
  5600  
  5601  	Stream *StreamingSessionStream `locationName:"stream" type:"structure"`
  5602  }
  5603  
  5604  // String returns the string representation.
  5605  //
  5606  // API parameter values that are decorated as "sensitive" in the API will not
  5607  // be included in the string output. The member name will be present, but the
  5608  // value will be replaced with "sensitive".
  5609  func (s CreateStreamingSessionStreamOutput) String() string {
  5610  	return awsutil.Prettify(s)
  5611  }
  5612  
  5613  // GoString returns the string representation.
  5614  //
  5615  // API parameter values that are decorated as "sensitive" in the API will not
  5616  // be included in the string output. The member name will be present, but the
  5617  // value will be replaced with "sensitive".
  5618  func (s CreateStreamingSessionStreamOutput) GoString() string {
  5619  	return s.String()
  5620  }
  5621  
  5622  // SetStream sets the Stream field's value.
  5623  func (s *CreateStreamingSessionStreamOutput) SetStream(v *StreamingSessionStream) *CreateStreamingSessionStreamOutput {
  5624  	s.Stream = v
  5625  	return s
  5626  }
  5627  
  5628  type CreateStudioComponentInput struct {
  5629  	_ struct{} `type:"structure"`
  5630  
  5631  	ClientToken *string `location:"header" locationName:"X-Amz-Client-Token" min:"1" type:"string" idempotencyToken:"true"`
  5632  
  5633  	// The configuration of the studio component, based on component type.
  5634  	Configuration *StudioComponentConfiguration `locationName:"configuration" type:"structure"`
  5635  
  5636  	Description *string `locationName:"description" type:"string"`
  5637  
  5638  	Ec2SecurityGroupIds []*string `locationName:"ec2SecurityGroupIds" min:"1" type:"list"`
  5639  
  5640  	InitializationScripts []*StudioComponentInitializationScript `locationName:"initializationScripts" type:"list"`
  5641  
  5642  	// Name is a required field
  5643  	Name *string `locationName:"name" type:"string" required:"true"`
  5644  
  5645  	ScriptParameters []*ScriptParameterKeyValue `locationName:"scriptParameters" type:"list"`
  5646  
  5647  	// StudioId is a required field
  5648  	StudioId *string `location:"uri" locationName:"studioId" type:"string" required:"true"`
  5649  
  5650  	Subtype *string `locationName:"subtype" type:"string" enum:"StudioComponentSubtype"`
  5651  
  5652  	Tags map[string]*string `locationName:"tags" type:"map"`
  5653  
  5654  	// Type is a required field
  5655  	Type *string `locationName:"type" type:"string" required:"true" enum:"StudioComponentType"`
  5656  }
  5657  
  5658  // String returns the string representation.
  5659  //
  5660  // API parameter values that are decorated as "sensitive" in the API will not
  5661  // be included in the string output. The member name will be present, but the
  5662  // value will be replaced with "sensitive".
  5663  func (s CreateStudioComponentInput) String() string {
  5664  	return awsutil.Prettify(s)
  5665  }
  5666  
  5667  // GoString returns the string representation.
  5668  //
  5669  // API parameter values that are decorated as "sensitive" in the API will not
  5670  // be included in the string output. The member name will be present, but the
  5671  // value will be replaced with "sensitive".
  5672  func (s CreateStudioComponentInput) GoString() string {
  5673  	return s.String()
  5674  }
  5675  
  5676  // Validate inspects the fields of the type to determine if they are valid.
  5677  func (s *CreateStudioComponentInput) Validate() error {
  5678  	invalidParams := request.ErrInvalidParams{Context: "CreateStudioComponentInput"}
  5679  	if s.ClientToken != nil && len(*s.ClientToken) < 1 {
  5680  		invalidParams.Add(request.NewErrParamMinLen("ClientToken", 1))
  5681  	}
  5682  	if s.Ec2SecurityGroupIds != nil && len(s.Ec2SecurityGroupIds) < 1 {
  5683  		invalidParams.Add(request.NewErrParamMinLen("Ec2SecurityGroupIds", 1))
  5684  	}
  5685  	if s.Name == nil {
  5686  		invalidParams.Add(request.NewErrParamRequired("Name"))
  5687  	}
  5688  	if s.StudioId == nil {
  5689  		invalidParams.Add(request.NewErrParamRequired("StudioId"))
  5690  	}
  5691  	if s.StudioId != nil && len(*s.StudioId) < 1 {
  5692  		invalidParams.Add(request.NewErrParamMinLen("StudioId", 1))
  5693  	}
  5694  	if s.Type == nil {
  5695  		invalidParams.Add(request.NewErrParamRequired("Type"))
  5696  	}
  5697  	if s.Configuration != nil {
  5698  		if err := s.Configuration.Validate(); err != nil {
  5699  			invalidParams.AddNested("Configuration", err.(request.ErrInvalidParams))
  5700  		}
  5701  	}
  5702  	if s.InitializationScripts != nil {
  5703  		for i, v := range s.InitializationScripts {
  5704  			if v == nil {
  5705  				continue
  5706  			}
  5707  			if err := v.Validate(); err != nil {
  5708  				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "InitializationScripts", i), err.(request.ErrInvalidParams))
  5709  			}
  5710  		}
  5711  	}
  5712  	if s.ScriptParameters != nil {
  5713  		for i, v := range s.ScriptParameters {
  5714  			if v == nil {
  5715  				continue
  5716  			}
  5717  			if err := v.Validate(); err != nil {
  5718  				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "ScriptParameters", i), err.(request.ErrInvalidParams))
  5719  			}
  5720  		}
  5721  	}
  5722  
  5723  	if invalidParams.Len() > 0 {
  5724  		return invalidParams
  5725  	}
  5726  	return nil
  5727  }
  5728  
  5729  // SetClientToken sets the ClientToken field's value.
  5730  func (s *CreateStudioComponentInput) SetClientToken(v string) *CreateStudioComponentInput {
  5731  	s.ClientToken = &v
  5732  	return s
  5733  }
  5734  
  5735  // SetConfiguration sets the Configuration field's value.
  5736  func (s *CreateStudioComponentInput) SetConfiguration(v *StudioComponentConfiguration) *CreateStudioComponentInput {
  5737  	s.Configuration = v
  5738  	return s
  5739  }
  5740  
  5741  // SetDescription sets the Description field's value.
  5742  func (s *CreateStudioComponentInput) SetDescription(v string) *CreateStudioComponentInput {
  5743  	s.Description = &v
  5744  	return s
  5745  }
  5746  
  5747  // SetEc2SecurityGroupIds sets the Ec2SecurityGroupIds field's value.
  5748  func (s *CreateStudioComponentInput) SetEc2SecurityGroupIds(v []*string) *CreateStudioComponentInput {
  5749  	s.Ec2SecurityGroupIds = v
  5750  	return s
  5751  }
  5752  
  5753  // SetInitializationScripts sets the InitializationScripts field's value.
  5754  func (s *CreateStudioComponentInput) SetInitializationScripts(v []*StudioComponentInitializationScript) *CreateStudioComponentInput {
  5755  	s.InitializationScripts = v
  5756  	return s
  5757  }
  5758  
  5759  // SetName sets the Name field's value.
  5760  func (s *CreateStudioComponentInput) SetName(v string) *CreateStudioComponentInput {
  5761  	s.Name = &v
  5762  	return s
  5763  }
  5764  
  5765  // SetScriptParameters sets the ScriptParameters field's value.
  5766  func (s *CreateStudioComponentInput) SetScriptParameters(v []*ScriptParameterKeyValue) *CreateStudioComponentInput {
  5767  	s.ScriptParameters = v
  5768  	return s
  5769  }
  5770  
  5771  // SetStudioId sets the StudioId field's value.
  5772  func (s *CreateStudioComponentInput) SetStudioId(v string) *CreateStudioComponentInput {
  5773  	s.StudioId = &v
  5774  	return s
  5775  }
  5776  
  5777  // SetSubtype sets the Subtype field's value.
  5778  func (s *CreateStudioComponentInput) SetSubtype(v string) *CreateStudioComponentInput {
  5779  	s.Subtype = &v
  5780  	return s
  5781  }
  5782  
  5783  // SetTags sets the Tags field's value.
  5784  func (s *CreateStudioComponentInput) SetTags(v map[string]*string) *CreateStudioComponentInput {
  5785  	s.Tags = v
  5786  	return s
  5787  }
  5788  
  5789  // SetType sets the Type field's value.
  5790  func (s *CreateStudioComponentInput) SetType(v string) *CreateStudioComponentInput {
  5791  	s.Type = &v
  5792  	return s
  5793  }
  5794  
  5795  type CreateStudioComponentOutput struct {
  5796  	_ struct{} `type:"structure"`
  5797  
  5798  	// A network that is used by a studio’s users and workflows, including render
  5799  	// farm, Active Directory, licensing, and file system.
  5800  	StudioComponent *StudioComponent `locationName:"studioComponent" type:"structure"`
  5801  }
  5802  
  5803  // String returns the string representation.
  5804  //
  5805  // API parameter values that are decorated as "sensitive" in the API will not
  5806  // be included in the string output. The member name will be present, but the
  5807  // value will be replaced with "sensitive".
  5808  func (s CreateStudioComponentOutput) String() string {
  5809  	return awsutil.Prettify(s)
  5810  }
  5811  
  5812  // GoString returns the string representation.
  5813  //
  5814  // API parameter values that are decorated as "sensitive" in the API will not
  5815  // be included in the string output. The member name will be present, but the
  5816  // value will be replaced with "sensitive".
  5817  func (s CreateStudioComponentOutput) GoString() string {
  5818  	return s.String()
  5819  }
  5820  
  5821  // SetStudioComponent sets the StudioComponent field's value.
  5822  func (s *CreateStudioComponentOutput) SetStudioComponent(v *StudioComponent) *CreateStudioComponentOutput {
  5823  	s.StudioComponent = v
  5824  	return s
  5825  }
  5826  
  5827  type CreateStudioInput struct {
  5828  	_ struct{} `type:"structure"`
  5829  
  5830  	// AdminRoleArn is a required field
  5831  	AdminRoleArn *string `locationName:"adminRoleArn" type:"string" required:"true"`
  5832  
  5833  	ClientToken *string `location:"header" locationName:"X-Amz-Client-Token" min:"1" type:"string" idempotencyToken:"true"`
  5834  
  5835  	// DisplayName is a required field
  5836  	DisplayName *string `locationName:"displayName" type:"string" required:"true"`
  5837  
  5838  	// Configuration of the encryption method that is used for the studio.
  5839  	StudioEncryptionConfiguration *StudioEncryptionConfiguration `locationName:"studioEncryptionConfiguration" type:"structure"`
  5840  
  5841  	// StudioName is a required field
  5842  	StudioName *string `locationName:"studioName" min:"3" type:"string" required:"true"`
  5843  
  5844  	Tags map[string]*string `locationName:"tags" type:"map"`
  5845  
  5846  	// UserRoleArn is a required field
  5847  	UserRoleArn *string `locationName:"userRoleArn" type:"string" required:"true"`
  5848  }
  5849  
  5850  // String returns the string representation.
  5851  //
  5852  // API parameter values that are decorated as "sensitive" in the API will not
  5853  // be included in the string output. The member name will be present, but the
  5854  // value will be replaced with "sensitive".
  5855  func (s CreateStudioInput) String() string {
  5856  	return awsutil.Prettify(s)
  5857  }
  5858  
  5859  // GoString returns the string representation.
  5860  //
  5861  // API parameter values that are decorated as "sensitive" in the API will not
  5862  // be included in the string output. The member name will be present, but the
  5863  // value will be replaced with "sensitive".
  5864  func (s CreateStudioInput) GoString() string {
  5865  	return s.String()
  5866  }
  5867  
  5868  // Validate inspects the fields of the type to determine if they are valid.
  5869  func (s *CreateStudioInput) Validate() error {
  5870  	invalidParams := request.ErrInvalidParams{Context: "CreateStudioInput"}
  5871  	if s.AdminRoleArn == nil {
  5872  		invalidParams.Add(request.NewErrParamRequired("AdminRoleArn"))
  5873  	}
  5874  	if s.ClientToken != nil && len(*s.ClientToken) < 1 {
  5875  		invalidParams.Add(request.NewErrParamMinLen("ClientToken", 1))
  5876  	}
  5877  	if s.DisplayName == nil {
  5878  		invalidParams.Add(request.NewErrParamRequired("DisplayName"))
  5879  	}
  5880  	if s.StudioName == nil {
  5881  		invalidParams.Add(request.NewErrParamRequired("StudioName"))
  5882  	}
  5883  	if s.StudioName != nil && len(*s.StudioName) < 3 {
  5884  		invalidParams.Add(request.NewErrParamMinLen("StudioName", 3))
  5885  	}
  5886  	if s.UserRoleArn == nil {
  5887  		invalidParams.Add(request.NewErrParamRequired("UserRoleArn"))
  5888  	}
  5889  	if s.StudioEncryptionConfiguration != nil {
  5890  		if err := s.StudioEncryptionConfiguration.Validate(); err != nil {
  5891  			invalidParams.AddNested("StudioEncryptionConfiguration", err.(request.ErrInvalidParams))
  5892  		}
  5893  	}
  5894  
  5895  	if invalidParams.Len() > 0 {
  5896  		return invalidParams
  5897  	}
  5898  	return nil
  5899  }
  5900  
  5901  // SetAdminRoleArn sets the AdminRoleArn field's value.
  5902  func (s *CreateStudioInput) SetAdminRoleArn(v string) *CreateStudioInput {
  5903  	s.AdminRoleArn = &v
  5904  	return s
  5905  }
  5906  
  5907  // SetClientToken sets the ClientToken field's value.
  5908  func (s *CreateStudioInput) SetClientToken(v string) *CreateStudioInput {
  5909  	s.ClientToken = &v
  5910  	return s
  5911  }
  5912  
  5913  // SetDisplayName sets the DisplayName field's value.
  5914  func (s *CreateStudioInput) SetDisplayName(v string) *CreateStudioInput {
  5915  	s.DisplayName = &v
  5916  	return s
  5917  }
  5918  
  5919  // SetStudioEncryptionConfiguration sets the StudioEncryptionConfiguration field's value.
  5920  func (s *CreateStudioInput) SetStudioEncryptionConfiguration(v *StudioEncryptionConfiguration) *CreateStudioInput {
  5921  	s.StudioEncryptionConfiguration = v
  5922  	return s
  5923  }
  5924  
  5925  // SetStudioName sets the StudioName field's value.
  5926  func (s *CreateStudioInput) SetStudioName(v string) *CreateStudioInput {
  5927  	s.StudioName = &v
  5928  	return s
  5929  }
  5930  
  5931  // SetTags sets the Tags field's value.
  5932  func (s *CreateStudioInput) SetTags(v map[string]*string) *CreateStudioInput {
  5933  	s.Tags = v
  5934  	return s
  5935  }
  5936  
  5937  // SetUserRoleArn sets the UserRoleArn field's value.
  5938  func (s *CreateStudioInput) SetUserRoleArn(v string) *CreateStudioInput {
  5939  	s.UserRoleArn = &v
  5940  	return s
  5941  }
  5942  
  5943  type CreateStudioOutput struct {
  5944  	_ struct{} `type:"structure"`
  5945  
  5946  	Studio *Studio `locationName:"studio" type:"structure"`
  5947  }
  5948  
  5949  // String returns the string representation.
  5950  //
  5951  // API parameter values that are decorated as "sensitive" in the API will not
  5952  // be included in the string output. The member name will be present, but the
  5953  // value will be replaced with "sensitive".
  5954  func (s CreateStudioOutput) String() string {
  5955  	return awsutil.Prettify(s)
  5956  }
  5957  
  5958  // GoString returns the string representation.
  5959  //
  5960  // API parameter values that are decorated as "sensitive" in the API will not
  5961  // be included in the string output. The member name will be present, but the
  5962  // value will be replaced with "sensitive".
  5963  func (s CreateStudioOutput) GoString() string {
  5964  	return s.String()
  5965  }
  5966  
  5967  // SetStudio sets the Studio field's value.
  5968  func (s *CreateStudioOutput) SetStudio(v *Studio) *CreateStudioOutput {
  5969  	s.Studio = v
  5970  	return s
  5971  }
  5972  
  5973  type DeleteLaunchProfileInput struct {
  5974  	_ struct{} `type:"structure" nopayload:"true"`
  5975  
  5976  	ClientToken *string `location:"header" locationName:"X-Amz-Client-Token" min:"1" type:"string" idempotencyToken:"true"`
  5977  
  5978  	// LaunchProfileId is a required field
  5979  	LaunchProfileId *string `location:"uri" locationName:"launchProfileId" type:"string" required:"true"`
  5980  
  5981  	// StudioId is a required field
  5982  	StudioId *string `location:"uri" locationName:"studioId" type:"string" required:"true"`
  5983  }
  5984  
  5985  // String returns the string representation.
  5986  //
  5987  // API parameter values that are decorated as "sensitive" in the API will not
  5988  // be included in the string output. The member name will be present, but the
  5989  // value will be replaced with "sensitive".
  5990  func (s DeleteLaunchProfileInput) String() string {
  5991  	return awsutil.Prettify(s)
  5992  }
  5993  
  5994  // GoString returns the string representation.
  5995  //
  5996  // API parameter values that are decorated as "sensitive" in the API will not
  5997  // be included in the string output. The member name will be present, but the
  5998  // value will be replaced with "sensitive".
  5999  func (s DeleteLaunchProfileInput) GoString() string {
  6000  	return s.String()
  6001  }
  6002  
  6003  // Validate inspects the fields of the type to determine if they are valid.
  6004  func (s *DeleteLaunchProfileInput) Validate() error {
  6005  	invalidParams := request.ErrInvalidParams{Context: "DeleteLaunchProfileInput"}
  6006  	if s.ClientToken != nil && len(*s.ClientToken) < 1 {
  6007  		invalidParams.Add(request.NewErrParamMinLen("ClientToken", 1))
  6008  	}
  6009  	if s.LaunchProfileId == nil {
  6010  		invalidParams.Add(request.NewErrParamRequired("LaunchProfileId"))
  6011  	}
  6012  	if s.LaunchProfileId != nil && len(*s.LaunchProfileId) < 1 {
  6013  		invalidParams.Add(request.NewErrParamMinLen("LaunchProfileId", 1))
  6014  	}
  6015  	if s.StudioId == nil {
  6016  		invalidParams.Add(request.NewErrParamRequired("StudioId"))
  6017  	}
  6018  	if s.StudioId != nil && len(*s.StudioId) < 1 {
  6019  		invalidParams.Add(request.NewErrParamMinLen("StudioId", 1))
  6020  	}
  6021  
  6022  	if invalidParams.Len() > 0 {
  6023  		return invalidParams
  6024  	}
  6025  	return nil
  6026  }
  6027  
  6028  // SetClientToken sets the ClientToken field's value.
  6029  func (s *DeleteLaunchProfileInput) SetClientToken(v string) *DeleteLaunchProfileInput {
  6030  	s.ClientToken = &v
  6031  	return s
  6032  }
  6033  
  6034  // SetLaunchProfileId sets the LaunchProfileId field's value.
  6035  func (s *DeleteLaunchProfileInput) SetLaunchProfileId(v string) *DeleteLaunchProfileInput {
  6036  	s.LaunchProfileId = &v
  6037  	return s
  6038  }
  6039  
  6040  // SetStudioId sets the StudioId field's value.
  6041  func (s *DeleteLaunchProfileInput) SetStudioId(v string) *DeleteLaunchProfileInput {
  6042  	s.StudioId = &v
  6043  	return s
  6044  }
  6045  
  6046  type DeleteLaunchProfileMemberInput struct {
  6047  	_ struct{} `type:"structure" nopayload:"true"`
  6048  
  6049  	ClientToken *string `location:"header" locationName:"X-Amz-Client-Token" min:"1" type:"string" idempotencyToken:"true"`
  6050  
  6051  	// LaunchProfileId is a required field
  6052  	LaunchProfileId *string `location:"uri" locationName:"launchProfileId" type:"string" required:"true"`
  6053  
  6054  	// PrincipalId is a required field
  6055  	PrincipalId *string `location:"uri" locationName:"principalId" type:"string" required:"true"`
  6056  
  6057  	// StudioId is a required field
  6058  	StudioId *string `location:"uri" locationName:"studioId" type:"string" required:"true"`
  6059  }
  6060  
  6061  // String returns the string representation.
  6062  //
  6063  // API parameter values that are decorated as "sensitive" in the API will not
  6064  // be included in the string output. The member name will be present, but the
  6065  // value will be replaced with "sensitive".
  6066  func (s DeleteLaunchProfileMemberInput) String() string {
  6067  	return awsutil.Prettify(s)
  6068  }
  6069  
  6070  // GoString returns the string representation.
  6071  //
  6072  // API parameter values that are decorated as "sensitive" in the API will not
  6073  // be included in the string output. The member name will be present, but the
  6074  // value will be replaced with "sensitive".
  6075  func (s DeleteLaunchProfileMemberInput) GoString() string {
  6076  	return s.String()
  6077  }
  6078  
  6079  // Validate inspects the fields of the type to determine if they are valid.
  6080  func (s *DeleteLaunchProfileMemberInput) Validate() error {
  6081  	invalidParams := request.ErrInvalidParams{Context: "DeleteLaunchProfileMemberInput"}
  6082  	if s.ClientToken != nil && len(*s.ClientToken) < 1 {
  6083  		invalidParams.Add(request.NewErrParamMinLen("ClientToken", 1))
  6084  	}
  6085  	if s.LaunchProfileId == nil {
  6086  		invalidParams.Add(request.NewErrParamRequired("LaunchProfileId"))
  6087  	}
  6088  	if s.LaunchProfileId != nil && len(*s.LaunchProfileId) < 1 {
  6089  		invalidParams.Add(request.NewErrParamMinLen("LaunchProfileId", 1))
  6090  	}
  6091  	if s.PrincipalId == nil {
  6092  		invalidParams.Add(request.NewErrParamRequired("PrincipalId"))
  6093  	}
  6094  	if s.PrincipalId != nil && len(*s.PrincipalId) < 1 {
  6095  		invalidParams.Add(request.NewErrParamMinLen("PrincipalId", 1))
  6096  	}
  6097  	if s.StudioId == nil {
  6098  		invalidParams.Add(request.NewErrParamRequired("StudioId"))
  6099  	}
  6100  	if s.StudioId != nil && len(*s.StudioId) < 1 {
  6101  		invalidParams.Add(request.NewErrParamMinLen("StudioId", 1))
  6102  	}
  6103  
  6104  	if invalidParams.Len() > 0 {
  6105  		return invalidParams
  6106  	}
  6107  	return nil
  6108  }
  6109  
  6110  // SetClientToken sets the ClientToken field's value.
  6111  func (s *DeleteLaunchProfileMemberInput) SetClientToken(v string) *DeleteLaunchProfileMemberInput {
  6112  	s.ClientToken = &v
  6113  	return s
  6114  }
  6115  
  6116  // SetLaunchProfileId sets the LaunchProfileId field's value.
  6117  func (s *DeleteLaunchProfileMemberInput) SetLaunchProfileId(v string) *DeleteLaunchProfileMemberInput {
  6118  	s.LaunchProfileId = &v
  6119  	return s
  6120  }
  6121  
  6122  // SetPrincipalId sets the PrincipalId field's value.
  6123  func (s *DeleteLaunchProfileMemberInput) SetPrincipalId(v string) *DeleteLaunchProfileMemberInput {
  6124  	s.PrincipalId = &v
  6125  	return s
  6126  }
  6127  
  6128  // SetStudioId sets the StudioId field's value.
  6129  func (s *DeleteLaunchProfileMemberInput) SetStudioId(v string) *DeleteLaunchProfileMemberInput {
  6130  	s.StudioId = &v
  6131  	return s
  6132  }
  6133  
  6134  type DeleteLaunchProfileMemberOutput struct {
  6135  	_ struct{} `type:"structure" nopayload:"true"`
  6136  }
  6137  
  6138  // String returns the string representation.
  6139  //
  6140  // API parameter values that are decorated as "sensitive" in the API will not
  6141  // be included in the string output. The member name will be present, but the
  6142  // value will be replaced with "sensitive".
  6143  func (s DeleteLaunchProfileMemberOutput) String() string {
  6144  	return awsutil.Prettify(s)
  6145  }
  6146  
  6147  // GoString returns the string representation.
  6148  //
  6149  // API parameter values that are decorated as "sensitive" in the API will not
  6150  // be included in the string output. The member name will be present, but the
  6151  // value will be replaced with "sensitive".
  6152  func (s DeleteLaunchProfileMemberOutput) GoString() string {
  6153  	return s.String()
  6154  }
  6155  
  6156  type DeleteLaunchProfileOutput struct {
  6157  	_ struct{} `type:"structure"`
  6158  
  6159  	LaunchProfile *LaunchProfile `locationName:"launchProfile" type:"structure"`
  6160  }
  6161  
  6162  // String returns the string representation.
  6163  //
  6164  // API parameter values that are decorated as "sensitive" in the API will not
  6165  // be included in the string output. The member name will be present, but the
  6166  // value will be replaced with "sensitive".
  6167  func (s DeleteLaunchProfileOutput) String() string {
  6168  	return awsutil.Prettify(s)
  6169  }
  6170  
  6171  // GoString returns the string representation.
  6172  //
  6173  // API parameter values that are decorated as "sensitive" in the API will not
  6174  // be included in the string output. The member name will be present, but the
  6175  // value will be replaced with "sensitive".
  6176  func (s DeleteLaunchProfileOutput) GoString() string {
  6177  	return s.String()
  6178  }
  6179  
  6180  // SetLaunchProfile sets the LaunchProfile field's value.
  6181  func (s *DeleteLaunchProfileOutput) SetLaunchProfile(v *LaunchProfile) *DeleteLaunchProfileOutput {
  6182  	s.LaunchProfile = v
  6183  	return s
  6184  }
  6185  
  6186  type DeleteStreamingImageInput struct {
  6187  	_ struct{} `type:"structure" nopayload:"true"`
  6188  
  6189  	ClientToken *string `location:"header" locationName:"X-Amz-Client-Token" min:"1" type:"string" idempotencyToken:"true"`
  6190  
  6191  	// StreamingImageId is a required field
  6192  	StreamingImageId *string `location:"uri" locationName:"streamingImageId" type:"string" required:"true"`
  6193  
  6194  	// StudioId is a required field
  6195  	StudioId *string `location:"uri" locationName:"studioId" type:"string" required:"true"`
  6196  }
  6197  
  6198  // String returns the string representation.
  6199  //
  6200  // API parameter values that are decorated as "sensitive" in the API will not
  6201  // be included in the string output. The member name will be present, but the
  6202  // value will be replaced with "sensitive".
  6203  func (s DeleteStreamingImageInput) String() string {
  6204  	return awsutil.Prettify(s)
  6205  }
  6206  
  6207  // GoString returns the string representation.
  6208  //
  6209  // API parameter values that are decorated as "sensitive" in the API will not
  6210  // be included in the string output. The member name will be present, but the
  6211  // value will be replaced with "sensitive".
  6212  func (s DeleteStreamingImageInput) GoString() string {
  6213  	return s.String()
  6214  }
  6215  
  6216  // Validate inspects the fields of the type to determine if they are valid.
  6217  func (s *DeleteStreamingImageInput) Validate() error {
  6218  	invalidParams := request.ErrInvalidParams{Context: "DeleteStreamingImageInput"}
  6219  	if s.ClientToken != nil && len(*s.ClientToken) < 1 {
  6220  		invalidParams.Add(request.NewErrParamMinLen("ClientToken", 1))
  6221  	}
  6222  	if s.StreamingImageId == nil {
  6223  		invalidParams.Add(request.NewErrParamRequired("StreamingImageId"))
  6224  	}
  6225  	if s.StreamingImageId != nil && len(*s.StreamingImageId) < 1 {
  6226  		invalidParams.Add(request.NewErrParamMinLen("StreamingImageId", 1))
  6227  	}
  6228  	if s.StudioId == nil {
  6229  		invalidParams.Add(request.NewErrParamRequired("StudioId"))
  6230  	}
  6231  	if s.StudioId != nil && len(*s.StudioId) < 1 {
  6232  		invalidParams.Add(request.NewErrParamMinLen("StudioId", 1))
  6233  	}
  6234  
  6235  	if invalidParams.Len() > 0 {
  6236  		return invalidParams
  6237  	}
  6238  	return nil
  6239  }
  6240  
  6241  // SetClientToken sets the ClientToken field's value.
  6242  func (s *DeleteStreamingImageInput) SetClientToken(v string) *DeleteStreamingImageInput {
  6243  	s.ClientToken = &v
  6244  	return s
  6245  }
  6246  
  6247  // SetStreamingImageId sets the StreamingImageId field's value.
  6248  func (s *DeleteStreamingImageInput) SetStreamingImageId(v string) *DeleteStreamingImageInput {
  6249  	s.StreamingImageId = &v
  6250  	return s
  6251  }
  6252  
  6253  // SetStudioId sets the StudioId field's value.
  6254  func (s *DeleteStreamingImageInput) SetStudioId(v string) *DeleteStreamingImageInput {
  6255  	s.StudioId = &v
  6256  	return s
  6257  }
  6258  
  6259  type DeleteStreamingImageOutput struct {
  6260  	_ struct{} `type:"structure"`
  6261  
  6262  	StreamingImage *StreamingImage `locationName:"streamingImage" type:"structure"`
  6263  }
  6264  
  6265  // String returns the string representation.
  6266  //
  6267  // API parameter values that are decorated as "sensitive" in the API will not
  6268  // be included in the string output. The member name will be present, but the
  6269  // value will be replaced with "sensitive".
  6270  func (s DeleteStreamingImageOutput) String() string {
  6271  	return awsutil.Prettify(s)
  6272  }
  6273  
  6274  // GoString returns the string representation.
  6275  //
  6276  // API parameter values that are decorated as "sensitive" in the API will not
  6277  // be included in the string output. The member name will be present, but the
  6278  // value will be replaced with "sensitive".
  6279  func (s DeleteStreamingImageOutput) GoString() string {
  6280  	return s.String()
  6281  }
  6282  
  6283  // SetStreamingImage sets the StreamingImage field's value.
  6284  func (s *DeleteStreamingImageOutput) SetStreamingImage(v *StreamingImage) *DeleteStreamingImageOutput {
  6285  	s.StreamingImage = v
  6286  	return s
  6287  }
  6288  
  6289  type DeleteStreamingSessionInput struct {
  6290  	_ struct{} `type:"structure" nopayload:"true"`
  6291  
  6292  	ClientToken *string `location:"header" locationName:"X-Amz-Client-Token" min:"1" type:"string" idempotencyToken:"true"`
  6293  
  6294  	// SessionId is a required field
  6295  	SessionId *string `location:"uri" locationName:"sessionId" type:"string" required:"true"`
  6296  
  6297  	// StudioId is a required field
  6298  	StudioId *string `location:"uri" locationName:"studioId" type:"string" required:"true"`
  6299  }
  6300  
  6301  // String returns the string representation.
  6302  //
  6303  // API parameter values that are decorated as "sensitive" in the API will not
  6304  // be included in the string output. The member name will be present, but the
  6305  // value will be replaced with "sensitive".
  6306  func (s DeleteStreamingSessionInput) String() string {
  6307  	return awsutil.Prettify(s)
  6308  }
  6309  
  6310  // GoString returns the string representation.
  6311  //
  6312  // API parameter values that are decorated as "sensitive" in the API will not
  6313  // be included in the string output. The member name will be present, but the
  6314  // value will be replaced with "sensitive".
  6315  func (s DeleteStreamingSessionInput) GoString() string {
  6316  	return s.String()
  6317  }
  6318  
  6319  // Validate inspects the fields of the type to determine if they are valid.
  6320  func (s *DeleteStreamingSessionInput) Validate() error {
  6321  	invalidParams := request.ErrInvalidParams{Context: "DeleteStreamingSessionInput"}
  6322  	if s.ClientToken != nil && len(*s.ClientToken) < 1 {
  6323  		invalidParams.Add(request.NewErrParamMinLen("ClientToken", 1))
  6324  	}
  6325  	if s.SessionId == nil {
  6326  		invalidParams.Add(request.NewErrParamRequired("SessionId"))
  6327  	}
  6328  	if s.SessionId != nil && len(*s.SessionId) < 1 {
  6329  		invalidParams.Add(request.NewErrParamMinLen("SessionId", 1))
  6330  	}
  6331  	if s.StudioId == nil {
  6332  		invalidParams.Add(request.NewErrParamRequired("StudioId"))
  6333  	}
  6334  	if s.StudioId != nil && len(*s.StudioId) < 1 {
  6335  		invalidParams.Add(request.NewErrParamMinLen("StudioId", 1))
  6336  	}
  6337  
  6338  	if invalidParams.Len() > 0 {
  6339  		return invalidParams
  6340  	}
  6341  	return nil
  6342  }
  6343  
  6344  // SetClientToken sets the ClientToken field's value.
  6345  func (s *DeleteStreamingSessionInput) SetClientToken(v string) *DeleteStreamingSessionInput {
  6346  	s.ClientToken = &v
  6347  	return s
  6348  }
  6349  
  6350  // SetSessionId sets the SessionId field's value.
  6351  func (s *DeleteStreamingSessionInput) SetSessionId(v string) *DeleteStreamingSessionInput {
  6352  	s.SessionId = &v
  6353  	return s
  6354  }
  6355  
  6356  // SetStudioId sets the StudioId field's value.
  6357  func (s *DeleteStreamingSessionInput) SetStudioId(v string) *DeleteStreamingSessionInput {
  6358  	s.StudioId = &v
  6359  	return s
  6360  }
  6361  
  6362  type DeleteStreamingSessionOutput struct {
  6363  	_ struct{} `type:"structure"`
  6364  
  6365  	Session *StreamingSession `locationName:"session" type:"structure"`
  6366  }
  6367  
  6368  // String returns the string representation.
  6369  //
  6370  // API parameter values that are decorated as "sensitive" in the API will not
  6371  // be included in the string output. The member name will be present, but the
  6372  // value will be replaced with "sensitive".
  6373  func (s DeleteStreamingSessionOutput) String() string {
  6374  	return awsutil.Prettify(s)
  6375  }
  6376  
  6377  // GoString returns the string representation.
  6378  //
  6379  // API parameter values that are decorated as "sensitive" in the API will not
  6380  // be included in the string output. The member name will be present, but the
  6381  // value will be replaced with "sensitive".
  6382  func (s DeleteStreamingSessionOutput) GoString() string {
  6383  	return s.String()
  6384  }
  6385  
  6386  // SetSession sets the Session field's value.
  6387  func (s *DeleteStreamingSessionOutput) SetSession(v *StreamingSession) *DeleteStreamingSessionOutput {
  6388  	s.Session = v
  6389  	return s
  6390  }
  6391  
  6392  type DeleteStudioComponentInput struct {
  6393  	_ struct{} `type:"structure" nopayload:"true"`
  6394  
  6395  	ClientToken *string `location:"header" locationName:"X-Amz-Client-Token" min:"1" type:"string" idempotencyToken:"true"`
  6396  
  6397  	// StudioComponentId is a required field
  6398  	StudioComponentId *string `location:"uri" locationName:"studioComponentId" type:"string" required:"true"`
  6399  
  6400  	// StudioId is a required field
  6401  	StudioId *string `location:"uri" locationName:"studioId" type:"string" required:"true"`
  6402  }
  6403  
  6404  // String returns the string representation.
  6405  //
  6406  // API parameter values that are decorated as "sensitive" in the API will not
  6407  // be included in the string output. The member name will be present, but the
  6408  // value will be replaced with "sensitive".
  6409  func (s DeleteStudioComponentInput) String() string {
  6410  	return awsutil.Prettify(s)
  6411  }
  6412  
  6413  // GoString returns the string representation.
  6414  //
  6415  // API parameter values that are decorated as "sensitive" in the API will not
  6416  // be included in the string output. The member name will be present, but the
  6417  // value will be replaced with "sensitive".
  6418  func (s DeleteStudioComponentInput) GoString() string {
  6419  	return s.String()
  6420  }
  6421  
  6422  // Validate inspects the fields of the type to determine if they are valid.
  6423  func (s *DeleteStudioComponentInput) Validate() error {
  6424  	invalidParams := request.ErrInvalidParams{Context: "DeleteStudioComponentInput"}
  6425  	if s.ClientToken != nil && len(*s.ClientToken) < 1 {
  6426  		invalidParams.Add(request.NewErrParamMinLen("ClientToken", 1))
  6427  	}
  6428  	if s.StudioComponentId == nil {
  6429  		invalidParams.Add(request.NewErrParamRequired("StudioComponentId"))
  6430  	}
  6431  	if s.StudioComponentId != nil && len(*s.StudioComponentId) < 1 {
  6432  		invalidParams.Add(request.NewErrParamMinLen("StudioComponentId", 1))
  6433  	}
  6434  	if s.StudioId == nil {
  6435  		invalidParams.Add(request.NewErrParamRequired("StudioId"))
  6436  	}
  6437  	if s.StudioId != nil && len(*s.StudioId) < 1 {
  6438  		invalidParams.Add(request.NewErrParamMinLen("StudioId", 1))
  6439  	}
  6440  
  6441  	if invalidParams.Len() > 0 {
  6442  		return invalidParams
  6443  	}
  6444  	return nil
  6445  }
  6446  
  6447  // SetClientToken sets the ClientToken field's value.
  6448  func (s *DeleteStudioComponentInput) SetClientToken(v string) *DeleteStudioComponentInput {
  6449  	s.ClientToken = &v
  6450  	return s
  6451  }
  6452  
  6453  // SetStudioComponentId sets the StudioComponentId field's value.
  6454  func (s *DeleteStudioComponentInput) SetStudioComponentId(v string) *DeleteStudioComponentInput {
  6455  	s.StudioComponentId = &v
  6456  	return s
  6457  }
  6458  
  6459  // SetStudioId sets the StudioId field's value.
  6460  func (s *DeleteStudioComponentInput) SetStudioId(v string) *DeleteStudioComponentInput {
  6461  	s.StudioId = &v
  6462  	return s
  6463  }
  6464  
  6465  type DeleteStudioComponentOutput struct {
  6466  	_ struct{} `type:"structure"`
  6467  
  6468  	// A network that is used by a studio’s users and workflows, including render
  6469  	// farm, Active Directory, licensing, and file system.
  6470  	StudioComponent *StudioComponent `locationName:"studioComponent" type:"structure"`
  6471  }
  6472  
  6473  // String returns the string representation.
  6474  //
  6475  // API parameter values that are decorated as "sensitive" in the API will not
  6476  // be included in the string output. The member name will be present, but the
  6477  // value will be replaced with "sensitive".
  6478  func (s DeleteStudioComponentOutput) String() string {
  6479  	return awsutil.Prettify(s)
  6480  }
  6481  
  6482  // GoString returns the string representation.
  6483  //
  6484  // API parameter values that are decorated as "sensitive" in the API will not
  6485  // be included in the string output. The member name will be present, but the
  6486  // value will be replaced with "sensitive".
  6487  func (s DeleteStudioComponentOutput) GoString() string {
  6488  	return s.String()
  6489  }
  6490  
  6491  // SetStudioComponent sets the StudioComponent field's value.
  6492  func (s *DeleteStudioComponentOutput) SetStudioComponent(v *StudioComponent) *DeleteStudioComponentOutput {
  6493  	s.StudioComponent = v
  6494  	return s
  6495  }
  6496  
  6497  type DeleteStudioInput struct {
  6498  	_ struct{} `type:"structure" nopayload:"true"`
  6499  
  6500  	ClientToken *string `location:"header" locationName:"X-Amz-Client-Token" min:"1" type:"string" idempotencyToken:"true"`
  6501  
  6502  	// StudioId is a required field
  6503  	StudioId *string `location:"uri" locationName:"studioId" type:"string" required:"true"`
  6504  }
  6505  
  6506  // String returns the string representation.
  6507  //
  6508  // API parameter values that are decorated as "sensitive" in the API will not
  6509  // be included in the string output. The member name will be present, but the
  6510  // value will be replaced with "sensitive".
  6511  func (s DeleteStudioInput) String() string {
  6512  	return awsutil.Prettify(s)
  6513  }
  6514  
  6515  // GoString returns the string representation.
  6516  //
  6517  // API parameter values that are decorated as "sensitive" in the API will not
  6518  // be included in the string output. The member name will be present, but the
  6519  // value will be replaced with "sensitive".
  6520  func (s DeleteStudioInput) GoString() string {
  6521  	return s.String()
  6522  }
  6523  
  6524  // Validate inspects the fields of the type to determine if they are valid.
  6525  func (s *DeleteStudioInput) Validate() error {
  6526  	invalidParams := request.ErrInvalidParams{Context: "DeleteStudioInput"}
  6527  	if s.ClientToken != nil && len(*s.ClientToken) < 1 {
  6528  		invalidParams.Add(request.NewErrParamMinLen("ClientToken", 1))
  6529  	}
  6530  	if s.StudioId == nil {
  6531  		invalidParams.Add(request.NewErrParamRequired("StudioId"))
  6532  	}
  6533  	if s.StudioId != nil && len(*s.StudioId) < 1 {
  6534  		invalidParams.Add(request.NewErrParamMinLen("StudioId", 1))
  6535  	}
  6536  
  6537  	if invalidParams.Len() > 0 {
  6538  		return invalidParams
  6539  	}
  6540  	return nil
  6541  }
  6542  
  6543  // SetClientToken sets the ClientToken field's value.
  6544  func (s *DeleteStudioInput) SetClientToken(v string) *DeleteStudioInput {
  6545  	s.ClientToken = &v
  6546  	return s
  6547  }
  6548  
  6549  // SetStudioId sets the StudioId field's value.
  6550  func (s *DeleteStudioInput) SetStudioId(v string) *DeleteStudioInput {
  6551  	s.StudioId = &v
  6552  	return s
  6553  }
  6554  
  6555  type DeleteStudioMemberInput struct {
  6556  	_ struct{} `type:"structure" nopayload:"true"`
  6557  
  6558  	ClientToken *string `location:"header" locationName:"X-Amz-Client-Token" min:"1" type:"string" idempotencyToken:"true"`
  6559  
  6560  	// PrincipalId is a required field
  6561  	PrincipalId *string `location:"uri" locationName:"principalId" type:"string" required:"true"`
  6562  
  6563  	// StudioId is a required field
  6564  	StudioId *string `location:"uri" locationName:"studioId" type:"string" required:"true"`
  6565  }
  6566  
  6567  // String returns the string representation.
  6568  //
  6569  // API parameter values that are decorated as "sensitive" in the API will not
  6570  // be included in the string output. The member name will be present, but the
  6571  // value will be replaced with "sensitive".
  6572  func (s DeleteStudioMemberInput) String() string {
  6573  	return awsutil.Prettify(s)
  6574  }
  6575  
  6576  // GoString returns the string representation.
  6577  //
  6578  // API parameter values that are decorated as "sensitive" in the API will not
  6579  // be included in the string output. The member name will be present, but the
  6580  // value will be replaced with "sensitive".
  6581  func (s DeleteStudioMemberInput) GoString() string {
  6582  	return s.String()
  6583  }
  6584  
  6585  // Validate inspects the fields of the type to determine if they are valid.
  6586  func (s *DeleteStudioMemberInput) Validate() error {
  6587  	invalidParams := request.ErrInvalidParams{Context: "DeleteStudioMemberInput"}
  6588  	if s.ClientToken != nil && len(*s.ClientToken) < 1 {
  6589  		invalidParams.Add(request.NewErrParamMinLen("ClientToken", 1))
  6590  	}
  6591  	if s.PrincipalId == nil {
  6592  		invalidParams.Add(request.NewErrParamRequired("PrincipalId"))
  6593  	}
  6594  	if s.PrincipalId != nil && len(*s.PrincipalId) < 1 {
  6595  		invalidParams.Add(request.NewErrParamMinLen("PrincipalId", 1))
  6596  	}
  6597  	if s.StudioId == nil {
  6598  		invalidParams.Add(request.NewErrParamRequired("StudioId"))
  6599  	}
  6600  	if s.StudioId != nil && len(*s.StudioId) < 1 {
  6601  		invalidParams.Add(request.NewErrParamMinLen("StudioId", 1))
  6602  	}
  6603  
  6604  	if invalidParams.Len() > 0 {
  6605  		return invalidParams
  6606  	}
  6607  	return nil
  6608  }
  6609  
  6610  // SetClientToken sets the ClientToken field's value.
  6611  func (s *DeleteStudioMemberInput) SetClientToken(v string) *DeleteStudioMemberInput {
  6612  	s.ClientToken = &v
  6613  	return s
  6614  }
  6615  
  6616  // SetPrincipalId sets the PrincipalId field's value.
  6617  func (s *DeleteStudioMemberInput) SetPrincipalId(v string) *DeleteStudioMemberInput {
  6618  	s.PrincipalId = &v
  6619  	return s
  6620  }
  6621  
  6622  // SetStudioId sets the StudioId field's value.
  6623  func (s *DeleteStudioMemberInput) SetStudioId(v string) *DeleteStudioMemberInput {
  6624  	s.StudioId = &v
  6625  	return s
  6626  }
  6627  
  6628  type DeleteStudioMemberOutput struct {
  6629  	_ struct{} `type:"structure" nopayload:"true"`
  6630  }
  6631  
  6632  // String returns the string representation.
  6633  //
  6634  // API parameter values that are decorated as "sensitive" in the API will not
  6635  // be included in the string output. The member name will be present, but the
  6636  // value will be replaced with "sensitive".
  6637  func (s DeleteStudioMemberOutput) String() string {
  6638  	return awsutil.Prettify(s)
  6639  }
  6640  
  6641  // GoString returns the string representation.
  6642  //
  6643  // API parameter values that are decorated as "sensitive" in the API will not
  6644  // be included in the string output. The member name will be present, but the
  6645  // value will be replaced with "sensitive".
  6646  func (s DeleteStudioMemberOutput) GoString() string {
  6647  	return s.String()
  6648  }
  6649  
  6650  type DeleteStudioOutput struct {
  6651  	_ struct{} `type:"structure"`
  6652  
  6653  	Studio *Studio `locationName:"studio" type:"structure"`
  6654  }
  6655  
  6656  // String returns the string representation.
  6657  //
  6658  // API parameter values that are decorated as "sensitive" in the API will not
  6659  // be included in the string output. The member name will be present, but the
  6660  // value will be replaced with "sensitive".
  6661  func (s DeleteStudioOutput) String() string {
  6662  	return awsutil.Prettify(s)
  6663  }
  6664  
  6665  // GoString returns the string representation.
  6666  //
  6667  // API parameter values that are decorated as "sensitive" in the API will not
  6668  // be included in the string output. The member name will be present, but the
  6669  // value will be replaced with "sensitive".
  6670  func (s DeleteStudioOutput) GoString() string {
  6671  	return s.String()
  6672  }
  6673  
  6674  // SetStudio sets the Studio field's value.
  6675  func (s *DeleteStudioOutput) SetStudio(v *Studio) *DeleteStudioOutput {
  6676  	s.Studio = v
  6677  	return s
  6678  }
  6679  
  6680  // Represents a EULA resource.
  6681  type Eula struct {
  6682  	_ struct{} `type:"structure"`
  6683  
  6684  	Content *string `locationName:"content" type:"string"`
  6685  
  6686  	CreatedAt *time.Time `locationName:"createdAt" type:"timestamp" timestampFormat:"iso8601"`
  6687  
  6688  	// Represents a EULA resource.
  6689  	EulaId *string `locationName:"eulaId" type:"string"`
  6690  
  6691  	Name *string `locationName:"name" type:"string"`
  6692  
  6693  	UpdatedAt *time.Time `locationName:"updatedAt" type:"timestamp" timestampFormat:"iso8601"`
  6694  }
  6695  
  6696  // String returns the string representation.
  6697  //
  6698  // API parameter values that are decorated as "sensitive" in the API will not
  6699  // be included in the string output. The member name will be present, but the
  6700  // value will be replaced with "sensitive".
  6701  func (s Eula) String() string {
  6702  	return awsutil.Prettify(s)
  6703  }
  6704  
  6705  // GoString returns the string representation.
  6706  //
  6707  // API parameter values that are decorated as "sensitive" in the API will not
  6708  // be included in the string output. The member name will be present, but the
  6709  // value will be replaced with "sensitive".
  6710  func (s Eula) GoString() string {
  6711  	return s.String()
  6712  }
  6713  
  6714  // SetContent sets the Content field's value.
  6715  func (s *Eula) SetContent(v string) *Eula {
  6716  	s.Content = &v
  6717  	return s
  6718  }
  6719  
  6720  // SetCreatedAt sets the CreatedAt field's value.
  6721  func (s *Eula) SetCreatedAt(v time.Time) *Eula {
  6722  	s.CreatedAt = &v
  6723  	return s
  6724  }
  6725  
  6726  // SetEulaId sets the EulaId field's value.
  6727  func (s *Eula) SetEulaId(v string) *Eula {
  6728  	s.EulaId = &v
  6729  	return s
  6730  }
  6731  
  6732  // SetName sets the Name field's value.
  6733  func (s *Eula) SetName(v string) *Eula {
  6734  	s.Name = &v
  6735  	return s
  6736  }
  6737  
  6738  // SetUpdatedAt sets the UpdatedAt field's value.
  6739  func (s *Eula) SetUpdatedAt(v time.Time) *Eula {
  6740  	s.UpdatedAt = &v
  6741  	return s
  6742  }
  6743  
  6744  type EulaAcceptance struct {
  6745  	_ struct{} `type:"structure"`
  6746  
  6747  	AcceptedAt *time.Time `locationName:"acceptedAt" type:"timestamp" timestampFormat:"iso8601"`
  6748  
  6749  	AcceptedBy *string `locationName:"acceptedBy" type:"string"`
  6750  
  6751  	AccepteeId *string `locationName:"accepteeId" type:"string"`
  6752  
  6753  	// The EULA acceptance ID.
  6754  	EulaAcceptanceId *string `locationName:"eulaAcceptanceId" type:"string"`
  6755  
  6756  	// Represents a EULA resource.
  6757  	EulaId *string `locationName:"eulaId" type:"string"`
  6758  }
  6759  
  6760  // String returns the string representation.
  6761  //
  6762  // API parameter values that are decorated as "sensitive" in the API will not
  6763  // be included in the string output. The member name will be present, but the
  6764  // value will be replaced with "sensitive".
  6765  func (s EulaAcceptance) String() string {
  6766  	return awsutil.Prettify(s)
  6767  }
  6768  
  6769  // GoString returns the string representation.
  6770  //
  6771  // API parameter values that are decorated as "sensitive" in the API will not
  6772  // be included in the string output. The member name will be present, but the
  6773  // value will be replaced with "sensitive".
  6774  func (s EulaAcceptance) GoString() string {
  6775  	return s.String()
  6776  }
  6777  
  6778  // SetAcceptedAt sets the AcceptedAt field's value.
  6779  func (s *EulaAcceptance) SetAcceptedAt(v time.Time) *EulaAcceptance {
  6780  	s.AcceptedAt = &v
  6781  	return s
  6782  }
  6783  
  6784  // SetAcceptedBy sets the AcceptedBy field's value.
  6785  func (s *EulaAcceptance) SetAcceptedBy(v string) *EulaAcceptance {
  6786  	s.AcceptedBy = &v
  6787  	return s
  6788  }
  6789  
  6790  // SetAccepteeId sets the AccepteeId field's value.
  6791  func (s *EulaAcceptance) SetAccepteeId(v string) *EulaAcceptance {
  6792  	s.AccepteeId = &v
  6793  	return s
  6794  }
  6795  
  6796  // SetEulaAcceptanceId sets the EulaAcceptanceId field's value.
  6797  func (s *EulaAcceptance) SetEulaAcceptanceId(v string) *EulaAcceptance {
  6798  	s.EulaAcceptanceId = &v
  6799  	return s
  6800  }
  6801  
  6802  // SetEulaId sets the EulaId field's value.
  6803  func (s *EulaAcceptance) SetEulaId(v string) *EulaAcceptance {
  6804  	s.EulaId = &v
  6805  	return s
  6806  }
  6807  
  6808  type GetEulaInput struct {
  6809  	_ struct{} `type:"structure" nopayload:"true"`
  6810  
  6811  	// EulaId is a required field
  6812  	EulaId *string `location:"uri" locationName:"eulaId" type:"string" required:"true"`
  6813  }
  6814  
  6815  // String returns the string representation.
  6816  //
  6817  // API parameter values that are decorated as "sensitive" in the API will not
  6818  // be included in the string output. The member name will be present, but the
  6819  // value will be replaced with "sensitive".
  6820  func (s GetEulaInput) String() string {
  6821  	return awsutil.Prettify(s)
  6822  }
  6823  
  6824  // GoString returns the string representation.
  6825  //
  6826  // API parameter values that are decorated as "sensitive" in the API will not
  6827  // be included in the string output. The member name will be present, but the
  6828  // value will be replaced with "sensitive".
  6829  func (s GetEulaInput) GoString() string {
  6830  	return s.String()
  6831  }
  6832  
  6833  // Validate inspects the fields of the type to determine if they are valid.
  6834  func (s *GetEulaInput) Validate() error {
  6835  	invalidParams := request.ErrInvalidParams{Context: "GetEulaInput"}
  6836  	if s.EulaId == nil {
  6837  		invalidParams.Add(request.NewErrParamRequired("EulaId"))
  6838  	}
  6839  	if s.EulaId != nil && len(*s.EulaId) < 1 {
  6840  		invalidParams.Add(request.NewErrParamMinLen("EulaId", 1))
  6841  	}
  6842  
  6843  	if invalidParams.Len() > 0 {
  6844  		return invalidParams
  6845  	}
  6846  	return nil
  6847  }
  6848  
  6849  // SetEulaId sets the EulaId field's value.
  6850  func (s *GetEulaInput) SetEulaId(v string) *GetEulaInput {
  6851  	s.EulaId = &v
  6852  	return s
  6853  }
  6854  
  6855  type GetEulaOutput struct {
  6856  	_ struct{} `type:"structure"`
  6857  
  6858  	// Represents a EULA resource.
  6859  	Eula *Eula `locationName:"eula" type:"structure"`
  6860  }
  6861  
  6862  // String returns the string representation.
  6863  //
  6864  // API parameter values that are decorated as "sensitive" in the API will not
  6865  // be included in the string output. The member name will be present, but the
  6866  // value will be replaced with "sensitive".
  6867  func (s GetEulaOutput) String() string {
  6868  	return awsutil.Prettify(s)
  6869  }
  6870  
  6871  // GoString returns the string representation.
  6872  //
  6873  // API parameter values that are decorated as "sensitive" in the API will not
  6874  // be included in the string output. The member name will be present, but the
  6875  // value will be replaced with "sensitive".
  6876  func (s GetEulaOutput) GoString() string {
  6877  	return s.String()
  6878  }
  6879  
  6880  // SetEula sets the Eula field's value.
  6881  func (s *GetEulaOutput) SetEula(v *Eula) *GetEulaOutput {
  6882  	s.Eula = v
  6883  	return s
  6884  }
  6885  
  6886  type GetLaunchProfileDetailsInput struct {
  6887  	_ struct{} `type:"structure" nopayload:"true"`
  6888  
  6889  	// LaunchProfileId is a required field
  6890  	LaunchProfileId *string `location:"uri" locationName:"launchProfileId" type:"string" required:"true"`
  6891  
  6892  	// StudioId is a required field
  6893  	StudioId *string `location:"uri" locationName:"studioId" type:"string" required:"true"`
  6894  }
  6895  
  6896  // String returns the string representation.
  6897  //
  6898  // API parameter values that are decorated as "sensitive" in the API will not
  6899  // be included in the string output. The member name will be present, but the
  6900  // value will be replaced with "sensitive".
  6901  func (s GetLaunchProfileDetailsInput) String() string {
  6902  	return awsutil.Prettify(s)
  6903  }
  6904  
  6905  // GoString returns the string representation.
  6906  //
  6907  // API parameter values that are decorated as "sensitive" in the API will not
  6908  // be included in the string output. The member name will be present, but the
  6909  // value will be replaced with "sensitive".
  6910  func (s GetLaunchProfileDetailsInput) GoString() string {
  6911  	return s.String()
  6912  }
  6913  
  6914  // Validate inspects the fields of the type to determine if they are valid.
  6915  func (s *GetLaunchProfileDetailsInput) Validate() error {
  6916  	invalidParams := request.ErrInvalidParams{Context: "GetLaunchProfileDetailsInput"}
  6917  	if s.LaunchProfileId == nil {
  6918  		invalidParams.Add(request.NewErrParamRequired("LaunchProfileId"))
  6919  	}
  6920  	if s.LaunchProfileId != nil && len(*s.LaunchProfileId) < 1 {
  6921  		invalidParams.Add(request.NewErrParamMinLen("LaunchProfileId", 1))
  6922  	}
  6923  	if s.StudioId == nil {
  6924  		invalidParams.Add(request.NewErrParamRequired("StudioId"))
  6925  	}
  6926  	if s.StudioId != nil && len(*s.StudioId) < 1 {
  6927  		invalidParams.Add(request.NewErrParamMinLen("StudioId", 1))
  6928  	}
  6929  
  6930  	if invalidParams.Len() > 0 {
  6931  		return invalidParams
  6932  	}
  6933  	return nil
  6934  }
  6935  
  6936  // SetLaunchProfileId sets the LaunchProfileId field's value.
  6937  func (s *GetLaunchProfileDetailsInput) SetLaunchProfileId(v string) *GetLaunchProfileDetailsInput {
  6938  	s.LaunchProfileId = &v
  6939  	return s
  6940  }
  6941  
  6942  // SetStudioId sets the StudioId field's value.
  6943  func (s *GetLaunchProfileDetailsInput) SetStudioId(v string) *GetLaunchProfileDetailsInput {
  6944  	s.StudioId = &v
  6945  	return s
  6946  }
  6947  
  6948  type GetLaunchProfileDetailsOutput struct {
  6949  	_ struct{} `type:"structure"`
  6950  
  6951  	LaunchProfile *LaunchProfile `locationName:"launchProfile" type:"structure"`
  6952  
  6953  	StreamingImages []*StreamingImage `locationName:"streamingImages" type:"list"`
  6954  
  6955  	StudioComponentSummaries []*StudioComponentSummary `locationName:"studioComponentSummaries" type:"list"`
  6956  }
  6957  
  6958  // String returns the string representation.
  6959  //
  6960  // API parameter values that are decorated as "sensitive" in the API will not
  6961  // be included in the string output. The member name will be present, but the
  6962  // value will be replaced with "sensitive".
  6963  func (s GetLaunchProfileDetailsOutput) String() string {
  6964  	return awsutil.Prettify(s)
  6965  }
  6966  
  6967  // GoString returns the string representation.
  6968  //
  6969  // API parameter values that are decorated as "sensitive" in the API will not
  6970  // be included in the string output. The member name will be present, but the
  6971  // value will be replaced with "sensitive".
  6972  func (s GetLaunchProfileDetailsOutput) GoString() string {
  6973  	return s.String()
  6974  }
  6975  
  6976  // SetLaunchProfile sets the LaunchProfile field's value.
  6977  func (s *GetLaunchProfileDetailsOutput) SetLaunchProfile(v *LaunchProfile) *GetLaunchProfileDetailsOutput {
  6978  	s.LaunchProfile = v
  6979  	return s
  6980  }
  6981  
  6982  // SetStreamingImages sets the StreamingImages field's value.
  6983  func (s *GetLaunchProfileDetailsOutput) SetStreamingImages(v []*StreamingImage) *GetLaunchProfileDetailsOutput {
  6984  	s.StreamingImages = v
  6985  	return s
  6986  }
  6987  
  6988  // SetStudioComponentSummaries sets the StudioComponentSummaries field's value.
  6989  func (s *GetLaunchProfileDetailsOutput) SetStudioComponentSummaries(v []*StudioComponentSummary) *GetLaunchProfileDetailsOutput {
  6990  	s.StudioComponentSummaries = v
  6991  	return s
  6992  }
  6993  
  6994  type GetLaunchProfileInitializationInput struct {
  6995  	_ struct{} `type:"structure" nopayload:"true"`
  6996  
  6997  	// LaunchProfileId is a required field
  6998  	LaunchProfileId *string `location:"uri" locationName:"launchProfileId" type:"string" required:"true"`
  6999  
  7000  	// LaunchProfileProtocolVersions is a required field
  7001  	LaunchProfileProtocolVersions []*string `location:"querystring" locationName:"launchProfileProtocolVersions" type:"list" required:"true"`
  7002  
  7003  	// LaunchPurpose is a required field
  7004  	LaunchPurpose *string `location:"querystring" locationName:"launchPurpose" type:"string" required:"true"`
  7005  
  7006  	// Platform is a required field
  7007  	Platform *string `location:"querystring" locationName:"platform" type:"string" required:"true"`
  7008  
  7009  	// StudioId is a required field
  7010  	StudioId *string `location:"uri" locationName:"studioId" type:"string" required:"true"`
  7011  }
  7012  
  7013  // String returns the string representation.
  7014  //
  7015  // API parameter values that are decorated as "sensitive" in the API will not
  7016  // be included in the string output. The member name will be present, but the
  7017  // value will be replaced with "sensitive".
  7018  func (s GetLaunchProfileInitializationInput) String() string {
  7019  	return awsutil.Prettify(s)
  7020  }
  7021  
  7022  // GoString returns the string representation.
  7023  //
  7024  // API parameter values that are decorated as "sensitive" in the API will not
  7025  // be included in the string output. The member name will be present, but the
  7026  // value will be replaced with "sensitive".
  7027  func (s GetLaunchProfileInitializationInput) GoString() string {
  7028  	return s.String()
  7029  }
  7030  
  7031  // Validate inspects the fields of the type to determine if they are valid.
  7032  func (s *GetLaunchProfileInitializationInput) Validate() error {
  7033  	invalidParams := request.ErrInvalidParams{Context: "GetLaunchProfileInitializationInput"}
  7034  	if s.LaunchProfileId == nil {
  7035  		invalidParams.Add(request.NewErrParamRequired("LaunchProfileId"))
  7036  	}
  7037  	if s.LaunchProfileId != nil && len(*s.LaunchProfileId) < 1 {
  7038  		invalidParams.Add(request.NewErrParamMinLen("LaunchProfileId", 1))
  7039  	}
  7040  	if s.LaunchProfileProtocolVersions == nil {
  7041  		invalidParams.Add(request.NewErrParamRequired("LaunchProfileProtocolVersions"))
  7042  	}
  7043  	if s.LaunchPurpose == nil {
  7044  		invalidParams.Add(request.NewErrParamRequired("LaunchPurpose"))
  7045  	}
  7046  	if s.Platform == nil {
  7047  		invalidParams.Add(request.NewErrParamRequired("Platform"))
  7048  	}
  7049  	if s.StudioId == nil {
  7050  		invalidParams.Add(request.NewErrParamRequired("StudioId"))
  7051  	}
  7052  	if s.StudioId != nil && len(*s.StudioId) < 1 {
  7053  		invalidParams.Add(request.NewErrParamMinLen("StudioId", 1))
  7054  	}
  7055  
  7056  	if invalidParams.Len() > 0 {
  7057  		return invalidParams
  7058  	}
  7059  	return nil
  7060  }
  7061  
  7062  // SetLaunchProfileId sets the LaunchProfileId field's value.
  7063  func (s *GetLaunchProfileInitializationInput) SetLaunchProfileId(v string) *GetLaunchProfileInitializationInput {
  7064  	s.LaunchProfileId = &v
  7065  	return s
  7066  }
  7067  
  7068  // SetLaunchProfileProtocolVersions sets the LaunchProfileProtocolVersions field's value.
  7069  func (s *GetLaunchProfileInitializationInput) SetLaunchProfileProtocolVersions(v []*string) *GetLaunchProfileInitializationInput {
  7070  	s.LaunchProfileProtocolVersions = v
  7071  	return s
  7072  }
  7073  
  7074  // SetLaunchPurpose sets the LaunchPurpose field's value.
  7075  func (s *GetLaunchProfileInitializationInput) SetLaunchPurpose(v string) *GetLaunchProfileInitializationInput {
  7076  	s.LaunchPurpose = &v
  7077  	return s
  7078  }
  7079  
  7080  // SetPlatform sets the Platform field's value.
  7081  func (s *GetLaunchProfileInitializationInput) SetPlatform(v string) *GetLaunchProfileInitializationInput {
  7082  	s.Platform = &v
  7083  	return s
  7084  }
  7085  
  7086  // SetStudioId sets the StudioId field's value.
  7087  func (s *GetLaunchProfileInitializationInput) SetStudioId(v string) *GetLaunchProfileInitializationInput {
  7088  	s.StudioId = &v
  7089  	return s
  7090  }
  7091  
  7092  type GetLaunchProfileInitializationOutput struct {
  7093  	_ struct{} `type:"structure"`
  7094  
  7095  	LaunchProfileInitialization *LaunchProfileInitialization `locationName:"launchProfileInitialization" type:"structure"`
  7096  }
  7097  
  7098  // String returns the string representation.
  7099  //
  7100  // API parameter values that are decorated as "sensitive" in the API will not
  7101  // be included in the string output. The member name will be present, but the
  7102  // value will be replaced with "sensitive".
  7103  func (s GetLaunchProfileInitializationOutput) String() string {
  7104  	return awsutil.Prettify(s)
  7105  }
  7106  
  7107  // GoString returns the string representation.
  7108  //
  7109  // API parameter values that are decorated as "sensitive" in the API will not
  7110  // be included in the string output. The member name will be present, but the
  7111  // value will be replaced with "sensitive".
  7112  func (s GetLaunchProfileInitializationOutput) GoString() string {
  7113  	return s.String()
  7114  }
  7115  
  7116  // SetLaunchProfileInitialization sets the LaunchProfileInitialization field's value.
  7117  func (s *GetLaunchProfileInitializationOutput) SetLaunchProfileInitialization(v *LaunchProfileInitialization) *GetLaunchProfileInitializationOutput {
  7118  	s.LaunchProfileInitialization = v
  7119  	return s
  7120  }
  7121  
  7122  type GetLaunchProfileInput struct {
  7123  	_ struct{} `type:"structure" nopayload:"true"`
  7124  
  7125  	// LaunchProfileId is a required field
  7126  	LaunchProfileId *string `location:"uri" locationName:"launchProfileId" type:"string" required:"true"`
  7127  
  7128  	// StudioId is a required field
  7129  	StudioId *string `location:"uri" locationName:"studioId" type:"string" required:"true"`
  7130  }
  7131  
  7132  // String returns the string representation.
  7133  //
  7134  // API parameter values that are decorated as "sensitive" in the API will not
  7135  // be included in the string output. The member name will be present, but the
  7136  // value will be replaced with "sensitive".
  7137  func (s GetLaunchProfileInput) String() string {
  7138  	return awsutil.Prettify(s)
  7139  }
  7140  
  7141  // GoString returns the string representation.
  7142  //
  7143  // API parameter values that are decorated as "sensitive" in the API will not
  7144  // be included in the string output. The member name will be present, but the
  7145  // value will be replaced with "sensitive".
  7146  func (s GetLaunchProfileInput) GoString() string {
  7147  	return s.String()
  7148  }
  7149  
  7150  // Validate inspects the fields of the type to determine if they are valid.
  7151  func (s *GetLaunchProfileInput) Validate() error {
  7152  	invalidParams := request.ErrInvalidParams{Context: "GetLaunchProfileInput"}
  7153  	if s.LaunchProfileId == nil {
  7154  		invalidParams.Add(request.NewErrParamRequired("LaunchProfileId"))
  7155  	}
  7156  	if s.LaunchProfileId != nil && len(*s.LaunchProfileId) < 1 {
  7157  		invalidParams.Add(request.NewErrParamMinLen("LaunchProfileId", 1))
  7158  	}
  7159  	if s.StudioId == nil {
  7160  		invalidParams.Add(request.NewErrParamRequired("StudioId"))
  7161  	}
  7162  	if s.StudioId != nil && len(*s.StudioId) < 1 {
  7163  		invalidParams.Add(request.NewErrParamMinLen("StudioId", 1))
  7164  	}
  7165  
  7166  	if invalidParams.Len() > 0 {
  7167  		return invalidParams
  7168  	}
  7169  	return nil
  7170  }
  7171  
  7172  // SetLaunchProfileId sets the LaunchProfileId field's value.
  7173  func (s *GetLaunchProfileInput) SetLaunchProfileId(v string) *GetLaunchProfileInput {
  7174  	s.LaunchProfileId = &v
  7175  	return s
  7176  }
  7177  
  7178  // SetStudioId sets the StudioId field's value.
  7179  func (s *GetLaunchProfileInput) SetStudioId(v string) *GetLaunchProfileInput {
  7180  	s.StudioId = &v
  7181  	return s
  7182  }
  7183  
  7184  type GetLaunchProfileMemberInput struct {
  7185  	_ struct{} `type:"structure" nopayload:"true"`
  7186  
  7187  	// LaunchProfileId is a required field
  7188  	LaunchProfileId *string `location:"uri" locationName:"launchProfileId" type:"string" required:"true"`
  7189  
  7190  	// PrincipalId is a required field
  7191  	PrincipalId *string `location:"uri" locationName:"principalId" type:"string" required:"true"`
  7192  
  7193  	// StudioId is a required field
  7194  	StudioId *string `location:"uri" locationName:"studioId" type:"string" required:"true"`
  7195  }
  7196  
  7197  // String returns the string representation.
  7198  //
  7199  // API parameter values that are decorated as "sensitive" in the API will not
  7200  // be included in the string output. The member name will be present, but the
  7201  // value will be replaced with "sensitive".
  7202  func (s GetLaunchProfileMemberInput) String() string {
  7203  	return awsutil.Prettify(s)
  7204  }
  7205  
  7206  // GoString returns the string representation.
  7207  //
  7208  // API parameter values that are decorated as "sensitive" in the API will not
  7209  // be included in the string output. The member name will be present, but the
  7210  // value will be replaced with "sensitive".
  7211  func (s GetLaunchProfileMemberInput) GoString() string {
  7212  	return s.String()
  7213  }
  7214  
  7215  // Validate inspects the fields of the type to determine if they are valid.
  7216  func (s *GetLaunchProfileMemberInput) Validate() error {
  7217  	invalidParams := request.ErrInvalidParams{Context: "GetLaunchProfileMemberInput"}
  7218  	if s.LaunchProfileId == nil {
  7219  		invalidParams.Add(request.NewErrParamRequired("LaunchProfileId"))
  7220  	}
  7221  	if s.LaunchProfileId != nil && len(*s.LaunchProfileId) < 1 {
  7222  		invalidParams.Add(request.NewErrParamMinLen("LaunchProfileId", 1))
  7223  	}
  7224  	if s.PrincipalId == nil {
  7225  		invalidParams.Add(request.NewErrParamRequired("PrincipalId"))
  7226  	}
  7227  	if s.PrincipalId != nil && len(*s.PrincipalId) < 1 {
  7228  		invalidParams.Add(request.NewErrParamMinLen("PrincipalId", 1))
  7229  	}
  7230  	if s.StudioId == nil {
  7231  		invalidParams.Add(request.NewErrParamRequired("StudioId"))
  7232  	}
  7233  	if s.StudioId != nil && len(*s.StudioId) < 1 {
  7234  		invalidParams.Add(request.NewErrParamMinLen("StudioId", 1))
  7235  	}
  7236  
  7237  	if invalidParams.Len() > 0 {
  7238  		return invalidParams
  7239  	}
  7240  	return nil
  7241  }
  7242  
  7243  // SetLaunchProfileId sets the LaunchProfileId field's value.
  7244  func (s *GetLaunchProfileMemberInput) SetLaunchProfileId(v string) *GetLaunchProfileMemberInput {
  7245  	s.LaunchProfileId = &v
  7246  	return s
  7247  }
  7248  
  7249  // SetPrincipalId sets the PrincipalId field's value.
  7250  func (s *GetLaunchProfileMemberInput) SetPrincipalId(v string) *GetLaunchProfileMemberInput {
  7251  	s.PrincipalId = &v
  7252  	return s
  7253  }
  7254  
  7255  // SetStudioId sets the StudioId field's value.
  7256  func (s *GetLaunchProfileMemberInput) SetStudioId(v string) *GetLaunchProfileMemberInput {
  7257  	s.StudioId = &v
  7258  	return s
  7259  }
  7260  
  7261  type GetLaunchProfileMemberOutput struct {
  7262  	_ struct{} `type:"structure"`
  7263  
  7264  	Member *LaunchProfileMembership `locationName:"member" type:"structure"`
  7265  }
  7266  
  7267  // String returns the string representation.
  7268  //
  7269  // API parameter values that are decorated as "sensitive" in the API will not
  7270  // be included in the string output. The member name will be present, but the
  7271  // value will be replaced with "sensitive".
  7272  func (s GetLaunchProfileMemberOutput) String() string {
  7273  	return awsutil.Prettify(s)
  7274  }
  7275  
  7276  // GoString returns the string representation.
  7277  //
  7278  // API parameter values that are decorated as "sensitive" in the API will not
  7279  // be included in the string output. The member name will be present, but the
  7280  // value will be replaced with "sensitive".
  7281  func (s GetLaunchProfileMemberOutput) GoString() string {
  7282  	return s.String()
  7283  }
  7284  
  7285  // SetMember sets the Member field's value.
  7286  func (s *GetLaunchProfileMemberOutput) SetMember(v *LaunchProfileMembership) *GetLaunchProfileMemberOutput {
  7287  	s.Member = v
  7288  	return s
  7289  }
  7290  
  7291  type GetLaunchProfileOutput struct {
  7292  	_ struct{} `type:"structure"`
  7293  
  7294  	LaunchProfile *LaunchProfile `locationName:"launchProfile" type:"structure"`
  7295  }
  7296  
  7297  // String returns the string representation.
  7298  //
  7299  // API parameter values that are decorated as "sensitive" in the API will not
  7300  // be included in the string output. The member name will be present, but the
  7301  // value will be replaced with "sensitive".
  7302  func (s GetLaunchProfileOutput) String() string {
  7303  	return awsutil.Prettify(s)
  7304  }
  7305  
  7306  // GoString returns the string representation.
  7307  //
  7308  // API parameter values that are decorated as "sensitive" in the API will not
  7309  // be included in the string output. The member name will be present, but the
  7310  // value will be replaced with "sensitive".
  7311  func (s GetLaunchProfileOutput) GoString() string {
  7312  	return s.String()
  7313  }
  7314  
  7315  // SetLaunchProfile sets the LaunchProfile field's value.
  7316  func (s *GetLaunchProfileOutput) SetLaunchProfile(v *LaunchProfile) *GetLaunchProfileOutput {
  7317  	s.LaunchProfile = v
  7318  	return s
  7319  }
  7320  
  7321  type GetStreamingImageInput struct {
  7322  	_ struct{} `type:"structure" nopayload:"true"`
  7323  
  7324  	// StreamingImageId is a required field
  7325  	StreamingImageId *string `location:"uri" locationName:"streamingImageId" type:"string" required:"true"`
  7326  
  7327  	// StudioId is a required field
  7328  	StudioId *string `location:"uri" locationName:"studioId" type:"string" required:"true"`
  7329  }
  7330  
  7331  // String returns the string representation.
  7332  //
  7333  // API parameter values that are decorated as "sensitive" in the API will not
  7334  // be included in the string output. The member name will be present, but the
  7335  // value will be replaced with "sensitive".
  7336  func (s GetStreamingImageInput) String() string {
  7337  	return awsutil.Prettify(s)
  7338  }
  7339  
  7340  // GoString returns the string representation.
  7341  //
  7342  // API parameter values that are decorated as "sensitive" in the API will not
  7343  // be included in the string output. The member name will be present, but the
  7344  // value will be replaced with "sensitive".
  7345  func (s GetStreamingImageInput) GoString() string {
  7346  	return s.String()
  7347  }
  7348  
  7349  // Validate inspects the fields of the type to determine if they are valid.
  7350  func (s *GetStreamingImageInput) Validate() error {
  7351  	invalidParams := request.ErrInvalidParams{Context: "GetStreamingImageInput"}
  7352  	if s.StreamingImageId == nil {
  7353  		invalidParams.Add(request.NewErrParamRequired("StreamingImageId"))
  7354  	}
  7355  	if s.StreamingImageId != nil && len(*s.StreamingImageId) < 1 {
  7356  		invalidParams.Add(request.NewErrParamMinLen("StreamingImageId", 1))
  7357  	}
  7358  	if s.StudioId == nil {
  7359  		invalidParams.Add(request.NewErrParamRequired("StudioId"))
  7360  	}
  7361  	if s.StudioId != nil && len(*s.StudioId) < 1 {
  7362  		invalidParams.Add(request.NewErrParamMinLen("StudioId", 1))
  7363  	}
  7364  
  7365  	if invalidParams.Len() > 0 {
  7366  		return invalidParams
  7367  	}
  7368  	return nil
  7369  }
  7370  
  7371  // SetStreamingImageId sets the StreamingImageId field's value.
  7372  func (s *GetStreamingImageInput) SetStreamingImageId(v string) *GetStreamingImageInput {
  7373  	s.StreamingImageId = &v
  7374  	return s
  7375  }
  7376  
  7377  // SetStudioId sets the StudioId field's value.
  7378  func (s *GetStreamingImageInput) SetStudioId(v string) *GetStreamingImageInput {
  7379  	s.StudioId = &v
  7380  	return s
  7381  }
  7382  
  7383  type GetStreamingImageOutput struct {
  7384  	_ struct{} `type:"structure"`
  7385  
  7386  	StreamingImage *StreamingImage `locationName:"streamingImage" type:"structure"`
  7387  }
  7388  
  7389  // String returns the string representation.
  7390  //
  7391  // API parameter values that are decorated as "sensitive" in the API will not
  7392  // be included in the string output. The member name will be present, but the
  7393  // value will be replaced with "sensitive".
  7394  func (s GetStreamingImageOutput) String() string {
  7395  	return awsutil.Prettify(s)
  7396  }
  7397  
  7398  // GoString returns the string representation.
  7399  //
  7400  // API parameter values that are decorated as "sensitive" in the API will not
  7401  // be included in the string output. The member name will be present, but the
  7402  // value will be replaced with "sensitive".
  7403  func (s GetStreamingImageOutput) GoString() string {
  7404  	return s.String()
  7405  }
  7406  
  7407  // SetStreamingImage sets the StreamingImage field's value.
  7408  func (s *GetStreamingImageOutput) SetStreamingImage(v *StreamingImage) *GetStreamingImageOutput {
  7409  	s.StreamingImage = v
  7410  	return s
  7411  }
  7412  
  7413  type GetStreamingSessionInput struct {
  7414  	_ struct{} `type:"structure" nopayload:"true"`
  7415  
  7416  	// SessionId is a required field
  7417  	SessionId *string `location:"uri" locationName:"sessionId" type:"string" required:"true"`
  7418  
  7419  	// StudioId is a required field
  7420  	StudioId *string `location:"uri" locationName:"studioId" type:"string" required:"true"`
  7421  }
  7422  
  7423  // String returns the string representation.
  7424  //
  7425  // API parameter values that are decorated as "sensitive" in the API will not
  7426  // be included in the string output. The member name will be present, but the
  7427  // value will be replaced with "sensitive".
  7428  func (s GetStreamingSessionInput) String() string {
  7429  	return awsutil.Prettify(s)
  7430  }
  7431  
  7432  // GoString returns the string representation.
  7433  //
  7434  // API parameter values that are decorated as "sensitive" in the API will not
  7435  // be included in the string output. The member name will be present, but the
  7436  // value will be replaced with "sensitive".
  7437  func (s GetStreamingSessionInput) GoString() string {
  7438  	return s.String()
  7439  }
  7440  
  7441  // Validate inspects the fields of the type to determine if they are valid.
  7442  func (s *GetStreamingSessionInput) Validate() error {
  7443  	invalidParams := request.ErrInvalidParams{Context: "GetStreamingSessionInput"}
  7444  	if s.SessionId == nil {
  7445  		invalidParams.Add(request.NewErrParamRequired("SessionId"))
  7446  	}
  7447  	if s.SessionId != nil && len(*s.SessionId) < 1 {
  7448  		invalidParams.Add(request.NewErrParamMinLen("SessionId", 1))
  7449  	}
  7450  	if s.StudioId == nil {
  7451  		invalidParams.Add(request.NewErrParamRequired("StudioId"))
  7452  	}
  7453  	if s.StudioId != nil && len(*s.StudioId) < 1 {
  7454  		invalidParams.Add(request.NewErrParamMinLen("StudioId", 1))
  7455  	}
  7456  
  7457  	if invalidParams.Len() > 0 {
  7458  		return invalidParams
  7459  	}
  7460  	return nil
  7461  }
  7462  
  7463  // SetSessionId sets the SessionId field's value.
  7464  func (s *GetStreamingSessionInput) SetSessionId(v string) *GetStreamingSessionInput {
  7465  	s.SessionId = &v
  7466  	return s
  7467  }
  7468  
  7469  // SetStudioId sets the StudioId field's value.
  7470  func (s *GetStreamingSessionInput) SetStudioId(v string) *GetStreamingSessionInput {
  7471  	s.StudioId = &v
  7472  	return s
  7473  }
  7474  
  7475  type GetStreamingSessionOutput struct {
  7476  	_ struct{} `type:"structure"`
  7477  
  7478  	Session *StreamingSession `locationName:"session" type:"structure"`
  7479  }
  7480  
  7481  // String returns the string representation.
  7482  //
  7483  // API parameter values that are decorated as "sensitive" in the API will not
  7484  // be included in the string output. The member name will be present, but the
  7485  // value will be replaced with "sensitive".
  7486  func (s GetStreamingSessionOutput) String() string {
  7487  	return awsutil.Prettify(s)
  7488  }
  7489  
  7490  // GoString returns the string representation.
  7491  //
  7492  // API parameter values that are decorated as "sensitive" in the API will not
  7493  // be included in the string output. The member name will be present, but the
  7494  // value will be replaced with "sensitive".
  7495  func (s GetStreamingSessionOutput) GoString() string {
  7496  	return s.String()
  7497  }
  7498  
  7499  // SetSession sets the Session field's value.
  7500  func (s *GetStreamingSessionOutput) SetSession(v *StreamingSession) *GetStreamingSessionOutput {
  7501  	s.Session = v
  7502  	return s
  7503  }
  7504  
  7505  type GetStreamingSessionStreamInput struct {
  7506  	_ struct{} `type:"structure" nopayload:"true"`
  7507  
  7508  	// SessionId is a required field
  7509  	SessionId *string `location:"uri" locationName:"sessionId" type:"string" required:"true"`
  7510  
  7511  	// StreamId is a required field
  7512  	StreamId *string `location:"uri" locationName:"streamId" type:"string" required:"true"`
  7513  
  7514  	// StudioId is a required field
  7515  	StudioId *string `location:"uri" locationName:"studioId" type:"string" required:"true"`
  7516  }
  7517  
  7518  // String returns the string representation.
  7519  //
  7520  // API parameter values that are decorated as "sensitive" in the API will not
  7521  // be included in the string output. The member name will be present, but the
  7522  // value will be replaced with "sensitive".
  7523  func (s GetStreamingSessionStreamInput) String() string {
  7524  	return awsutil.Prettify(s)
  7525  }
  7526  
  7527  // GoString returns the string representation.
  7528  //
  7529  // API parameter values that are decorated as "sensitive" in the API will not
  7530  // be included in the string output. The member name will be present, but the
  7531  // value will be replaced with "sensitive".
  7532  func (s GetStreamingSessionStreamInput) GoString() string {
  7533  	return s.String()
  7534  }
  7535  
  7536  // Validate inspects the fields of the type to determine if they are valid.
  7537  func (s *GetStreamingSessionStreamInput) Validate() error {
  7538  	invalidParams := request.ErrInvalidParams{Context: "GetStreamingSessionStreamInput"}
  7539  	if s.SessionId == nil {
  7540  		invalidParams.Add(request.NewErrParamRequired("SessionId"))
  7541  	}
  7542  	if s.SessionId != nil && len(*s.SessionId) < 1 {
  7543  		invalidParams.Add(request.NewErrParamMinLen("SessionId", 1))
  7544  	}
  7545  	if s.StreamId == nil {
  7546  		invalidParams.Add(request.NewErrParamRequired("StreamId"))
  7547  	}
  7548  	if s.StreamId != nil && len(*s.StreamId) < 1 {
  7549  		invalidParams.Add(request.NewErrParamMinLen("StreamId", 1))
  7550  	}
  7551  	if s.StudioId == nil {
  7552  		invalidParams.Add(request.NewErrParamRequired("StudioId"))
  7553  	}
  7554  	if s.StudioId != nil && len(*s.StudioId) < 1 {
  7555  		invalidParams.Add(request.NewErrParamMinLen("StudioId", 1))
  7556  	}
  7557  
  7558  	if invalidParams.Len() > 0 {
  7559  		return invalidParams
  7560  	}
  7561  	return nil
  7562  }
  7563  
  7564  // SetSessionId sets the SessionId field's value.
  7565  func (s *GetStreamingSessionStreamInput) SetSessionId(v string) *GetStreamingSessionStreamInput {
  7566  	s.SessionId = &v
  7567  	return s
  7568  }
  7569  
  7570  // SetStreamId sets the StreamId field's value.
  7571  func (s *GetStreamingSessionStreamInput) SetStreamId(v string) *GetStreamingSessionStreamInput {
  7572  	s.StreamId = &v
  7573  	return s
  7574  }
  7575  
  7576  // SetStudioId sets the StudioId field's value.
  7577  func (s *GetStreamingSessionStreamInput) SetStudioId(v string) *GetStreamingSessionStreamInput {
  7578  	s.StudioId = &v
  7579  	return s
  7580  }
  7581  
  7582  type GetStreamingSessionStreamOutput struct {
  7583  	_ struct{} `type:"structure"`
  7584  
  7585  	Stream *StreamingSessionStream `locationName:"stream" type:"structure"`
  7586  }
  7587  
  7588  // String returns the string representation.
  7589  //
  7590  // API parameter values that are decorated as "sensitive" in the API will not
  7591  // be included in the string output. The member name will be present, but the
  7592  // value will be replaced with "sensitive".
  7593  func (s GetStreamingSessionStreamOutput) String() string {
  7594  	return awsutil.Prettify(s)
  7595  }
  7596  
  7597  // GoString returns the string representation.
  7598  //
  7599  // API parameter values that are decorated as "sensitive" in the API will not
  7600  // be included in the string output. The member name will be present, but the
  7601  // value will be replaced with "sensitive".
  7602  func (s GetStreamingSessionStreamOutput) GoString() string {
  7603  	return s.String()
  7604  }
  7605  
  7606  // SetStream sets the Stream field's value.
  7607  func (s *GetStreamingSessionStreamOutput) SetStream(v *StreamingSessionStream) *GetStreamingSessionStreamOutput {
  7608  	s.Stream = v
  7609  	return s
  7610  }
  7611  
  7612  type GetStudioComponentInput struct {
  7613  	_ struct{} `type:"structure" nopayload:"true"`
  7614  
  7615  	// StudioComponentId is a required field
  7616  	StudioComponentId *string `location:"uri" locationName:"studioComponentId" type:"string" required:"true"`
  7617  
  7618  	// StudioId is a required field
  7619  	StudioId *string `location:"uri" locationName:"studioId" type:"string" required:"true"`
  7620  }
  7621  
  7622  // String returns the string representation.
  7623  //
  7624  // API parameter values that are decorated as "sensitive" in the API will not
  7625  // be included in the string output. The member name will be present, but the
  7626  // value will be replaced with "sensitive".
  7627  func (s GetStudioComponentInput) String() string {
  7628  	return awsutil.Prettify(s)
  7629  }
  7630  
  7631  // GoString returns the string representation.
  7632  //
  7633  // API parameter values that are decorated as "sensitive" in the API will not
  7634  // be included in the string output. The member name will be present, but the
  7635  // value will be replaced with "sensitive".
  7636  func (s GetStudioComponentInput) GoString() string {
  7637  	return s.String()
  7638  }
  7639  
  7640  // Validate inspects the fields of the type to determine if they are valid.
  7641  func (s *GetStudioComponentInput) Validate() error {
  7642  	invalidParams := request.ErrInvalidParams{Context: "GetStudioComponentInput"}
  7643  	if s.StudioComponentId == nil {
  7644  		invalidParams.Add(request.NewErrParamRequired("StudioComponentId"))
  7645  	}
  7646  	if s.StudioComponentId != nil && len(*s.StudioComponentId) < 1 {
  7647  		invalidParams.Add(request.NewErrParamMinLen("StudioComponentId", 1))
  7648  	}
  7649  	if s.StudioId == nil {
  7650  		invalidParams.Add(request.NewErrParamRequired("StudioId"))
  7651  	}
  7652  	if s.StudioId != nil && len(*s.StudioId) < 1 {
  7653  		invalidParams.Add(request.NewErrParamMinLen("StudioId", 1))
  7654  	}
  7655  
  7656  	if invalidParams.Len() > 0 {
  7657  		return invalidParams
  7658  	}
  7659  	return nil
  7660  }
  7661  
  7662  // SetStudioComponentId sets the StudioComponentId field's value.
  7663  func (s *GetStudioComponentInput) SetStudioComponentId(v string) *GetStudioComponentInput {
  7664  	s.StudioComponentId = &v
  7665  	return s
  7666  }
  7667  
  7668  // SetStudioId sets the StudioId field's value.
  7669  func (s *GetStudioComponentInput) SetStudioId(v string) *GetStudioComponentInput {
  7670  	s.StudioId = &v
  7671  	return s
  7672  }
  7673  
  7674  type GetStudioComponentOutput struct {
  7675  	_ struct{} `type:"structure"`
  7676  
  7677  	// A network that is used by a studio’s users and workflows, including render
  7678  	// farm, Active Directory, licensing, and file system.
  7679  	StudioComponent *StudioComponent `locationName:"studioComponent" type:"structure"`
  7680  }
  7681  
  7682  // String returns the string representation.
  7683  //
  7684  // API parameter values that are decorated as "sensitive" in the API will not
  7685  // be included in the string output. The member name will be present, but the
  7686  // value will be replaced with "sensitive".
  7687  func (s GetStudioComponentOutput) String() string {
  7688  	return awsutil.Prettify(s)
  7689  }
  7690  
  7691  // GoString returns the string representation.
  7692  //
  7693  // API parameter values that are decorated as "sensitive" in the API will not
  7694  // be included in the string output. The member name will be present, but the
  7695  // value will be replaced with "sensitive".
  7696  func (s GetStudioComponentOutput) GoString() string {
  7697  	return s.String()
  7698  }
  7699  
  7700  // SetStudioComponent sets the StudioComponent field's value.
  7701  func (s *GetStudioComponentOutput) SetStudioComponent(v *StudioComponent) *GetStudioComponentOutput {
  7702  	s.StudioComponent = v
  7703  	return s
  7704  }
  7705  
  7706  type GetStudioInput struct {
  7707  	_ struct{} `type:"structure" nopayload:"true"`
  7708  
  7709  	// StudioId is a required field
  7710  	StudioId *string `location:"uri" locationName:"studioId" type:"string" required:"true"`
  7711  }
  7712  
  7713  // String returns the string representation.
  7714  //
  7715  // API parameter values that are decorated as "sensitive" in the API will not
  7716  // be included in the string output. The member name will be present, but the
  7717  // value will be replaced with "sensitive".
  7718  func (s GetStudioInput) String() string {
  7719  	return awsutil.Prettify(s)
  7720  }
  7721  
  7722  // GoString returns the string representation.
  7723  //
  7724  // API parameter values that are decorated as "sensitive" in the API will not
  7725  // be included in the string output. The member name will be present, but the
  7726  // value will be replaced with "sensitive".
  7727  func (s GetStudioInput) GoString() string {
  7728  	return s.String()
  7729  }
  7730  
  7731  // Validate inspects the fields of the type to determine if they are valid.
  7732  func (s *GetStudioInput) Validate() error {
  7733  	invalidParams := request.ErrInvalidParams{Context: "GetStudioInput"}
  7734  	if s.StudioId == nil {
  7735  		invalidParams.Add(request.NewErrParamRequired("StudioId"))
  7736  	}
  7737  	if s.StudioId != nil && len(*s.StudioId) < 1 {
  7738  		invalidParams.Add(request.NewErrParamMinLen("StudioId", 1))
  7739  	}
  7740  
  7741  	if invalidParams.Len() > 0 {
  7742  		return invalidParams
  7743  	}
  7744  	return nil
  7745  }
  7746  
  7747  // SetStudioId sets the StudioId field's value.
  7748  func (s *GetStudioInput) SetStudioId(v string) *GetStudioInput {
  7749  	s.StudioId = &v
  7750  	return s
  7751  }
  7752  
  7753  type GetStudioMemberInput struct {
  7754  	_ struct{} `type:"structure" nopayload:"true"`
  7755  
  7756  	// PrincipalId is a required field
  7757  	PrincipalId *string `location:"uri" locationName:"principalId" type:"string" required:"true"`
  7758  
  7759  	// StudioId is a required field
  7760  	StudioId *string `location:"uri" locationName:"studioId" type:"string" required:"true"`
  7761  }
  7762  
  7763  // String returns the string representation.
  7764  //
  7765  // API parameter values that are decorated as "sensitive" in the API will not
  7766  // be included in the string output. The member name will be present, but the
  7767  // value will be replaced with "sensitive".
  7768  func (s GetStudioMemberInput) String() string {
  7769  	return awsutil.Prettify(s)
  7770  }
  7771  
  7772  // GoString returns the string representation.
  7773  //
  7774  // API parameter values that are decorated as "sensitive" in the API will not
  7775  // be included in the string output. The member name will be present, but the
  7776  // value will be replaced with "sensitive".
  7777  func (s GetStudioMemberInput) GoString() string {
  7778  	return s.String()
  7779  }
  7780  
  7781  // Validate inspects the fields of the type to determine if they are valid.
  7782  func (s *GetStudioMemberInput) Validate() error {
  7783  	invalidParams := request.ErrInvalidParams{Context: "GetStudioMemberInput"}
  7784  	if s.PrincipalId == nil {
  7785  		invalidParams.Add(request.NewErrParamRequired("PrincipalId"))
  7786  	}
  7787  	if s.PrincipalId != nil && len(*s.PrincipalId) < 1 {
  7788  		invalidParams.Add(request.NewErrParamMinLen("PrincipalId", 1))
  7789  	}
  7790  	if s.StudioId == nil {
  7791  		invalidParams.Add(request.NewErrParamRequired("StudioId"))
  7792  	}
  7793  	if s.StudioId != nil && len(*s.StudioId) < 1 {
  7794  		invalidParams.Add(request.NewErrParamMinLen("StudioId", 1))
  7795  	}
  7796  
  7797  	if invalidParams.Len() > 0 {
  7798  		return invalidParams
  7799  	}
  7800  	return nil
  7801  }
  7802  
  7803  // SetPrincipalId sets the PrincipalId field's value.
  7804  func (s *GetStudioMemberInput) SetPrincipalId(v string) *GetStudioMemberInput {
  7805  	s.PrincipalId = &v
  7806  	return s
  7807  }
  7808  
  7809  // SetStudioId sets the StudioId field's value.
  7810  func (s *GetStudioMemberInput) SetStudioId(v string) *GetStudioMemberInput {
  7811  	s.StudioId = &v
  7812  	return s
  7813  }
  7814  
  7815  type GetStudioMemberOutput struct {
  7816  	_ struct{} `type:"structure"`
  7817  
  7818  	Member *StudioMembership `locationName:"member" type:"structure"`
  7819  }
  7820  
  7821  // String returns the string representation.
  7822  //
  7823  // API parameter values that are decorated as "sensitive" in the API will not
  7824  // be included in the string output. The member name will be present, but the
  7825  // value will be replaced with "sensitive".
  7826  func (s GetStudioMemberOutput) String() string {
  7827  	return awsutil.Prettify(s)
  7828  }
  7829  
  7830  // GoString returns the string representation.
  7831  //
  7832  // API parameter values that are decorated as "sensitive" in the API will not
  7833  // be included in the string output. The member name will be present, but the
  7834  // value will be replaced with "sensitive".
  7835  func (s GetStudioMemberOutput) GoString() string {
  7836  	return s.String()
  7837  }
  7838  
  7839  // SetMember sets the Member field's value.
  7840  func (s *GetStudioMemberOutput) SetMember(v *StudioMembership) *GetStudioMemberOutput {
  7841  	s.Member = v
  7842  	return s
  7843  }
  7844  
  7845  type GetStudioOutput struct {
  7846  	_ struct{} `type:"structure"`
  7847  
  7848  	Studio *Studio `locationName:"studio" type:"structure"`
  7849  }
  7850  
  7851  // String returns the string representation.
  7852  //
  7853  // API parameter values that are decorated as "sensitive" in the API will not
  7854  // be included in the string output. The member name will be present, but the
  7855  // value will be replaced with "sensitive".
  7856  func (s GetStudioOutput) String() string {
  7857  	return awsutil.Prettify(s)
  7858  }
  7859  
  7860  // GoString returns the string representation.
  7861  //
  7862  // API parameter values that are decorated as "sensitive" in the API will not
  7863  // be included in the string output. The member name will be present, but the
  7864  // value will be replaced with "sensitive".
  7865  func (s GetStudioOutput) GoString() string {
  7866  	return s.String()
  7867  }
  7868  
  7869  // SetStudio sets the Studio field's value.
  7870  func (s *GetStudioOutput) SetStudio(v *Studio) *GetStudioOutput {
  7871  	s.Studio = v
  7872  	return s
  7873  }
  7874  
  7875  type InternalServerErrorException struct {
  7876  	_            struct{}                  `type:"structure"`
  7877  	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
  7878  
  7879  	Code_ *string `locationName:"code" type:"string"`
  7880  
  7881  	// ExceptionContext is a set of key-value pairs that provide you with more information
  7882  	// about the error that occurred. For example, when the service returns a 404
  7883  	// ResourceNotFound error, ExceptionContext will contain the key `resourceId`
  7884  	// with the value of resource that was not found.
  7885  	//
  7886  	// ExceptionContext enables scripts and other programmatic clients to provide
  7887  	// for better error handling.
  7888  	Context map[string]*string `locationName:"context" type:"map"`
  7889  
  7890  	Message_ *string `locationName:"message" type:"string"`
  7891  }
  7892  
  7893  // String returns the string representation.
  7894  //
  7895  // API parameter values that are decorated as "sensitive" in the API will not
  7896  // be included in the string output. The member name will be present, but the
  7897  // value will be replaced with "sensitive".
  7898  func (s InternalServerErrorException) String() string {
  7899  	return awsutil.Prettify(s)
  7900  }
  7901  
  7902  // GoString returns the string representation.
  7903  //
  7904  // API parameter values that are decorated as "sensitive" in the API will not
  7905  // be included in the string output. The member name will be present, but the
  7906  // value will be replaced with "sensitive".
  7907  func (s InternalServerErrorException) GoString() string {
  7908  	return s.String()
  7909  }
  7910  
  7911  func newErrorInternalServerErrorException(v protocol.ResponseMetadata) error {
  7912  	return &InternalServerErrorException{
  7913  		RespMetadata: v,
  7914  	}
  7915  }
  7916  
  7917  // Code returns the exception type name.
  7918  func (s *InternalServerErrorException) Code() string {
  7919  	return "InternalServerErrorException"
  7920  }
  7921  
  7922  // Message returns the exception's message.
  7923  func (s *InternalServerErrorException) Message() string {
  7924  	if s.Message_ != nil {
  7925  		return *s.Message_
  7926  	}
  7927  	return ""
  7928  }
  7929  
  7930  // OrigErr always returns nil, satisfies awserr.Error interface.
  7931  func (s *InternalServerErrorException) OrigErr() error {
  7932  	return nil
  7933  }
  7934  
  7935  func (s *InternalServerErrorException) Error() string {
  7936  	return fmt.Sprintf("%s: %s\n%s", s.Code(), s.Message(), s.String())
  7937  }
  7938  
  7939  // Status code returns the HTTP status code for the request's response error.
  7940  func (s *InternalServerErrorException) StatusCode() int {
  7941  	return s.RespMetadata.StatusCode
  7942  }
  7943  
  7944  // RequestID returns the service's response RequestID for request.
  7945  func (s *InternalServerErrorException) RequestID() string {
  7946  	return s.RespMetadata.RequestID
  7947  }
  7948  
  7949  type LaunchProfile struct {
  7950  	_ struct{} `type:"structure"`
  7951  
  7952  	Arn *string `locationName:"arn" type:"string"`
  7953  
  7954  	CreatedAt *time.Time `locationName:"createdAt" type:"timestamp" timestampFormat:"iso8601"`
  7955  
  7956  	CreatedBy *string `locationName:"createdBy" type:"string"`
  7957  
  7958  	Description *string `locationName:"description" type:"string"`
  7959  
  7960  	Ec2SubnetIds []*string `locationName:"ec2SubnetIds" type:"list"`
  7961  
  7962  	LaunchProfileId *string `locationName:"launchProfileId" type:"string"`
  7963  
  7964  	LaunchProfileProtocolVersions []*string `locationName:"launchProfileProtocolVersions" type:"list"`
  7965  
  7966  	Name *string `locationName:"name" type:"string"`
  7967  
  7968  	State *string `locationName:"state" type:"string" enum:"LaunchProfileState"`
  7969  
  7970  	StatusCode *string `locationName:"statusCode" type:"string" enum:"LaunchProfileStatusCode"`
  7971  
  7972  	StatusMessage *string `locationName:"statusMessage" type:"string"`
  7973  
  7974  	// A configuration for a streaming session.
  7975  	StreamConfiguration *StreamConfiguration `locationName:"streamConfiguration" type:"structure"`
  7976  
  7977  	StudioComponentIds []*string `locationName:"studioComponentIds" min:"1" type:"list"`
  7978  
  7979  	Tags map[string]*string `locationName:"tags" type:"map"`
  7980  
  7981  	UpdatedAt *time.Time `locationName:"updatedAt" type:"timestamp" timestampFormat:"iso8601"`
  7982  
  7983  	UpdatedBy *string `locationName:"updatedBy" type:"string"`
  7984  }
  7985  
  7986  // String returns the string representation.
  7987  //
  7988  // API parameter values that are decorated as "sensitive" in the API will not
  7989  // be included in the string output. The member name will be present, but the
  7990  // value will be replaced with "sensitive".
  7991  func (s LaunchProfile) String() string {
  7992  	return awsutil.Prettify(s)
  7993  }
  7994  
  7995  // GoString returns the string representation.
  7996  //
  7997  // API parameter values that are decorated as "sensitive" in the API will not
  7998  // be included in the string output. The member name will be present, but the
  7999  // value will be replaced with "sensitive".
  8000  func (s LaunchProfile) GoString() string {
  8001  	return s.String()
  8002  }
  8003  
  8004  // SetArn sets the Arn field's value.
  8005  func (s *LaunchProfile) SetArn(v string) *LaunchProfile {
  8006  	s.Arn = &v
  8007  	return s
  8008  }
  8009  
  8010  // SetCreatedAt sets the CreatedAt field's value.
  8011  func (s *LaunchProfile) SetCreatedAt(v time.Time) *LaunchProfile {
  8012  	s.CreatedAt = &v
  8013  	return s
  8014  }
  8015  
  8016  // SetCreatedBy sets the CreatedBy field's value.
  8017  func (s *LaunchProfile) SetCreatedBy(v string) *LaunchProfile {
  8018  	s.CreatedBy = &v
  8019  	return s
  8020  }
  8021  
  8022  // SetDescription sets the Description field's value.
  8023  func (s *LaunchProfile) SetDescription(v string) *LaunchProfile {
  8024  	s.Description = &v
  8025  	return s
  8026  }
  8027  
  8028  // SetEc2SubnetIds sets the Ec2SubnetIds field's value.
  8029  func (s *LaunchProfile) SetEc2SubnetIds(v []*string) *LaunchProfile {
  8030  	s.Ec2SubnetIds = v
  8031  	return s
  8032  }
  8033  
  8034  // SetLaunchProfileId sets the LaunchProfileId field's value.
  8035  func (s *LaunchProfile) SetLaunchProfileId(v string) *LaunchProfile {
  8036  	s.LaunchProfileId = &v
  8037  	return s
  8038  }
  8039  
  8040  // SetLaunchProfileProtocolVersions sets the LaunchProfileProtocolVersions field's value.
  8041  func (s *LaunchProfile) SetLaunchProfileProtocolVersions(v []*string) *LaunchProfile {
  8042  	s.LaunchProfileProtocolVersions = v
  8043  	return s
  8044  }
  8045  
  8046  // SetName sets the Name field's value.
  8047  func (s *LaunchProfile) SetName(v string) *LaunchProfile {
  8048  	s.Name = &v
  8049  	return s
  8050  }
  8051  
  8052  // SetState sets the State field's value.
  8053  func (s *LaunchProfile) SetState(v string) *LaunchProfile {
  8054  	s.State = &v
  8055  	return s
  8056  }
  8057  
  8058  // SetStatusCode sets the StatusCode field's value.
  8059  func (s *LaunchProfile) SetStatusCode(v string) *LaunchProfile {
  8060  	s.StatusCode = &v
  8061  	return s
  8062  }
  8063  
  8064  // SetStatusMessage sets the StatusMessage field's value.
  8065  func (s *LaunchProfile) SetStatusMessage(v string) *LaunchProfile {
  8066  	s.StatusMessage = &v
  8067  	return s
  8068  }
  8069  
  8070  // SetStreamConfiguration sets the StreamConfiguration field's value.
  8071  func (s *LaunchProfile) SetStreamConfiguration(v *StreamConfiguration) *LaunchProfile {
  8072  	s.StreamConfiguration = v
  8073  	return s
  8074  }
  8075  
  8076  // SetStudioComponentIds sets the StudioComponentIds field's value.
  8077  func (s *LaunchProfile) SetStudioComponentIds(v []*string) *LaunchProfile {
  8078  	s.StudioComponentIds = v
  8079  	return s
  8080  }
  8081  
  8082  // SetTags sets the Tags field's value.
  8083  func (s *LaunchProfile) SetTags(v map[string]*string) *LaunchProfile {
  8084  	s.Tags = v
  8085  	return s
  8086  }
  8087  
  8088  // SetUpdatedAt sets the UpdatedAt field's value.
  8089  func (s *LaunchProfile) SetUpdatedAt(v time.Time) *LaunchProfile {
  8090  	s.UpdatedAt = &v
  8091  	return s
  8092  }
  8093  
  8094  // SetUpdatedBy sets the UpdatedBy field's value.
  8095  func (s *LaunchProfile) SetUpdatedBy(v string) *LaunchProfile {
  8096  	s.UpdatedBy = &v
  8097  	return s
  8098  }
  8099  
  8100  type LaunchProfileInitialization struct {
  8101  	_ struct{} `type:"structure"`
  8102  
  8103  	ActiveDirectory *LaunchProfileInitializationActiveDirectory `locationName:"activeDirectory" type:"structure"`
  8104  
  8105  	Ec2SecurityGroupIds []*string `locationName:"ec2SecurityGroupIds" min:"1" type:"list"`
  8106  
  8107  	LaunchProfileId *string `locationName:"launchProfileId" type:"string"`
  8108  
  8109  	// The version number of the protocol that is used by the launch profile. The
  8110  	// only valid version is "2021-03-31".
  8111  	LaunchProfileProtocolVersion *string `locationName:"launchProfileProtocolVersion" type:"string"`
  8112  
  8113  	// The launch purpose.
  8114  	LaunchPurpose *string `locationName:"launchPurpose" type:"string"`
  8115  
  8116  	Name *string `locationName:"name" type:"string"`
  8117  
  8118  	Platform *string `locationName:"platform" type:"string" enum:"LaunchProfilePlatform"`
  8119  
  8120  	SystemInitializationScripts []*LaunchProfileInitializationScript `locationName:"systemInitializationScripts" type:"list"`
  8121  
  8122  	UserInitializationScripts []*LaunchProfileInitializationScript `locationName:"userInitializationScripts" type:"list"`
  8123  }
  8124  
  8125  // String returns the string representation.
  8126  //
  8127  // API parameter values that are decorated as "sensitive" in the API will not
  8128  // be included in the string output. The member name will be present, but the
  8129  // value will be replaced with "sensitive".
  8130  func (s LaunchProfileInitialization) String() string {
  8131  	return awsutil.Prettify(s)
  8132  }
  8133  
  8134  // GoString returns the string representation.
  8135  //
  8136  // API parameter values that are decorated as "sensitive" in the API will not
  8137  // be included in the string output. The member name will be present, but the
  8138  // value will be replaced with "sensitive".
  8139  func (s LaunchProfileInitialization) GoString() string {
  8140  	return s.String()
  8141  }
  8142  
  8143  // SetActiveDirectory sets the ActiveDirectory field's value.
  8144  func (s *LaunchProfileInitialization) SetActiveDirectory(v *LaunchProfileInitializationActiveDirectory) *LaunchProfileInitialization {
  8145  	s.ActiveDirectory = v
  8146  	return s
  8147  }
  8148  
  8149  // SetEc2SecurityGroupIds sets the Ec2SecurityGroupIds field's value.
  8150  func (s *LaunchProfileInitialization) SetEc2SecurityGroupIds(v []*string) *LaunchProfileInitialization {
  8151  	s.Ec2SecurityGroupIds = v
  8152  	return s
  8153  }
  8154  
  8155  // SetLaunchProfileId sets the LaunchProfileId field's value.
  8156  func (s *LaunchProfileInitialization) SetLaunchProfileId(v string) *LaunchProfileInitialization {
  8157  	s.LaunchProfileId = &v
  8158  	return s
  8159  }
  8160  
  8161  // SetLaunchProfileProtocolVersion sets the LaunchProfileProtocolVersion field's value.
  8162  func (s *LaunchProfileInitialization) SetLaunchProfileProtocolVersion(v string) *LaunchProfileInitialization {
  8163  	s.LaunchProfileProtocolVersion = &v
  8164  	return s
  8165  }
  8166  
  8167  // SetLaunchPurpose sets the LaunchPurpose field's value.
  8168  func (s *LaunchProfileInitialization) SetLaunchPurpose(v string) *LaunchProfileInitialization {
  8169  	s.LaunchPurpose = &v
  8170  	return s
  8171  }
  8172  
  8173  // SetName sets the Name field's value.
  8174  func (s *LaunchProfileInitialization) SetName(v string) *LaunchProfileInitialization {
  8175  	s.Name = &v
  8176  	return s
  8177  }
  8178  
  8179  // SetPlatform sets the Platform field's value.
  8180  func (s *LaunchProfileInitialization) SetPlatform(v string) *LaunchProfileInitialization {
  8181  	s.Platform = &v
  8182  	return s
  8183  }
  8184  
  8185  // SetSystemInitializationScripts sets the SystemInitializationScripts field's value.
  8186  func (s *LaunchProfileInitialization) SetSystemInitializationScripts(v []*LaunchProfileInitializationScript) *LaunchProfileInitialization {
  8187  	s.SystemInitializationScripts = v
  8188  	return s
  8189  }
  8190  
  8191  // SetUserInitializationScripts sets the UserInitializationScripts field's value.
  8192  func (s *LaunchProfileInitialization) SetUserInitializationScripts(v []*LaunchProfileInitializationScript) *LaunchProfileInitialization {
  8193  	s.UserInitializationScripts = v
  8194  	return s
  8195  }
  8196  
  8197  type LaunchProfileInitializationActiveDirectory struct {
  8198  	_ struct{} `type:"structure"`
  8199  
  8200  	// A collection of LDAP attributes to apply to Active Directory computer accounts
  8201  	// that are created for streaming sessions.
  8202  	ComputerAttributes []*ActiveDirectoryComputerAttribute `locationName:"computerAttributes" type:"list"`
  8203  
  8204  	DirectoryId *string `locationName:"directoryId" type:"string"`
  8205  
  8206  	DirectoryName *string `locationName:"directoryName" type:"string"`
  8207  
  8208  	DnsIpAddresses []*string `locationName:"dnsIpAddresses" type:"list"`
  8209  
  8210  	// The fully-qualified distinguished name of the organizational unit to place
  8211  	// the computer account in.
  8212  	OrganizationalUnitDistinguishedName *string `locationName:"organizationalUnitDistinguishedName" min:"1" type:"string"`
  8213  
  8214  	StudioComponentId *string `locationName:"studioComponentId" type:"string"`
  8215  
  8216  	StudioComponentName *string `locationName:"studioComponentName" type:"string"`
  8217  }
  8218  
  8219  // String returns the string representation.
  8220  //
  8221  // API parameter values that are decorated as "sensitive" in the API will not
  8222  // be included in the string output. The member name will be present, but the
  8223  // value will be replaced with "sensitive".
  8224  func (s LaunchProfileInitializationActiveDirectory) String() string {
  8225  	return awsutil.Prettify(s)
  8226  }
  8227  
  8228  // GoString returns the string representation.
  8229  //
  8230  // API parameter values that are decorated as "sensitive" in the API will not
  8231  // be included in the string output. The member name will be present, but the
  8232  // value will be replaced with "sensitive".
  8233  func (s LaunchProfileInitializationActiveDirectory) GoString() string {
  8234  	return s.String()
  8235  }
  8236  
  8237  // SetComputerAttributes sets the ComputerAttributes field's value.
  8238  func (s *LaunchProfileInitializationActiveDirectory) SetComputerAttributes(v []*ActiveDirectoryComputerAttribute) *LaunchProfileInitializationActiveDirectory {
  8239  	s.ComputerAttributes = v
  8240  	return s
  8241  }
  8242  
  8243  // SetDirectoryId sets the DirectoryId field's value.
  8244  func (s *LaunchProfileInitializationActiveDirectory) SetDirectoryId(v string) *LaunchProfileInitializationActiveDirectory {
  8245  	s.DirectoryId = &v
  8246  	return s
  8247  }
  8248  
  8249  // SetDirectoryName sets the DirectoryName field's value.
  8250  func (s *LaunchProfileInitializationActiveDirectory) SetDirectoryName(v string) *LaunchProfileInitializationActiveDirectory {
  8251  	s.DirectoryName = &v
  8252  	return s
  8253  }
  8254  
  8255  // SetDnsIpAddresses sets the DnsIpAddresses field's value.
  8256  func (s *LaunchProfileInitializationActiveDirectory) SetDnsIpAddresses(v []*string) *LaunchProfileInitializationActiveDirectory {
  8257  	s.DnsIpAddresses = v
  8258  	return s
  8259  }
  8260  
  8261  // SetOrganizationalUnitDistinguishedName sets the OrganizationalUnitDistinguishedName field's value.
  8262  func (s *LaunchProfileInitializationActiveDirectory) SetOrganizationalUnitDistinguishedName(v string) *LaunchProfileInitializationActiveDirectory {
  8263  	s.OrganizationalUnitDistinguishedName = &v
  8264  	return s
  8265  }
  8266  
  8267  // SetStudioComponentId sets the StudioComponentId field's value.
  8268  func (s *LaunchProfileInitializationActiveDirectory) SetStudioComponentId(v string) *LaunchProfileInitializationActiveDirectory {
  8269  	s.StudioComponentId = &v
  8270  	return s
  8271  }
  8272  
  8273  // SetStudioComponentName sets the StudioComponentName field's value.
  8274  func (s *LaunchProfileInitializationActiveDirectory) SetStudioComponentName(v string) *LaunchProfileInitializationActiveDirectory {
  8275  	s.StudioComponentName = &v
  8276  	return s
  8277  }
  8278  
  8279  type LaunchProfileInitializationScript struct {
  8280  	_ struct{} `type:"structure"`
  8281  
  8282  	Script *string `locationName:"script" min:"1" type:"string"`
  8283  
  8284  	StudioComponentId *string `locationName:"studioComponentId" type:"string"`
  8285  
  8286  	StudioComponentName *string `locationName:"studioComponentName" type:"string"`
  8287  }
  8288  
  8289  // String returns the string representation.
  8290  //
  8291  // API parameter values that are decorated as "sensitive" in the API will not
  8292  // be included in the string output. The member name will be present, but the
  8293  // value will be replaced with "sensitive".
  8294  func (s LaunchProfileInitializationScript) String() string {
  8295  	return awsutil.Prettify(s)
  8296  }
  8297  
  8298  // GoString returns the string representation.
  8299  //
  8300  // API parameter values that are decorated as "sensitive" in the API will not
  8301  // be included in the string output. The member name will be present, but the
  8302  // value will be replaced with "sensitive".
  8303  func (s LaunchProfileInitializationScript) GoString() string {
  8304  	return s.String()
  8305  }
  8306  
  8307  // SetScript sets the Script field's value.
  8308  func (s *LaunchProfileInitializationScript) SetScript(v string) *LaunchProfileInitializationScript {
  8309  	s.Script = &v
  8310  	return s
  8311  }
  8312  
  8313  // SetStudioComponentId sets the StudioComponentId field's value.
  8314  func (s *LaunchProfileInitializationScript) SetStudioComponentId(v string) *LaunchProfileInitializationScript {
  8315  	s.StudioComponentId = &v
  8316  	return s
  8317  }
  8318  
  8319  // SetStudioComponentName sets the StudioComponentName field's value.
  8320  func (s *LaunchProfileInitializationScript) SetStudioComponentName(v string) *LaunchProfileInitializationScript {
  8321  	s.StudioComponentName = &v
  8322  	return s
  8323  }
  8324  
  8325  type LaunchProfileMembership struct {
  8326  	_ struct{} `type:"structure"`
  8327  
  8328  	IdentityStoreId *string `locationName:"identityStoreId" type:"string"`
  8329  
  8330  	Persona *string `locationName:"persona" type:"string" enum:"LaunchProfilePersona"`
  8331  
  8332  	PrincipalId *string `locationName:"principalId" type:"string"`
  8333  }
  8334  
  8335  // String returns the string representation.
  8336  //
  8337  // API parameter values that are decorated as "sensitive" in the API will not
  8338  // be included in the string output. The member name will be present, but the
  8339  // value will be replaced with "sensitive".
  8340  func (s LaunchProfileMembership) String() string {
  8341  	return awsutil.Prettify(s)
  8342  }
  8343  
  8344  // GoString returns the string representation.
  8345  //
  8346  // API parameter values that are decorated as "sensitive" in the API will not
  8347  // be included in the string output. The member name will be present, but the
  8348  // value will be replaced with "sensitive".
  8349  func (s LaunchProfileMembership) GoString() string {
  8350  	return s.String()
  8351  }
  8352  
  8353  // SetIdentityStoreId sets the IdentityStoreId field's value.
  8354  func (s *LaunchProfileMembership) SetIdentityStoreId(v string) *LaunchProfileMembership {
  8355  	s.IdentityStoreId = &v
  8356  	return s
  8357  }
  8358  
  8359  // SetPersona sets the Persona field's value.
  8360  func (s *LaunchProfileMembership) SetPersona(v string) *LaunchProfileMembership {
  8361  	s.Persona = &v
  8362  	return s
  8363  }
  8364  
  8365  // SetPrincipalId sets the PrincipalId field's value.
  8366  func (s *LaunchProfileMembership) SetPrincipalId(v string) *LaunchProfileMembership {
  8367  	s.PrincipalId = &v
  8368  	return s
  8369  }
  8370  
  8371  // The configuration for a license service that is associated with a studio
  8372  // resource.
  8373  type LicenseServiceConfiguration struct {
  8374  	_ struct{} `type:"structure"`
  8375  
  8376  	Endpoint *string `locationName:"endpoint" type:"string"`
  8377  }
  8378  
  8379  // String returns the string representation.
  8380  //
  8381  // API parameter values that are decorated as "sensitive" in the API will not
  8382  // be included in the string output. The member name will be present, but the
  8383  // value will be replaced with "sensitive".
  8384  func (s LicenseServiceConfiguration) String() string {
  8385  	return awsutil.Prettify(s)
  8386  }
  8387  
  8388  // GoString returns the string representation.
  8389  //
  8390  // API parameter values that are decorated as "sensitive" in the API will not
  8391  // be included in the string output. The member name will be present, but the
  8392  // value will be replaced with "sensitive".
  8393  func (s LicenseServiceConfiguration) GoString() string {
  8394  	return s.String()
  8395  }
  8396  
  8397  // SetEndpoint sets the Endpoint field's value.
  8398  func (s *LicenseServiceConfiguration) SetEndpoint(v string) *LicenseServiceConfiguration {
  8399  	s.Endpoint = &v
  8400  	return s
  8401  }
  8402  
  8403  type ListEulaAcceptancesInput struct {
  8404  	_ struct{} `type:"structure" nopayload:"true"`
  8405  
  8406  	EulaIds []*string `location:"querystring" locationName:"eulaIds" type:"list"`
  8407  
  8408  	NextToken *string `location:"querystring" locationName:"nextToken" type:"string"`
  8409  
  8410  	// StudioId is a required field
  8411  	StudioId *string `location:"uri" locationName:"studioId" type:"string" required:"true"`
  8412  }
  8413  
  8414  // String returns the string representation.
  8415  //
  8416  // API parameter values that are decorated as "sensitive" in the API will not
  8417  // be included in the string output. The member name will be present, but the
  8418  // value will be replaced with "sensitive".
  8419  func (s ListEulaAcceptancesInput) String() string {
  8420  	return awsutil.Prettify(s)
  8421  }
  8422  
  8423  // GoString returns the string representation.
  8424  //
  8425  // API parameter values that are decorated as "sensitive" in the API will not
  8426  // be included in the string output. The member name will be present, but the
  8427  // value will be replaced with "sensitive".
  8428  func (s ListEulaAcceptancesInput) GoString() string {
  8429  	return s.String()
  8430  }
  8431  
  8432  // Validate inspects the fields of the type to determine if they are valid.
  8433  func (s *ListEulaAcceptancesInput) Validate() error {
  8434  	invalidParams := request.ErrInvalidParams{Context: "ListEulaAcceptancesInput"}
  8435  	if s.StudioId == nil {
  8436  		invalidParams.Add(request.NewErrParamRequired("StudioId"))
  8437  	}
  8438  	if s.StudioId != nil && len(*s.StudioId) < 1 {
  8439  		invalidParams.Add(request.NewErrParamMinLen("StudioId", 1))
  8440  	}
  8441  
  8442  	if invalidParams.Len() > 0 {
  8443  		return invalidParams
  8444  	}
  8445  	return nil
  8446  }
  8447  
  8448  // SetEulaIds sets the EulaIds field's value.
  8449  func (s *ListEulaAcceptancesInput) SetEulaIds(v []*string) *ListEulaAcceptancesInput {
  8450  	s.EulaIds = v
  8451  	return s
  8452  }
  8453  
  8454  // SetNextToken sets the NextToken field's value.
  8455  func (s *ListEulaAcceptancesInput) SetNextToken(v string) *ListEulaAcceptancesInput {
  8456  	s.NextToken = &v
  8457  	return s
  8458  }
  8459  
  8460  // SetStudioId sets the StudioId field's value.
  8461  func (s *ListEulaAcceptancesInput) SetStudioId(v string) *ListEulaAcceptancesInput {
  8462  	s.StudioId = &v
  8463  	return s
  8464  }
  8465  
  8466  type ListEulaAcceptancesOutput struct {
  8467  	_ struct{} `type:"structure"`
  8468  
  8469  	EulaAcceptances []*EulaAcceptance `locationName:"eulaAcceptances" type:"list"`
  8470  
  8471  	NextToken *string `locationName:"nextToken" type:"string"`
  8472  }
  8473  
  8474  // String returns the string representation.
  8475  //
  8476  // API parameter values that are decorated as "sensitive" in the API will not
  8477  // be included in the string output. The member name will be present, but the
  8478  // value will be replaced with "sensitive".
  8479  func (s ListEulaAcceptancesOutput) String() string {
  8480  	return awsutil.Prettify(s)
  8481  }
  8482  
  8483  // GoString returns the string representation.
  8484  //
  8485  // API parameter values that are decorated as "sensitive" in the API will not
  8486  // be included in the string output. The member name will be present, but the
  8487  // value will be replaced with "sensitive".
  8488  func (s ListEulaAcceptancesOutput) GoString() string {
  8489  	return s.String()
  8490  }
  8491  
  8492  // SetEulaAcceptances sets the EulaAcceptances field's value.
  8493  func (s *ListEulaAcceptancesOutput) SetEulaAcceptances(v []*EulaAcceptance) *ListEulaAcceptancesOutput {
  8494  	s.EulaAcceptances = v
  8495  	return s
  8496  }
  8497  
  8498  // SetNextToken sets the NextToken field's value.
  8499  func (s *ListEulaAcceptancesOutput) SetNextToken(v string) *ListEulaAcceptancesOutput {
  8500  	s.NextToken = &v
  8501  	return s
  8502  }
  8503  
  8504  type ListEulasInput struct {
  8505  	_ struct{} `type:"structure" nopayload:"true"`
  8506  
  8507  	EulaIds []*string `location:"querystring" locationName:"eulaIds" type:"list"`
  8508  
  8509  	NextToken *string `location:"querystring" locationName:"nextToken" type:"string"`
  8510  }
  8511  
  8512  // String returns the string representation.
  8513  //
  8514  // API parameter values that are decorated as "sensitive" in the API will not
  8515  // be included in the string output. The member name will be present, but the
  8516  // value will be replaced with "sensitive".
  8517  func (s ListEulasInput) String() string {
  8518  	return awsutil.Prettify(s)
  8519  }
  8520  
  8521  // GoString returns the string representation.
  8522  //
  8523  // API parameter values that are decorated as "sensitive" in the API will not
  8524  // be included in the string output. The member name will be present, but the
  8525  // value will be replaced with "sensitive".
  8526  func (s ListEulasInput) GoString() string {
  8527  	return s.String()
  8528  }
  8529  
  8530  // SetEulaIds sets the EulaIds field's value.
  8531  func (s *ListEulasInput) SetEulaIds(v []*string) *ListEulasInput {
  8532  	s.EulaIds = v
  8533  	return s
  8534  }
  8535  
  8536  // SetNextToken sets the NextToken field's value.
  8537  func (s *ListEulasInput) SetNextToken(v string) *ListEulasInput {
  8538  	s.NextToken = &v
  8539  	return s
  8540  }
  8541  
  8542  type ListEulasOutput struct {
  8543  	_ struct{} `type:"structure"`
  8544  
  8545  	Eulas []*Eula `locationName:"eulas" type:"list"`
  8546  
  8547  	NextToken *string `locationName:"nextToken" type:"string"`
  8548  }
  8549  
  8550  // String returns the string representation.
  8551  //
  8552  // API parameter values that are decorated as "sensitive" in the API will not
  8553  // be included in the string output. The member name will be present, but the
  8554  // value will be replaced with "sensitive".
  8555  func (s ListEulasOutput) String() string {
  8556  	return awsutil.Prettify(s)
  8557  }
  8558  
  8559  // GoString returns the string representation.
  8560  //
  8561  // API parameter values that are decorated as "sensitive" in the API will not
  8562  // be included in the string output. The member name will be present, but the
  8563  // value will be replaced with "sensitive".
  8564  func (s ListEulasOutput) GoString() string {
  8565  	return s.String()
  8566  }
  8567  
  8568  // SetEulas sets the Eulas field's value.
  8569  func (s *ListEulasOutput) SetEulas(v []*Eula) *ListEulasOutput {
  8570  	s.Eulas = v
  8571  	return s
  8572  }
  8573  
  8574  // SetNextToken sets the NextToken field's value.
  8575  func (s *ListEulasOutput) SetNextToken(v string) *ListEulasOutput {
  8576  	s.NextToken = &v
  8577  	return s
  8578  }
  8579  
  8580  type ListLaunchProfileMembersInput struct {
  8581  	_ struct{} `type:"structure" nopayload:"true"`
  8582  
  8583  	// LaunchProfileId is a required field
  8584  	LaunchProfileId *string `location:"uri" locationName:"launchProfileId" type:"string" required:"true"`
  8585  
  8586  	MaxResults *int64 `location:"querystring" locationName:"maxResults" min:"1" type:"integer"`
  8587  
  8588  	NextToken *string `location:"querystring" locationName:"nextToken" type:"string"`
  8589  
  8590  	// StudioId is a required field
  8591  	StudioId *string `location:"uri" locationName:"studioId" type:"string" required:"true"`
  8592  }
  8593  
  8594  // String returns the string representation.
  8595  //
  8596  // API parameter values that are decorated as "sensitive" in the API will not
  8597  // be included in the string output. The member name will be present, but the
  8598  // value will be replaced with "sensitive".
  8599  func (s ListLaunchProfileMembersInput) String() string {
  8600  	return awsutil.Prettify(s)
  8601  }
  8602  
  8603  // GoString returns the string representation.
  8604  //
  8605  // API parameter values that are decorated as "sensitive" in the API will not
  8606  // be included in the string output. The member name will be present, but the
  8607  // value will be replaced with "sensitive".
  8608  func (s ListLaunchProfileMembersInput) GoString() string {
  8609  	return s.String()
  8610  }
  8611  
  8612  // Validate inspects the fields of the type to determine if they are valid.
  8613  func (s *ListLaunchProfileMembersInput) Validate() error {
  8614  	invalidParams := request.ErrInvalidParams{Context: "ListLaunchProfileMembersInput"}
  8615  	if s.LaunchProfileId == nil {
  8616  		invalidParams.Add(request.NewErrParamRequired("LaunchProfileId"))
  8617  	}
  8618  	if s.LaunchProfileId != nil && len(*s.LaunchProfileId) < 1 {
  8619  		invalidParams.Add(request.NewErrParamMinLen("LaunchProfileId", 1))
  8620  	}
  8621  	if s.MaxResults != nil && *s.MaxResults < 1 {
  8622  		invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1))
  8623  	}
  8624  	if s.StudioId == nil {
  8625  		invalidParams.Add(request.NewErrParamRequired("StudioId"))
  8626  	}
  8627  	if s.StudioId != nil && len(*s.StudioId) < 1 {
  8628  		invalidParams.Add(request.NewErrParamMinLen("StudioId", 1))
  8629  	}
  8630  
  8631  	if invalidParams.Len() > 0 {
  8632  		return invalidParams
  8633  	}
  8634  	return nil
  8635  }
  8636  
  8637  // SetLaunchProfileId sets the LaunchProfileId field's value.
  8638  func (s *ListLaunchProfileMembersInput) SetLaunchProfileId(v string) *ListLaunchProfileMembersInput {
  8639  	s.LaunchProfileId = &v
  8640  	return s
  8641  }
  8642  
  8643  // SetMaxResults sets the MaxResults field's value.
  8644  func (s *ListLaunchProfileMembersInput) SetMaxResults(v int64) *ListLaunchProfileMembersInput {
  8645  	s.MaxResults = &v
  8646  	return s
  8647  }
  8648  
  8649  // SetNextToken sets the NextToken field's value.
  8650  func (s *ListLaunchProfileMembersInput) SetNextToken(v string) *ListLaunchProfileMembersInput {
  8651  	s.NextToken = &v
  8652  	return s
  8653  }
  8654  
  8655  // SetStudioId sets the StudioId field's value.
  8656  func (s *ListLaunchProfileMembersInput) SetStudioId(v string) *ListLaunchProfileMembersInput {
  8657  	s.StudioId = &v
  8658  	return s
  8659  }
  8660  
  8661  type ListLaunchProfileMembersOutput struct {
  8662  	_ struct{} `type:"structure"`
  8663  
  8664  	Members []*LaunchProfileMembership `locationName:"members" type:"list"`
  8665  
  8666  	NextToken *string `locationName:"nextToken" type:"string"`
  8667  }
  8668  
  8669  // String returns the string representation.
  8670  //
  8671  // API parameter values that are decorated as "sensitive" in the API will not
  8672  // be included in the string output. The member name will be present, but the
  8673  // value will be replaced with "sensitive".
  8674  func (s ListLaunchProfileMembersOutput) String() string {
  8675  	return awsutil.Prettify(s)
  8676  }
  8677  
  8678  // GoString returns the string representation.
  8679  //
  8680  // API parameter values that are decorated as "sensitive" in the API will not
  8681  // be included in the string output. The member name will be present, but the
  8682  // value will be replaced with "sensitive".
  8683  func (s ListLaunchProfileMembersOutput) GoString() string {
  8684  	return s.String()
  8685  }
  8686  
  8687  // SetMembers sets the Members field's value.
  8688  func (s *ListLaunchProfileMembersOutput) SetMembers(v []*LaunchProfileMembership) *ListLaunchProfileMembersOutput {
  8689  	s.Members = v
  8690  	return s
  8691  }
  8692  
  8693  // SetNextToken sets the NextToken field's value.
  8694  func (s *ListLaunchProfileMembersOutput) SetNextToken(v string) *ListLaunchProfileMembersOutput {
  8695  	s.NextToken = &v
  8696  	return s
  8697  }
  8698  
  8699  type ListLaunchProfilesInput struct {
  8700  	_ struct{} `type:"structure" nopayload:"true"`
  8701  
  8702  	MaxResults *int64 `location:"querystring" locationName:"maxResults" min:"1" type:"integer"`
  8703  
  8704  	NextToken *string `location:"querystring" locationName:"nextToken" type:"string"`
  8705  
  8706  	PrincipalId *string `location:"querystring" locationName:"principalId" type:"string"`
  8707  
  8708  	States []*string `location:"querystring" locationName:"states" type:"list"`
  8709  
  8710  	// StudioId is a required field
  8711  	StudioId *string `location:"uri" locationName:"studioId" type:"string" required:"true"`
  8712  }
  8713  
  8714  // String returns the string representation.
  8715  //
  8716  // API parameter values that are decorated as "sensitive" in the API will not
  8717  // be included in the string output. The member name will be present, but the
  8718  // value will be replaced with "sensitive".
  8719  func (s ListLaunchProfilesInput) String() string {
  8720  	return awsutil.Prettify(s)
  8721  }
  8722  
  8723  // GoString returns the string representation.
  8724  //
  8725  // API parameter values that are decorated as "sensitive" in the API will not
  8726  // be included in the string output. The member name will be present, but the
  8727  // value will be replaced with "sensitive".
  8728  func (s ListLaunchProfilesInput) GoString() string {
  8729  	return s.String()
  8730  }
  8731  
  8732  // Validate inspects the fields of the type to determine if they are valid.
  8733  func (s *ListLaunchProfilesInput) Validate() error {
  8734  	invalidParams := request.ErrInvalidParams{Context: "ListLaunchProfilesInput"}
  8735  	if s.MaxResults != nil && *s.MaxResults < 1 {
  8736  		invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1))
  8737  	}
  8738  	if s.StudioId == nil {
  8739  		invalidParams.Add(request.NewErrParamRequired("StudioId"))
  8740  	}
  8741  	if s.StudioId != nil && len(*s.StudioId) < 1 {
  8742  		invalidParams.Add(request.NewErrParamMinLen("StudioId", 1))
  8743  	}
  8744  
  8745  	if invalidParams.Len() > 0 {
  8746  		return invalidParams
  8747  	}
  8748  	return nil
  8749  }
  8750  
  8751  // SetMaxResults sets the MaxResults field's value.
  8752  func (s *ListLaunchProfilesInput) SetMaxResults(v int64) *ListLaunchProfilesInput {
  8753  	s.MaxResults = &v
  8754  	return s
  8755  }
  8756  
  8757  // SetNextToken sets the NextToken field's value.
  8758  func (s *ListLaunchProfilesInput) SetNextToken(v string) *ListLaunchProfilesInput {
  8759  	s.NextToken = &v
  8760  	return s
  8761  }
  8762  
  8763  // SetPrincipalId sets the PrincipalId field's value.
  8764  func (s *ListLaunchProfilesInput) SetPrincipalId(v string) *ListLaunchProfilesInput {
  8765  	s.PrincipalId = &v
  8766  	return s
  8767  }
  8768  
  8769  // SetStates sets the States field's value.
  8770  func (s *ListLaunchProfilesInput) SetStates(v []*string) *ListLaunchProfilesInput {
  8771  	s.States = v
  8772  	return s
  8773  }
  8774  
  8775  // SetStudioId sets the StudioId field's value.
  8776  func (s *ListLaunchProfilesInput) SetStudioId(v string) *ListLaunchProfilesInput {
  8777  	s.StudioId = &v
  8778  	return s
  8779  }
  8780  
  8781  type ListLaunchProfilesOutput struct {
  8782  	_ struct{} `type:"structure"`
  8783  
  8784  	LaunchProfiles []*LaunchProfile `locationName:"launchProfiles" type:"list"`
  8785  
  8786  	NextToken *string `locationName:"nextToken" type:"string"`
  8787  }
  8788  
  8789  // String returns the string representation.
  8790  //
  8791  // API parameter values that are decorated as "sensitive" in the API will not
  8792  // be included in the string output. The member name will be present, but the
  8793  // value will be replaced with "sensitive".
  8794  func (s ListLaunchProfilesOutput) String() string {
  8795  	return awsutil.Prettify(s)
  8796  }
  8797  
  8798  // GoString returns the string representation.
  8799  //
  8800  // API parameter values that are decorated as "sensitive" in the API will not
  8801  // be included in the string output. The member name will be present, but the
  8802  // value will be replaced with "sensitive".
  8803  func (s ListLaunchProfilesOutput) GoString() string {
  8804  	return s.String()
  8805  }
  8806  
  8807  // SetLaunchProfiles sets the LaunchProfiles field's value.
  8808  func (s *ListLaunchProfilesOutput) SetLaunchProfiles(v []*LaunchProfile) *ListLaunchProfilesOutput {
  8809  	s.LaunchProfiles = v
  8810  	return s
  8811  }
  8812  
  8813  // SetNextToken sets the NextToken field's value.
  8814  func (s *ListLaunchProfilesOutput) SetNextToken(v string) *ListLaunchProfilesOutput {
  8815  	s.NextToken = &v
  8816  	return s
  8817  }
  8818  
  8819  type ListStreamingImagesInput struct {
  8820  	_ struct{} `type:"structure" nopayload:"true"`
  8821  
  8822  	NextToken *string `location:"querystring" locationName:"nextToken" type:"string"`
  8823  
  8824  	Owner *string `location:"querystring" locationName:"owner" type:"string"`
  8825  
  8826  	// StudioId is a required field
  8827  	StudioId *string `location:"uri" locationName:"studioId" type:"string" required:"true"`
  8828  }
  8829  
  8830  // String returns the string representation.
  8831  //
  8832  // API parameter values that are decorated as "sensitive" in the API will not
  8833  // be included in the string output. The member name will be present, but the
  8834  // value will be replaced with "sensitive".
  8835  func (s ListStreamingImagesInput) String() string {
  8836  	return awsutil.Prettify(s)
  8837  }
  8838  
  8839  // GoString returns the string representation.
  8840  //
  8841  // API parameter values that are decorated as "sensitive" in the API will not
  8842  // be included in the string output. The member name will be present, but the
  8843  // value will be replaced with "sensitive".
  8844  func (s ListStreamingImagesInput) GoString() string {
  8845  	return s.String()
  8846  }
  8847  
  8848  // Validate inspects the fields of the type to determine if they are valid.
  8849  func (s *ListStreamingImagesInput) Validate() error {
  8850  	invalidParams := request.ErrInvalidParams{Context: "ListStreamingImagesInput"}
  8851  	if s.StudioId == nil {
  8852  		invalidParams.Add(request.NewErrParamRequired("StudioId"))
  8853  	}
  8854  	if s.StudioId != nil && len(*s.StudioId) < 1 {
  8855  		invalidParams.Add(request.NewErrParamMinLen("StudioId", 1))
  8856  	}
  8857  
  8858  	if invalidParams.Len() > 0 {
  8859  		return invalidParams
  8860  	}
  8861  	return nil
  8862  }
  8863  
  8864  // SetNextToken sets the NextToken field's value.
  8865  func (s *ListStreamingImagesInput) SetNextToken(v string) *ListStreamingImagesInput {
  8866  	s.NextToken = &v
  8867  	return s
  8868  }
  8869  
  8870  // SetOwner sets the Owner field's value.
  8871  func (s *ListStreamingImagesInput) SetOwner(v string) *ListStreamingImagesInput {
  8872  	s.Owner = &v
  8873  	return s
  8874  }
  8875  
  8876  // SetStudioId sets the StudioId field's value.
  8877  func (s *ListStreamingImagesInput) SetStudioId(v string) *ListStreamingImagesInput {
  8878  	s.StudioId = &v
  8879  	return s
  8880  }
  8881  
  8882  type ListStreamingImagesOutput struct {
  8883  	_ struct{} `type:"structure"`
  8884  
  8885  	NextToken *string `locationName:"nextToken" type:"string"`
  8886  
  8887  	StreamingImages []*StreamingImage `locationName:"streamingImages" type:"list"`
  8888  }
  8889  
  8890  // String returns the string representation.
  8891  //
  8892  // API parameter values that are decorated as "sensitive" in the API will not
  8893  // be included in the string output. The member name will be present, but the
  8894  // value will be replaced with "sensitive".
  8895  func (s ListStreamingImagesOutput) String() string {
  8896  	return awsutil.Prettify(s)
  8897  }
  8898  
  8899  // GoString returns the string representation.
  8900  //
  8901  // API parameter values that are decorated as "sensitive" in the API will not
  8902  // be included in the string output. The member name will be present, but the
  8903  // value will be replaced with "sensitive".
  8904  func (s ListStreamingImagesOutput) GoString() string {
  8905  	return s.String()
  8906  }
  8907  
  8908  // SetNextToken sets the NextToken field's value.
  8909  func (s *ListStreamingImagesOutput) SetNextToken(v string) *ListStreamingImagesOutput {
  8910  	s.NextToken = &v
  8911  	return s
  8912  }
  8913  
  8914  // SetStreamingImages sets the StreamingImages field's value.
  8915  func (s *ListStreamingImagesOutput) SetStreamingImages(v []*StreamingImage) *ListStreamingImagesOutput {
  8916  	s.StreamingImages = v
  8917  	return s
  8918  }
  8919  
  8920  type ListStreamingSessionsInput struct {
  8921  	_ struct{} `type:"structure" nopayload:"true"`
  8922  
  8923  	CreatedBy *string `location:"querystring" locationName:"createdBy" type:"string"`
  8924  
  8925  	NextToken *string `location:"querystring" locationName:"nextToken" type:"string"`
  8926  
  8927  	OwnedBy *string `location:"querystring" locationName:"ownedBy" type:"string"`
  8928  
  8929  	SessionIds *string `location:"querystring" locationName:"sessionIds" type:"string"`
  8930  
  8931  	// StudioId is a required field
  8932  	StudioId *string `location:"uri" locationName:"studioId" type:"string" required:"true"`
  8933  }
  8934  
  8935  // String returns the string representation.
  8936  //
  8937  // API parameter values that are decorated as "sensitive" in the API will not
  8938  // be included in the string output. The member name will be present, but the
  8939  // value will be replaced with "sensitive".
  8940  func (s ListStreamingSessionsInput) String() string {
  8941  	return awsutil.Prettify(s)
  8942  }
  8943  
  8944  // GoString returns the string representation.
  8945  //
  8946  // API parameter values that are decorated as "sensitive" in the API will not
  8947  // be included in the string output. The member name will be present, but the
  8948  // value will be replaced with "sensitive".
  8949  func (s ListStreamingSessionsInput) GoString() string {
  8950  	return s.String()
  8951  }
  8952  
  8953  // Validate inspects the fields of the type to determine if they are valid.
  8954  func (s *ListStreamingSessionsInput) Validate() error {
  8955  	invalidParams := request.ErrInvalidParams{Context: "ListStreamingSessionsInput"}
  8956  	if s.StudioId == nil {
  8957  		invalidParams.Add(request.NewErrParamRequired("StudioId"))
  8958  	}
  8959  	if s.StudioId != nil && len(*s.StudioId) < 1 {
  8960  		invalidParams.Add(request.NewErrParamMinLen("StudioId", 1))
  8961  	}
  8962  
  8963  	if invalidParams.Len() > 0 {
  8964  		return invalidParams
  8965  	}
  8966  	return nil
  8967  }
  8968  
  8969  // SetCreatedBy sets the CreatedBy field's value.
  8970  func (s *ListStreamingSessionsInput) SetCreatedBy(v string) *ListStreamingSessionsInput {
  8971  	s.CreatedBy = &v
  8972  	return s
  8973  }
  8974  
  8975  // SetNextToken sets the NextToken field's value.
  8976  func (s *ListStreamingSessionsInput) SetNextToken(v string) *ListStreamingSessionsInput {
  8977  	s.NextToken = &v
  8978  	return s
  8979  }
  8980  
  8981  // SetOwnedBy sets the OwnedBy field's value.
  8982  func (s *ListStreamingSessionsInput) SetOwnedBy(v string) *ListStreamingSessionsInput {
  8983  	s.OwnedBy = &v
  8984  	return s
  8985  }
  8986  
  8987  // SetSessionIds sets the SessionIds field's value.
  8988  func (s *ListStreamingSessionsInput) SetSessionIds(v string) *ListStreamingSessionsInput {
  8989  	s.SessionIds = &v
  8990  	return s
  8991  }
  8992  
  8993  // SetStudioId sets the StudioId field's value.
  8994  func (s *ListStreamingSessionsInput) SetStudioId(v string) *ListStreamingSessionsInput {
  8995  	s.StudioId = &v
  8996  	return s
  8997  }
  8998  
  8999  type ListStreamingSessionsOutput struct {
  9000  	_ struct{} `type:"structure"`
  9001  
  9002  	NextToken *string `locationName:"nextToken" type:"string"`
  9003  
  9004  	Sessions []*StreamingSession `locationName:"sessions" type:"list"`
  9005  }
  9006  
  9007  // String returns the string representation.
  9008  //
  9009  // API parameter values that are decorated as "sensitive" in the API will not
  9010  // be included in the string output. The member name will be present, but the
  9011  // value will be replaced with "sensitive".
  9012  func (s ListStreamingSessionsOutput) String() string {
  9013  	return awsutil.Prettify(s)
  9014  }
  9015  
  9016  // GoString returns the string representation.
  9017  //
  9018  // API parameter values that are decorated as "sensitive" in the API will not
  9019  // be included in the string output. The member name will be present, but the
  9020  // value will be replaced with "sensitive".
  9021  func (s ListStreamingSessionsOutput) GoString() string {
  9022  	return s.String()
  9023  }
  9024  
  9025  // SetNextToken sets the NextToken field's value.
  9026  func (s *ListStreamingSessionsOutput) SetNextToken(v string) *ListStreamingSessionsOutput {
  9027  	s.NextToken = &v
  9028  	return s
  9029  }
  9030  
  9031  // SetSessions sets the Sessions field's value.
  9032  func (s *ListStreamingSessionsOutput) SetSessions(v []*StreamingSession) *ListStreamingSessionsOutput {
  9033  	s.Sessions = v
  9034  	return s
  9035  }
  9036  
  9037  type ListStudioComponentsInput struct {
  9038  	_ struct{} `type:"structure" nopayload:"true"`
  9039  
  9040  	MaxResults *int64 `location:"querystring" locationName:"maxResults" min:"1" type:"integer"`
  9041  
  9042  	NextToken *string `location:"querystring" locationName:"nextToken" type:"string"`
  9043  
  9044  	States []*string `location:"querystring" locationName:"states" type:"list"`
  9045  
  9046  	// StudioId is a required field
  9047  	StudioId *string `location:"uri" locationName:"studioId" type:"string" required:"true"`
  9048  
  9049  	Types []*string `location:"querystring" locationName:"types" type:"list"`
  9050  }
  9051  
  9052  // String returns the string representation.
  9053  //
  9054  // API parameter values that are decorated as "sensitive" in the API will not
  9055  // be included in the string output. The member name will be present, but the
  9056  // value will be replaced with "sensitive".
  9057  func (s ListStudioComponentsInput) String() string {
  9058  	return awsutil.Prettify(s)
  9059  }
  9060  
  9061  // GoString returns the string representation.
  9062  //
  9063  // API parameter values that are decorated as "sensitive" in the API will not
  9064  // be included in the string output. The member name will be present, but the
  9065  // value will be replaced with "sensitive".
  9066  func (s ListStudioComponentsInput) GoString() string {
  9067  	return s.String()
  9068  }
  9069  
  9070  // Validate inspects the fields of the type to determine if they are valid.
  9071  func (s *ListStudioComponentsInput) Validate() error {
  9072  	invalidParams := request.ErrInvalidParams{Context: "ListStudioComponentsInput"}
  9073  	if s.MaxResults != nil && *s.MaxResults < 1 {
  9074  		invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1))
  9075  	}
  9076  	if s.StudioId == nil {
  9077  		invalidParams.Add(request.NewErrParamRequired("StudioId"))
  9078  	}
  9079  	if s.StudioId != nil && len(*s.StudioId) < 1 {
  9080  		invalidParams.Add(request.NewErrParamMinLen("StudioId", 1))
  9081  	}
  9082  
  9083  	if invalidParams.Len() > 0 {
  9084  		return invalidParams
  9085  	}
  9086  	return nil
  9087  }
  9088  
  9089  // SetMaxResults sets the MaxResults field's value.
  9090  func (s *ListStudioComponentsInput) SetMaxResults(v int64) *ListStudioComponentsInput {
  9091  	s.MaxResults = &v
  9092  	return s
  9093  }
  9094  
  9095  // SetNextToken sets the NextToken field's value.
  9096  func (s *ListStudioComponentsInput) SetNextToken(v string) *ListStudioComponentsInput {
  9097  	s.NextToken = &v
  9098  	return s
  9099  }
  9100  
  9101  // SetStates sets the States field's value.
  9102  func (s *ListStudioComponentsInput) SetStates(v []*string) *ListStudioComponentsInput {
  9103  	s.States = v
  9104  	return s
  9105  }
  9106  
  9107  // SetStudioId sets the StudioId field's value.
  9108  func (s *ListStudioComponentsInput) SetStudioId(v string) *ListStudioComponentsInput {
  9109  	s.StudioId = &v
  9110  	return s
  9111  }
  9112  
  9113  // SetTypes sets the Types field's value.
  9114  func (s *ListStudioComponentsInput) SetTypes(v []*string) *ListStudioComponentsInput {
  9115  	s.Types = v
  9116  	return s
  9117  }
  9118  
  9119  type ListStudioComponentsOutput struct {
  9120  	_ struct{} `type:"structure"`
  9121  
  9122  	NextToken *string `locationName:"nextToken" type:"string"`
  9123  
  9124  	StudioComponents []*StudioComponent `locationName:"studioComponents" type:"list"`
  9125  }
  9126  
  9127  // String returns the string representation.
  9128  //
  9129  // API parameter values that are decorated as "sensitive" in the API will not
  9130  // be included in the string output. The member name will be present, but the
  9131  // value will be replaced with "sensitive".
  9132  func (s ListStudioComponentsOutput) String() string {
  9133  	return awsutil.Prettify(s)
  9134  }
  9135  
  9136  // GoString returns the string representation.
  9137  //
  9138  // API parameter values that are decorated as "sensitive" in the API will not
  9139  // be included in the string output. The member name will be present, but the
  9140  // value will be replaced with "sensitive".
  9141  func (s ListStudioComponentsOutput) GoString() string {
  9142  	return s.String()
  9143  }
  9144  
  9145  // SetNextToken sets the NextToken field's value.
  9146  func (s *ListStudioComponentsOutput) SetNextToken(v string) *ListStudioComponentsOutput {
  9147  	s.NextToken = &v
  9148  	return s
  9149  }
  9150  
  9151  // SetStudioComponents sets the StudioComponents field's value.
  9152  func (s *ListStudioComponentsOutput) SetStudioComponents(v []*StudioComponent) *ListStudioComponentsOutput {
  9153  	s.StudioComponents = v
  9154  	return s
  9155  }
  9156  
  9157  type ListStudioMembersInput struct {
  9158  	_ struct{} `type:"structure" nopayload:"true"`
  9159  
  9160  	MaxResults *int64 `location:"querystring" locationName:"maxResults" min:"1" type:"integer"`
  9161  
  9162  	NextToken *string `location:"querystring" locationName:"nextToken" type:"string"`
  9163  
  9164  	// StudioId is a required field
  9165  	StudioId *string `location:"uri" locationName:"studioId" type:"string" required:"true"`
  9166  }
  9167  
  9168  // String returns the string representation.
  9169  //
  9170  // API parameter values that are decorated as "sensitive" in the API will not
  9171  // be included in the string output. The member name will be present, but the
  9172  // value will be replaced with "sensitive".
  9173  func (s ListStudioMembersInput) String() string {
  9174  	return awsutil.Prettify(s)
  9175  }
  9176  
  9177  // GoString returns the string representation.
  9178  //
  9179  // API parameter values that are decorated as "sensitive" in the API will not
  9180  // be included in the string output. The member name will be present, but the
  9181  // value will be replaced with "sensitive".
  9182  func (s ListStudioMembersInput) GoString() string {
  9183  	return s.String()
  9184  }
  9185  
  9186  // Validate inspects the fields of the type to determine if they are valid.
  9187  func (s *ListStudioMembersInput) Validate() error {
  9188  	invalidParams := request.ErrInvalidParams{Context: "ListStudioMembersInput"}
  9189  	if s.MaxResults != nil && *s.MaxResults < 1 {
  9190  		invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1))
  9191  	}
  9192  	if s.StudioId == nil {
  9193  		invalidParams.Add(request.NewErrParamRequired("StudioId"))
  9194  	}
  9195  	if s.StudioId != nil && len(*s.StudioId) < 1 {
  9196  		invalidParams.Add(request.NewErrParamMinLen("StudioId", 1))
  9197  	}
  9198  
  9199  	if invalidParams.Len() > 0 {
  9200  		return invalidParams
  9201  	}
  9202  	return nil
  9203  }
  9204  
  9205  // SetMaxResults sets the MaxResults field's value.
  9206  func (s *ListStudioMembersInput) SetMaxResults(v int64) *ListStudioMembersInput {
  9207  	s.MaxResults = &v
  9208  	return s
  9209  }
  9210  
  9211  // SetNextToken sets the NextToken field's value.
  9212  func (s *ListStudioMembersInput) SetNextToken(v string) *ListStudioMembersInput {
  9213  	s.NextToken = &v
  9214  	return s
  9215  }
  9216  
  9217  // SetStudioId sets the StudioId field's value.
  9218  func (s *ListStudioMembersInput) SetStudioId(v string) *ListStudioMembersInput {
  9219  	s.StudioId = &v
  9220  	return s
  9221  }
  9222  
  9223  type ListStudioMembersOutput struct {
  9224  	_ struct{} `type:"structure"`
  9225  
  9226  	Members []*StudioMembership `locationName:"members" type:"list"`
  9227  
  9228  	NextToken *string `locationName:"nextToken" type:"string"`
  9229  }
  9230  
  9231  // String returns the string representation.
  9232  //
  9233  // API parameter values that are decorated as "sensitive" in the API will not
  9234  // be included in the string output. The member name will be present, but the
  9235  // value will be replaced with "sensitive".
  9236  func (s ListStudioMembersOutput) String() string {
  9237  	return awsutil.Prettify(s)
  9238  }
  9239  
  9240  // GoString returns the string representation.
  9241  //
  9242  // API parameter values that are decorated as "sensitive" in the API will not
  9243  // be included in the string output. The member name will be present, but the
  9244  // value will be replaced with "sensitive".
  9245  func (s ListStudioMembersOutput) GoString() string {
  9246  	return s.String()
  9247  }
  9248  
  9249  // SetMembers sets the Members field's value.
  9250  func (s *ListStudioMembersOutput) SetMembers(v []*StudioMembership) *ListStudioMembersOutput {
  9251  	s.Members = v
  9252  	return s
  9253  }
  9254  
  9255  // SetNextToken sets the NextToken field's value.
  9256  func (s *ListStudioMembersOutput) SetNextToken(v string) *ListStudioMembersOutput {
  9257  	s.NextToken = &v
  9258  	return s
  9259  }
  9260  
  9261  type ListStudiosInput struct {
  9262  	_ struct{} `type:"structure" nopayload:"true"`
  9263  
  9264  	NextToken *string `location:"querystring" locationName:"nextToken" type:"string"`
  9265  }
  9266  
  9267  // String returns the string representation.
  9268  //
  9269  // API parameter values that are decorated as "sensitive" in the API will not
  9270  // be included in the string output. The member name will be present, but the
  9271  // value will be replaced with "sensitive".
  9272  func (s ListStudiosInput) String() string {
  9273  	return awsutil.Prettify(s)
  9274  }
  9275  
  9276  // GoString returns the string representation.
  9277  //
  9278  // API parameter values that are decorated as "sensitive" in the API will not
  9279  // be included in the string output. The member name will be present, but the
  9280  // value will be replaced with "sensitive".
  9281  func (s ListStudiosInput) GoString() string {
  9282  	return s.String()
  9283  }
  9284  
  9285  // SetNextToken sets the NextToken field's value.
  9286  func (s *ListStudiosInput) SetNextToken(v string) *ListStudiosInput {
  9287  	s.NextToken = &v
  9288  	return s
  9289  }
  9290  
  9291  type ListStudiosOutput struct {
  9292  	_ struct{} `type:"structure"`
  9293  
  9294  	NextToken *string `locationName:"nextToken" type:"string"`
  9295  
  9296  	Studios []*Studio `locationName:"studios" type:"list"`
  9297  }
  9298  
  9299  // String returns the string representation.
  9300  //
  9301  // API parameter values that are decorated as "sensitive" in the API will not
  9302  // be included in the string output. The member name will be present, but the
  9303  // value will be replaced with "sensitive".
  9304  func (s ListStudiosOutput) String() string {
  9305  	return awsutil.Prettify(s)
  9306  }
  9307  
  9308  // GoString returns the string representation.
  9309  //
  9310  // API parameter values that are decorated as "sensitive" in the API will not
  9311  // be included in the string output. The member name will be present, but the
  9312  // value will be replaced with "sensitive".
  9313  func (s ListStudiosOutput) GoString() string {
  9314  	return s.String()
  9315  }
  9316  
  9317  // SetNextToken sets the NextToken field's value.
  9318  func (s *ListStudiosOutput) SetNextToken(v string) *ListStudiosOutput {
  9319  	s.NextToken = &v
  9320  	return s
  9321  }
  9322  
  9323  // SetStudios sets the Studios field's value.
  9324  func (s *ListStudiosOutput) SetStudios(v []*Studio) *ListStudiosOutput {
  9325  	s.Studios = v
  9326  	return s
  9327  }
  9328  
  9329  type ListTagsForResourceInput struct {
  9330  	_ struct{} `type:"structure" nopayload:"true"`
  9331  
  9332  	// ResourceArn is a required field
  9333  	ResourceArn *string `location:"uri" locationName:"resourceArn" type:"string" required:"true"`
  9334  }
  9335  
  9336  // String returns the string representation.
  9337  //
  9338  // API parameter values that are decorated as "sensitive" in the API will not
  9339  // be included in the string output. The member name will be present, but the
  9340  // value will be replaced with "sensitive".
  9341  func (s ListTagsForResourceInput) String() string {
  9342  	return awsutil.Prettify(s)
  9343  }
  9344  
  9345  // GoString returns the string representation.
  9346  //
  9347  // API parameter values that are decorated as "sensitive" in the API will not
  9348  // be included in the string output. The member name will be present, but the
  9349  // value will be replaced with "sensitive".
  9350  func (s ListTagsForResourceInput) GoString() string {
  9351  	return s.String()
  9352  }
  9353  
  9354  // Validate inspects the fields of the type to determine if they are valid.
  9355  func (s *ListTagsForResourceInput) Validate() error {
  9356  	invalidParams := request.ErrInvalidParams{Context: "ListTagsForResourceInput"}
  9357  	if s.ResourceArn == nil {
  9358  		invalidParams.Add(request.NewErrParamRequired("ResourceArn"))
  9359  	}
  9360  	if s.ResourceArn != nil && len(*s.ResourceArn) < 1 {
  9361  		invalidParams.Add(request.NewErrParamMinLen("ResourceArn", 1))
  9362  	}
  9363  
  9364  	if invalidParams.Len() > 0 {
  9365  		return invalidParams
  9366  	}
  9367  	return nil
  9368  }
  9369  
  9370  // SetResourceArn sets the ResourceArn field's value.
  9371  func (s *ListTagsForResourceInput) SetResourceArn(v string) *ListTagsForResourceInput {
  9372  	s.ResourceArn = &v
  9373  	return s
  9374  }
  9375  
  9376  type ListTagsForResourceOutput struct {
  9377  	_ struct{} `type:"structure"`
  9378  
  9379  	Tags map[string]*string `locationName:"tags" type:"map"`
  9380  }
  9381  
  9382  // String returns the string representation.
  9383  //
  9384  // API parameter values that are decorated as "sensitive" in the API will not
  9385  // be included in the string output. The member name will be present, but the
  9386  // value will be replaced with "sensitive".
  9387  func (s ListTagsForResourceOutput) String() string {
  9388  	return awsutil.Prettify(s)
  9389  }
  9390  
  9391  // GoString returns the string representation.
  9392  //
  9393  // API parameter values that are decorated as "sensitive" in the API will not
  9394  // be included in the string output. The member name will be present, but the
  9395  // value will be replaced with "sensitive".
  9396  func (s ListTagsForResourceOutput) GoString() string {
  9397  	return s.String()
  9398  }
  9399  
  9400  // SetTags sets the Tags field's value.
  9401  func (s *ListTagsForResourceOutput) SetTags(v map[string]*string) *ListTagsForResourceOutput {
  9402  	s.Tags = v
  9403  	return s
  9404  }
  9405  
  9406  type NewLaunchProfileMember struct {
  9407  	_ struct{} `type:"structure"`
  9408  
  9409  	// Persona is a required field
  9410  	Persona *string `locationName:"persona" type:"string" required:"true" enum:"LaunchProfilePersona"`
  9411  
  9412  	// PrincipalId is a required field
  9413  	PrincipalId *string `locationName:"principalId" type:"string" required:"true"`
  9414  }
  9415  
  9416  // String returns the string representation.
  9417  //
  9418  // API parameter values that are decorated as "sensitive" in the API will not
  9419  // be included in the string output. The member name will be present, but the
  9420  // value will be replaced with "sensitive".
  9421  func (s NewLaunchProfileMember) String() string {
  9422  	return awsutil.Prettify(s)
  9423  }
  9424  
  9425  // GoString returns the string representation.
  9426  //
  9427  // API parameter values that are decorated as "sensitive" in the API will not
  9428  // be included in the string output. The member name will be present, but the
  9429  // value will be replaced with "sensitive".
  9430  func (s NewLaunchProfileMember) GoString() string {
  9431  	return s.String()
  9432  }
  9433  
  9434  // Validate inspects the fields of the type to determine if they are valid.
  9435  func (s *NewLaunchProfileMember) Validate() error {
  9436  	invalidParams := request.ErrInvalidParams{Context: "NewLaunchProfileMember"}
  9437  	if s.Persona == nil {
  9438  		invalidParams.Add(request.NewErrParamRequired("Persona"))
  9439  	}
  9440  	if s.PrincipalId == nil {
  9441  		invalidParams.Add(request.NewErrParamRequired("PrincipalId"))
  9442  	}
  9443  
  9444  	if invalidParams.Len() > 0 {
  9445  		return invalidParams
  9446  	}
  9447  	return nil
  9448  }
  9449  
  9450  // SetPersona sets the Persona field's value.
  9451  func (s *NewLaunchProfileMember) SetPersona(v string) *NewLaunchProfileMember {
  9452  	s.Persona = &v
  9453  	return s
  9454  }
  9455  
  9456  // SetPrincipalId sets the PrincipalId field's value.
  9457  func (s *NewLaunchProfileMember) SetPrincipalId(v string) *NewLaunchProfileMember {
  9458  	s.PrincipalId = &v
  9459  	return s
  9460  }
  9461  
  9462  type NewStudioMember struct {
  9463  	_ struct{} `type:"structure"`
  9464  
  9465  	// Persona is a required field
  9466  	Persona *string `locationName:"persona" type:"string" required:"true" enum:"StudioPersona"`
  9467  
  9468  	// PrincipalId is a required field
  9469  	PrincipalId *string `locationName:"principalId" type:"string" required:"true"`
  9470  }
  9471  
  9472  // String returns the string representation.
  9473  //
  9474  // API parameter values that are decorated as "sensitive" in the API will not
  9475  // be included in the string output. The member name will be present, but the
  9476  // value will be replaced with "sensitive".
  9477  func (s NewStudioMember) String() string {
  9478  	return awsutil.Prettify(s)
  9479  }
  9480  
  9481  // GoString returns the string representation.
  9482  //
  9483  // API parameter values that are decorated as "sensitive" in the API will not
  9484  // be included in the string output. The member name will be present, but the
  9485  // value will be replaced with "sensitive".
  9486  func (s NewStudioMember) GoString() string {
  9487  	return s.String()
  9488  }
  9489  
  9490  // Validate inspects the fields of the type to determine if they are valid.
  9491  func (s *NewStudioMember) Validate() error {
  9492  	invalidParams := request.ErrInvalidParams{Context: "NewStudioMember"}
  9493  	if s.Persona == nil {
  9494  		invalidParams.Add(request.NewErrParamRequired("Persona"))
  9495  	}
  9496  	if s.PrincipalId == nil {
  9497  		invalidParams.Add(request.NewErrParamRequired("PrincipalId"))
  9498  	}
  9499  
  9500  	if invalidParams.Len() > 0 {
  9501  		return invalidParams
  9502  	}
  9503  	return nil
  9504  }
  9505  
  9506  // SetPersona sets the Persona field's value.
  9507  func (s *NewStudioMember) SetPersona(v string) *NewStudioMember {
  9508  	s.Persona = &v
  9509  	return s
  9510  }
  9511  
  9512  // SetPrincipalId sets the PrincipalId field's value.
  9513  func (s *NewStudioMember) SetPrincipalId(v string) *NewStudioMember {
  9514  	s.PrincipalId = &v
  9515  	return s
  9516  }
  9517  
  9518  type PutLaunchProfileMembersInput struct {
  9519  	_ struct{} `type:"structure"`
  9520  
  9521  	ClientToken *string `location:"header" locationName:"X-Amz-Client-Token" min:"1" type:"string" idempotencyToken:"true"`
  9522  
  9523  	// IdentityStoreId is a required field
  9524  	IdentityStoreId *string `locationName:"identityStoreId" type:"string" required:"true"`
  9525  
  9526  	// LaunchProfileId is a required field
  9527  	LaunchProfileId *string `location:"uri" locationName:"launchProfileId" type:"string" required:"true"`
  9528  
  9529  	// Members is a required field
  9530  	Members []*NewLaunchProfileMember `locationName:"members" min:"1" type:"list" required:"true"`
  9531  
  9532  	// StudioId is a required field
  9533  	StudioId *string `location:"uri" locationName:"studioId" type:"string" required:"true"`
  9534  }
  9535  
  9536  // String returns the string representation.
  9537  //
  9538  // API parameter values that are decorated as "sensitive" in the API will not
  9539  // be included in the string output. The member name will be present, but the
  9540  // value will be replaced with "sensitive".
  9541  func (s PutLaunchProfileMembersInput) String() string {
  9542  	return awsutil.Prettify(s)
  9543  }
  9544  
  9545  // GoString returns the string representation.
  9546  //
  9547  // API parameter values that are decorated as "sensitive" in the API will not
  9548  // be included in the string output. The member name will be present, but the
  9549  // value will be replaced with "sensitive".
  9550  func (s PutLaunchProfileMembersInput) GoString() string {
  9551  	return s.String()
  9552  }
  9553  
  9554  // Validate inspects the fields of the type to determine if they are valid.
  9555  func (s *PutLaunchProfileMembersInput) Validate() error {
  9556  	invalidParams := request.ErrInvalidParams{Context: "PutLaunchProfileMembersInput"}
  9557  	if s.ClientToken != nil && len(*s.ClientToken) < 1 {
  9558  		invalidParams.Add(request.NewErrParamMinLen("ClientToken", 1))
  9559  	}
  9560  	if s.IdentityStoreId == nil {
  9561  		invalidParams.Add(request.NewErrParamRequired("IdentityStoreId"))
  9562  	}
  9563  	if s.LaunchProfileId == nil {
  9564  		invalidParams.Add(request.NewErrParamRequired("LaunchProfileId"))
  9565  	}
  9566  	if s.LaunchProfileId != nil && len(*s.LaunchProfileId) < 1 {
  9567  		invalidParams.Add(request.NewErrParamMinLen("LaunchProfileId", 1))
  9568  	}
  9569  	if s.Members == nil {
  9570  		invalidParams.Add(request.NewErrParamRequired("Members"))
  9571  	}
  9572  	if s.Members != nil && len(s.Members) < 1 {
  9573  		invalidParams.Add(request.NewErrParamMinLen("Members", 1))
  9574  	}
  9575  	if s.StudioId == nil {
  9576  		invalidParams.Add(request.NewErrParamRequired("StudioId"))
  9577  	}
  9578  	if s.StudioId != nil && len(*s.StudioId) < 1 {
  9579  		invalidParams.Add(request.NewErrParamMinLen("StudioId", 1))
  9580  	}
  9581  	if s.Members != nil {
  9582  		for i, v := range s.Members {
  9583  			if v == nil {
  9584  				continue
  9585  			}
  9586  			if err := v.Validate(); err != nil {
  9587  				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Members", i), err.(request.ErrInvalidParams))
  9588  			}
  9589  		}
  9590  	}
  9591  
  9592  	if invalidParams.Len() > 0 {
  9593  		return invalidParams
  9594  	}
  9595  	return nil
  9596  }
  9597  
  9598  // SetClientToken sets the ClientToken field's value.
  9599  func (s *PutLaunchProfileMembersInput) SetClientToken(v string) *PutLaunchProfileMembersInput {
  9600  	s.ClientToken = &v
  9601  	return s
  9602  }
  9603  
  9604  // SetIdentityStoreId sets the IdentityStoreId field's value.
  9605  func (s *PutLaunchProfileMembersInput) SetIdentityStoreId(v string) *PutLaunchProfileMembersInput {
  9606  	s.IdentityStoreId = &v
  9607  	return s
  9608  }
  9609  
  9610  // SetLaunchProfileId sets the LaunchProfileId field's value.
  9611  func (s *PutLaunchProfileMembersInput) SetLaunchProfileId(v string) *PutLaunchProfileMembersInput {
  9612  	s.LaunchProfileId = &v
  9613  	return s
  9614  }
  9615  
  9616  // SetMembers sets the Members field's value.
  9617  func (s *PutLaunchProfileMembersInput) SetMembers(v []*NewLaunchProfileMember) *PutLaunchProfileMembersInput {
  9618  	s.Members = v
  9619  	return s
  9620  }
  9621  
  9622  // SetStudioId sets the StudioId field's value.
  9623  func (s *PutLaunchProfileMembersInput) SetStudioId(v string) *PutLaunchProfileMembersInput {
  9624  	s.StudioId = &v
  9625  	return s
  9626  }
  9627  
  9628  type PutLaunchProfileMembersOutput struct {
  9629  	_ struct{} `type:"structure" nopayload:"true"`
  9630  }
  9631  
  9632  // String returns the string representation.
  9633  //
  9634  // API parameter values that are decorated as "sensitive" in the API will not
  9635  // be included in the string output. The member name will be present, but the
  9636  // value will be replaced with "sensitive".
  9637  func (s PutLaunchProfileMembersOutput) String() string {
  9638  	return awsutil.Prettify(s)
  9639  }
  9640  
  9641  // GoString returns the string representation.
  9642  //
  9643  // API parameter values that are decorated as "sensitive" in the API will not
  9644  // be included in the string output. The member name will be present, but the
  9645  // value will be replaced with "sensitive".
  9646  func (s PutLaunchProfileMembersOutput) GoString() string {
  9647  	return s.String()
  9648  }
  9649  
  9650  type PutStudioMembersInput struct {
  9651  	_ struct{} `type:"structure"`
  9652  
  9653  	ClientToken *string `location:"header" locationName:"X-Amz-Client-Token" min:"1" type:"string" idempotencyToken:"true"`
  9654  
  9655  	// IdentityStoreId is a required field
  9656  	IdentityStoreId *string `locationName:"identityStoreId" type:"string" required:"true"`
  9657  
  9658  	// Members is a required field
  9659  	Members []*NewStudioMember `locationName:"members" min:"1" type:"list" required:"true"`
  9660  
  9661  	// StudioId is a required field
  9662  	StudioId *string `location:"uri" locationName:"studioId" type:"string" required:"true"`
  9663  }
  9664  
  9665  // String returns the string representation.
  9666  //
  9667  // API parameter values that are decorated as "sensitive" in the API will not
  9668  // be included in the string output. The member name will be present, but the
  9669  // value will be replaced with "sensitive".
  9670  func (s PutStudioMembersInput) String() string {
  9671  	return awsutil.Prettify(s)
  9672  }
  9673  
  9674  // GoString returns the string representation.
  9675  //
  9676  // API parameter values that are decorated as "sensitive" in the API will not
  9677  // be included in the string output. The member name will be present, but the
  9678  // value will be replaced with "sensitive".
  9679  func (s PutStudioMembersInput) GoString() string {
  9680  	return s.String()
  9681  }
  9682  
  9683  // Validate inspects the fields of the type to determine if they are valid.
  9684  func (s *PutStudioMembersInput) Validate() error {
  9685  	invalidParams := request.ErrInvalidParams{Context: "PutStudioMembersInput"}
  9686  	if s.ClientToken != nil && len(*s.ClientToken) < 1 {
  9687  		invalidParams.Add(request.NewErrParamMinLen("ClientToken", 1))
  9688  	}
  9689  	if s.IdentityStoreId == nil {
  9690  		invalidParams.Add(request.NewErrParamRequired("IdentityStoreId"))
  9691  	}
  9692  	if s.Members == nil {
  9693  		invalidParams.Add(request.NewErrParamRequired("Members"))
  9694  	}
  9695  	if s.Members != nil && len(s.Members) < 1 {
  9696  		invalidParams.Add(request.NewErrParamMinLen("Members", 1))
  9697  	}
  9698  	if s.StudioId == nil {
  9699  		invalidParams.Add(request.NewErrParamRequired("StudioId"))
  9700  	}
  9701  	if s.StudioId != nil && len(*s.StudioId) < 1 {
  9702  		invalidParams.Add(request.NewErrParamMinLen("StudioId", 1))
  9703  	}
  9704  	if s.Members != nil {
  9705  		for i, v := range s.Members {
  9706  			if v == nil {
  9707  				continue
  9708  			}
  9709  			if err := v.Validate(); err != nil {
  9710  				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Members", i), err.(request.ErrInvalidParams))
  9711  			}
  9712  		}
  9713  	}
  9714  
  9715  	if invalidParams.Len() > 0 {
  9716  		return invalidParams
  9717  	}
  9718  	return nil
  9719  }
  9720  
  9721  // SetClientToken sets the ClientToken field's value.
  9722  func (s *PutStudioMembersInput) SetClientToken(v string) *PutStudioMembersInput {
  9723  	s.ClientToken = &v
  9724  	return s
  9725  }
  9726  
  9727  // SetIdentityStoreId sets the IdentityStoreId field's value.
  9728  func (s *PutStudioMembersInput) SetIdentityStoreId(v string) *PutStudioMembersInput {
  9729  	s.IdentityStoreId = &v
  9730  	return s
  9731  }
  9732  
  9733  // SetMembers sets the Members field's value.
  9734  func (s *PutStudioMembersInput) SetMembers(v []*NewStudioMember) *PutStudioMembersInput {
  9735  	s.Members = v
  9736  	return s
  9737  }
  9738  
  9739  // SetStudioId sets the StudioId field's value.
  9740  func (s *PutStudioMembersInput) SetStudioId(v string) *PutStudioMembersInput {
  9741  	s.StudioId = &v
  9742  	return s
  9743  }
  9744  
  9745  type PutStudioMembersOutput struct {
  9746  	_ struct{} `type:"structure" nopayload:"true"`
  9747  }
  9748  
  9749  // String returns the string representation.
  9750  //
  9751  // API parameter values that are decorated as "sensitive" in the API will not
  9752  // be included in the string output. The member name will be present, but the
  9753  // value will be replaced with "sensitive".
  9754  func (s PutStudioMembersOutput) String() string {
  9755  	return awsutil.Prettify(s)
  9756  }
  9757  
  9758  // GoString returns the string representation.
  9759  //
  9760  // API parameter values that are decorated as "sensitive" in the API will not
  9761  // be included in the string output. The member name will be present, but the
  9762  // value will be replaced with "sensitive".
  9763  func (s PutStudioMembersOutput) GoString() string {
  9764  	return s.String()
  9765  }
  9766  
  9767  type ResourceNotFoundException struct {
  9768  	_            struct{}                  `type:"structure"`
  9769  	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
  9770  
  9771  	Code_ *string `locationName:"code" type:"string"`
  9772  
  9773  	// ExceptionContext is a set of key-value pairs that provide you with more information
  9774  	// about the error that occurred. For example, when the service returns a 404
  9775  	// ResourceNotFound error, ExceptionContext will contain the key `resourceId`
  9776  	// with the value of resource that was not found.
  9777  	//
  9778  	// ExceptionContext enables scripts and other programmatic clients to provide
  9779  	// for better error handling.
  9780  	Context map[string]*string `locationName:"context" type:"map"`
  9781  
  9782  	Message_ *string `locationName:"message" type:"string"`
  9783  }
  9784  
  9785  // String returns the string representation.
  9786  //
  9787  // API parameter values that are decorated as "sensitive" in the API will not
  9788  // be included in the string output. The member name will be present, but the
  9789  // value will be replaced with "sensitive".
  9790  func (s ResourceNotFoundException) String() string {
  9791  	return awsutil.Prettify(s)
  9792  }
  9793  
  9794  // GoString returns the string representation.
  9795  //
  9796  // API parameter values that are decorated as "sensitive" in the API will not
  9797  // be included in the string output. The member name will be present, but the
  9798  // value will be replaced with "sensitive".
  9799  func (s ResourceNotFoundException) GoString() string {
  9800  	return s.String()
  9801  }
  9802  
  9803  func newErrorResourceNotFoundException(v protocol.ResponseMetadata) error {
  9804  	return &ResourceNotFoundException{
  9805  		RespMetadata: v,
  9806  	}
  9807  }
  9808  
  9809  // Code returns the exception type name.
  9810  func (s *ResourceNotFoundException) Code() string {
  9811  	return "ResourceNotFoundException"
  9812  }
  9813  
  9814  // Message returns the exception's message.
  9815  func (s *ResourceNotFoundException) Message() string {
  9816  	if s.Message_ != nil {
  9817  		return *s.Message_
  9818  	}
  9819  	return ""
  9820  }
  9821  
  9822  // OrigErr always returns nil, satisfies awserr.Error interface.
  9823  func (s *ResourceNotFoundException) OrigErr() error {
  9824  	return nil
  9825  }
  9826  
  9827  func (s *ResourceNotFoundException) Error() string {
  9828  	return fmt.Sprintf("%s: %s\n%s", s.Code(), s.Message(), s.String())
  9829  }
  9830  
  9831  // Status code returns the HTTP status code for the request's response error.
  9832  func (s *ResourceNotFoundException) StatusCode() int {
  9833  	return s.RespMetadata.StatusCode
  9834  }
  9835  
  9836  // RequestID returns the service's response RequestID for request.
  9837  func (s *ResourceNotFoundException) RequestID() string {
  9838  	return s.RespMetadata.RequestID
  9839  }
  9840  
  9841  // A parameter for a studio component script, in the form of a key:value pair.
  9842  type ScriptParameterKeyValue struct {
  9843  	_ struct{} `type:"structure"`
  9844  
  9845  	// A script parameter key.
  9846  	Key *string `locationName:"key" min:"1" type:"string"`
  9847  
  9848  	// A script parameter value.
  9849  	Value *string `locationName:"value" min:"1" type:"string"`
  9850  }
  9851  
  9852  // String returns the string representation.
  9853  //
  9854  // API parameter values that are decorated as "sensitive" in the API will not
  9855  // be included in the string output. The member name will be present, but the
  9856  // value will be replaced with "sensitive".
  9857  func (s ScriptParameterKeyValue) String() string {
  9858  	return awsutil.Prettify(s)
  9859  }
  9860  
  9861  // GoString returns the string representation.
  9862  //
  9863  // API parameter values that are decorated as "sensitive" in the API will not
  9864  // be included in the string output. The member name will be present, but the
  9865  // value will be replaced with "sensitive".
  9866  func (s ScriptParameterKeyValue) GoString() string {
  9867  	return s.String()
  9868  }
  9869  
  9870  // Validate inspects the fields of the type to determine if they are valid.
  9871  func (s *ScriptParameterKeyValue) Validate() error {
  9872  	invalidParams := request.ErrInvalidParams{Context: "ScriptParameterKeyValue"}
  9873  	if s.Key != nil && len(*s.Key) < 1 {
  9874  		invalidParams.Add(request.NewErrParamMinLen("Key", 1))
  9875  	}
  9876  	if s.Value != nil && len(*s.Value) < 1 {
  9877  		invalidParams.Add(request.NewErrParamMinLen("Value", 1))
  9878  	}
  9879  
  9880  	if invalidParams.Len() > 0 {
  9881  		return invalidParams
  9882  	}
  9883  	return nil
  9884  }
  9885  
  9886  // SetKey sets the Key field's value.
  9887  func (s *ScriptParameterKeyValue) SetKey(v string) *ScriptParameterKeyValue {
  9888  	s.Key = &v
  9889  	return s
  9890  }
  9891  
  9892  // SetValue sets the Value field's value.
  9893  func (s *ScriptParameterKeyValue) SetValue(v string) *ScriptParameterKeyValue {
  9894  	s.Value = &v
  9895  	return s
  9896  }
  9897  
  9898  type ServiceQuotaExceededException struct {
  9899  	_            struct{}                  `type:"structure"`
  9900  	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
  9901  
  9902  	Code_ *string `locationName:"code" type:"string"`
  9903  
  9904  	// ExceptionContext is a set of key-value pairs that provide you with more information
  9905  	// about the error that occurred. For example, when the service returns a 404
  9906  	// ResourceNotFound error, ExceptionContext will contain the key `resourceId`
  9907  	// with the value of resource that was not found.
  9908  	//
  9909  	// ExceptionContext enables scripts and other programmatic clients to provide
  9910  	// for better error handling.
  9911  	Context map[string]*string `locationName:"context" type:"map"`
  9912  
  9913  	Message_ *string `locationName:"message" type:"string"`
  9914  }
  9915  
  9916  // String returns the string representation.
  9917  //
  9918  // API parameter values that are decorated as "sensitive" in the API will not
  9919  // be included in the string output. The member name will be present, but the
  9920  // value will be replaced with "sensitive".
  9921  func (s ServiceQuotaExceededException) String() string {
  9922  	return awsutil.Prettify(s)
  9923  }
  9924  
  9925  // GoString returns the string representation.
  9926  //
  9927  // API parameter values that are decorated as "sensitive" in the API will not
  9928  // be included in the string output. The member name will be present, but the
  9929  // value will be replaced with "sensitive".
  9930  func (s ServiceQuotaExceededException) GoString() string {
  9931  	return s.String()
  9932  }
  9933  
  9934  func newErrorServiceQuotaExceededException(v protocol.ResponseMetadata) error {
  9935  	return &ServiceQuotaExceededException{
  9936  		RespMetadata: v,
  9937  	}
  9938  }
  9939  
  9940  // Code returns the exception type name.
  9941  func (s *ServiceQuotaExceededException) Code() string {
  9942  	return "ServiceQuotaExceededException"
  9943  }
  9944  
  9945  // Message returns the exception's message.
  9946  func (s *ServiceQuotaExceededException) Message() string {
  9947  	if s.Message_ != nil {
  9948  		return *s.Message_
  9949  	}
  9950  	return ""
  9951  }
  9952  
  9953  // OrigErr always returns nil, satisfies awserr.Error interface.
  9954  func (s *ServiceQuotaExceededException) OrigErr() error {
  9955  	return nil
  9956  }
  9957  
  9958  func (s *ServiceQuotaExceededException) Error() string {
  9959  	return fmt.Sprintf("%s: %s\n%s", s.Code(), s.Message(), s.String())
  9960  }
  9961  
  9962  // Status code returns the HTTP status code for the request's response error.
  9963  func (s *ServiceQuotaExceededException) StatusCode() int {
  9964  	return s.RespMetadata.StatusCode
  9965  }
  9966  
  9967  // RequestID returns the service's response RequestID for request.
  9968  func (s *ServiceQuotaExceededException) RequestID() string {
  9969  	return s.RespMetadata.RequestID
  9970  }
  9971  
  9972  // The configuration for a shared file storage system that is associated with
  9973  // a studio resource.
  9974  type SharedFileSystemConfiguration struct {
  9975  	_ struct{} `type:"structure"`
  9976  
  9977  	Endpoint *string `locationName:"endpoint" type:"string"`
  9978  
  9979  	FileSystemId *string `locationName:"fileSystemId" type:"string"`
  9980  
  9981  	LinuxMountPoint *string `locationName:"linuxMountPoint" type:"string"`
  9982  
  9983  	ShareName *string `locationName:"shareName" type:"string"`
  9984  
  9985  	WindowsMountDrive *string `locationName:"windowsMountDrive" type:"string"`
  9986  }
  9987  
  9988  // String returns the string representation.
  9989  //
  9990  // API parameter values that are decorated as "sensitive" in the API will not
  9991  // be included in the string output. The member name will be present, but the
  9992  // value will be replaced with "sensitive".
  9993  func (s SharedFileSystemConfiguration) String() string {
  9994  	return awsutil.Prettify(s)
  9995  }
  9996  
  9997  // GoString returns the string representation.
  9998  //
  9999  // API parameter values that are decorated as "sensitive" in the API will not
 10000  // be included in the string output. The member name will be present, but the
 10001  // value will be replaced with "sensitive".
 10002  func (s SharedFileSystemConfiguration) GoString() string {
 10003  	return s.String()
 10004  }
 10005  
 10006  // SetEndpoint sets the Endpoint field's value.
 10007  func (s *SharedFileSystemConfiguration) SetEndpoint(v string) *SharedFileSystemConfiguration {
 10008  	s.Endpoint = &v
 10009  	return s
 10010  }
 10011  
 10012  // SetFileSystemId sets the FileSystemId field's value.
 10013  func (s *SharedFileSystemConfiguration) SetFileSystemId(v string) *SharedFileSystemConfiguration {
 10014  	s.FileSystemId = &v
 10015  	return s
 10016  }
 10017  
 10018  // SetLinuxMountPoint sets the LinuxMountPoint field's value.
 10019  func (s *SharedFileSystemConfiguration) SetLinuxMountPoint(v string) *SharedFileSystemConfiguration {
 10020  	s.LinuxMountPoint = &v
 10021  	return s
 10022  }
 10023  
 10024  // SetShareName sets the ShareName field's value.
 10025  func (s *SharedFileSystemConfiguration) SetShareName(v string) *SharedFileSystemConfiguration {
 10026  	s.ShareName = &v
 10027  	return s
 10028  }
 10029  
 10030  // SetWindowsMountDrive sets the WindowsMountDrive field's value.
 10031  func (s *SharedFileSystemConfiguration) SetWindowsMountDrive(v string) *SharedFileSystemConfiguration {
 10032  	s.WindowsMountDrive = &v
 10033  	return s
 10034  }
 10035  
 10036  type StartStudioSSOConfigurationRepairInput struct {
 10037  	_ struct{} `type:"structure" nopayload:"true"`
 10038  
 10039  	ClientToken *string `location:"header" locationName:"X-Amz-Client-Token" min:"1" type:"string" idempotencyToken:"true"`
 10040  
 10041  	// StudioId is a required field
 10042  	StudioId *string `location:"uri" locationName:"studioId" type:"string" required:"true"`
 10043  }
 10044  
 10045  // String returns the string representation.
 10046  //
 10047  // API parameter values that are decorated as "sensitive" in the API will not
 10048  // be included in the string output. The member name will be present, but the
 10049  // value will be replaced with "sensitive".
 10050  func (s StartStudioSSOConfigurationRepairInput) String() string {
 10051  	return awsutil.Prettify(s)
 10052  }
 10053  
 10054  // GoString returns the string representation.
 10055  //
 10056  // API parameter values that are decorated as "sensitive" in the API will not
 10057  // be included in the string output. The member name will be present, but the
 10058  // value will be replaced with "sensitive".
 10059  func (s StartStudioSSOConfigurationRepairInput) GoString() string {
 10060  	return s.String()
 10061  }
 10062  
 10063  // Validate inspects the fields of the type to determine if they are valid.
 10064  func (s *StartStudioSSOConfigurationRepairInput) Validate() error {
 10065  	invalidParams := request.ErrInvalidParams{Context: "StartStudioSSOConfigurationRepairInput"}
 10066  	if s.ClientToken != nil && len(*s.ClientToken) < 1 {
 10067  		invalidParams.Add(request.NewErrParamMinLen("ClientToken", 1))
 10068  	}
 10069  	if s.StudioId == nil {
 10070  		invalidParams.Add(request.NewErrParamRequired("StudioId"))
 10071  	}
 10072  	if s.StudioId != nil && len(*s.StudioId) < 1 {
 10073  		invalidParams.Add(request.NewErrParamMinLen("StudioId", 1))
 10074  	}
 10075  
 10076  	if invalidParams.Len() > 0 {
 10077  		return invalidParams
 10078  	}
 10079  	return nil
 10080  }
 10081  
 10082  // SetClientToken sets the ClientToken field's value.
 10083  func (s *StartStudioSSOConfigurationRepairInput) SetClientToken(v string) *StartStudioSSOConfigurationRepairInput {
 10084  	s.ClientToken = &v
 10085  	return s
 10086  }
 10087  
 10088  // SetStudioId sets the StudioId field's value.
 10089  func (s *StartStudioSSOConfigurationRepairInput) SetStudioId(v string) *StartStudioSSOConfigurationRepairInput {
 10090  	s.StudioId = &v
 10091  	return s
 10092  }
 10093  
 10094  type StartStudioSSOConfigurationRepairOutput struct {
 10095  	_ struct{} `type:"structure"`
 10096  
 10097  	Studio *Studio `locationName:"studio" type:"structure"`
 10098  }
 10099  
 10100  // String returns the string representation.
 10101  //
 10102  // API parameter values that are decorated as "sensitive" in the API will not
 10103  // be included in the string output. The member name will be present, but the
 10104  // value will be replaced with "sensitive".
 10105  func (s StartStudioSSOConfigurationRepairOutput) String() string {
 10106  	return awsutil.Prettify(s)
 10107  }
 10108  
 10109  // GoString returns the string representation.
 10110  //
 10111  // API parameter values that are decorated as "sensitive" in the API will not
 10112  // be included in the string output. The member name will be present, but the
 10113  // value will be replaced with "sensitive".
 10114  func (s StartStudioSSOConfigurationRepairOutput) GoString() string {
 10115  	return s.String()
 10116  }
 10117  
 10118  // SetStudio sets the Studio field's value.
 10119  func (s *StartStudioSSOConfigurationRepairOutput) SetStudio(v *Studio) *StartStudioSSOConfigurationRepairOutput {
 10120  	s.Studio = v
 10121  	return s
 10122  }
 10123  
 10124  // A configuration for a streaming session.
 10125  type StreamConfiguration struct {
 10126  	_ struct{} `type:"structure"`
 10127  
 10128  	ClipboardMode *string `locationName:"clipboardMode" type:"string" enum:"StreamingClipboardMode"`
 10129  
 10130  	// The EC2 instance types that users can select from when launching a streaming
 10131  	// session with this launch profile.
 10132  	Ec2InstanceTypes []*string `locationName:"ec2InstanceTypes" min:"1" type:"list"`
 10133  
 10134  	MaxSessionLengthInMinutes *int64 `locationName:"maxSessionLengthInMinutes" min:"1" type:"integer"`
 10135  
 10136  	// A list of streaming image IDs that users can select from when launching a
 10137  	// streaming session with this launch profile.
 10138  	StreamingImageIds []*string `locationName:"streamingImageIds" type:"list"`
 10139  }
 10140  
 10141  // String returns the string representation.
 10142  //
 10143  // API parameter values that are decorated as "sensitive" in the API will not
 10144  // be included in the string output. The member name will be present, but the
 10145  // value will be replaced with "sensitive".
 10146  func (s StreamConfiguration) String() string {
 10147  	return awsutil.Prettify(s)
 10148  }
 10149  
 10150  // GoString returns the string representation.
 10151  //
 10152  // API parameter values that are decorated as "sensitive" in the API will not
 10153  // be included in the string output. The member name will be present, but the
 10154  // value will be replaced with "sensitive".
 10155  func (s StreamConfiguration) GoString() string {
 10156  	return s.String()
 10157  }
 10158  
 10159  // SetClipboardMode sets the ClipboardMode field's value.
 10160  func (s *StreamConfiguration) SetClipboardMode(v string) *StreamConfiguration {
 10161  	s.ClipboardMode = &v
 10162  	return s
 10163  }
 10164  
 10165  // SetEc2InstanceTypes sets the Ec2InstanceTypes field's value.
 10166  func (s *StreamConfiguration) SetEc2InstanceTypes(v []*string) *StreamConfiguration {
 10167  	s.Ec2InstanceTypes = v
 10168  	return s
 10169  }
 10170  
 10171  // SetMaxSessionLengthInMinutes sets the MaxSessionLengthInMinutes field's value.
 10172  func (s *StreamConfiguration) SetMaxSessionLengthInMinutes(v int64) *StreamConfiguration {
 10173  	s.MaxSessionLengthInMinutes = &v
 10174  	return s
 10175  }
 10176  
 10177  // SetStreamingImageIds sets the StreamingImageIds field's value.
 10178  func (s *StreamConfiguration) SetStreamingImageIds(v []*string) *StreamConfiguration {
 10179  	s.StreamingImageIds = v
 10180  	return s
 10181  }
 10182  
 10183  type StreamConfigurationCreate struct {
 10184  	_ struct{} `type:"structure"`
 10185  
 10186  	// ClipboardMode is a required field
 10187  	ClipboardMode *string `locationName:"clipboardMode" type:"string" required:"true" enum:"StreamingClipboardMode"`
 10188  
 10189  	// The EC2 instance types that users can select from when launching a streaming
 10190  	// session with this launch profile.
 10191  	//
 10192  	// Ec2InstanceTypes is a required field
 10193  	Ec2InstanceTypes []*string `locationName:"ec2InstanceTypes" min:"1" type:"list" required:"true"`
 10194  
 10195  	MaxSessionLengthInMinutes *int64 `locationName:"maxSessionLengthInMinutes" min:"1" type:"integer"`
 10196  
 10197  	// A list of streaming image IDs that users can select from when launching a
 10198  	// streaming session with this launch profile.
 10199  	//
 10200  	// StreamingImageIds is a required field
 10201  	StreamingImageIds []*string `locationName:"streamingImageIds" type:"list" required:"true"`
 10202  }
 10203  
 10204  // String returns the string representation.
 10205  //
 10206  // API parameter values that are decorated as "sensitive" in the API will not
 10207  // be included in the string output. The member name will be present, but the
 10208  // value will be replaced with "sensitive".
 10209  func (s StreamConfigurationCreate) String() string {
 10210  	return awsutil.Prettify(s)
 10211  }
 10212  
 10213  // GoString returns the string representation.
 10214  //
 10215  // API parameter values that are decorated as "sensitive" in the API will not
 10216  // be included in the string output. The member name will be present, but the
 10217  // value will be replaced with "sensitive".
 10218  func (s StreamConfigurationCreate) GoString() string {
 10219  	return s.String()
 10220  }
 10221  
 10222  // Validate inspects the fields of the type to determine if they are valid.
 10223  func (s *StreamConfigurationCreate) Validate() error {
 10224  	invalidParams := request.ErrInvalidParams{Context: "StreamConfigurationCreate"}
 10225  	if s.ClipboardMode == nil {
 10226  		invalidParams.Add(request.NewErrParamRequired("ClipboardMode"))
 10227  	}
 10228  	if s.Ec2InstanceTypes == nil {
 10229  		invalidParams.Add(request.NewErrParamRequired("Ec2InstanceTypes"))
 10230  	}
 10231  	if s.Ec2InstanceTypes != nil && len(s.Ec2InstanceTypes) < 1 {
 10232  		invalidParams.Add(request.NewErrParamMinLen("Ec2InstanceTypes", 1))
 10233  	}
 10234  	if s.MaxSessionLengthInMinutes != nil && *s.MaxSessionLengthInMinutes < 1 {
 10235  		invalidParams.Add(request.NewErrParamMinValue("MaxSessionLengthInMinutes", 1))
 10236  	}
 10237  	if s.StreamingImageIds == nil {
 10238  		invalidParams.Add(request.NewErrParamRequired("StreamingImageIds"))
 10239  	}
 10240  
 10241  	if invalidParams.Len() > 0 {
 10242  		return invalidParams
 10243  	}
 10244  	return nil
 10245  }
 10246  
 10247  // SetClipboardMode sets the ClipboardMode field's value.
 10248  func (s *StreamConfigurationCreate) SetClipboardMode(v string) *StreamConfigurationCreate {
 10249  	s.ClipboardMode = &v
 10250  	return s
 10251  }
 10252  
 10253  // SetEc2InstanceTypes sets the Ec2InstanceTypes field's value.
 10254  func (s *StreamConfigurationCreate) SetEc2InstanceTypes(v []*string) *StreamConfigurationCreate {
 10255  	s.Ec2InstanceTypes = v
 10256  	return s
 10257  }
 10258  
 10259  // SetMaxSessionLengthInMinutes sets the MaxSessionLengthInMinutes field's value.
 10260  func (s *StreamConfigurationCreate) SetMaxSessionLengthInMinutes(v int64) *StreamConfigurationCreate {
 10261  	s.MaxSessionLengthInMinutes = &v
 10262  	return s
 10263  }
 10264  
 10265  // SetStreamingImageIds sets the StreamingImageIds field's value.
 10266  func (s *StreamConfigurationCreate) SetStreamingImageIds(v []*string) *StreamConfigurationCreate {
 10267  	s.StreamingImageIds = v
 10268  	return s
 10269  }
 10270  
 10271  type StreamingImage struct {
 10272  	_ struct{} `type:"structure"`
 10273  
 10274  	Arn *string `locationName:"arn" type:"string"`
 10275  
 10276  	// The description.
 10277  	Description *string `locationName:"description" type:"string"`
 10278  
 10279  	Ec2ImageId *string `locationName:"ec2ImageId" type:"string"`
 10280  
 10281  	EncryptionConfiguration *StreamingImageEncryptionConfiguration `locationName:"encryptionConfiguration" type:"structure"`
 10282  
 10283  	EulaIds []*string `locationName:"eulaIds" type:"list"`
 10284  
 10285  	// A friendly name for a streaming image resource.
 10286  	Name *string `locationName:"name" type:"string"`
 10287  
 10288  	// StreamingImageOwner is the owner of a particular streaming image.
 10289  	//
 10290  	// This string is either the studioId that contains the streaming image, or
 10291  	// the word 'AMAZON' for images provided by Nimble Studio.
 10292  	Owner *string `locationName:"owner" type:"string"`
 10293  
 10294  	// The platform of this Streaming Image, either WINDOWS or LINUX.
 10295  	Platform *string `locationName:"platform" type:"string"`
 10296  
 10297  	State *string `locationName:"state" type:"string" enum:"StreamingImageState"`
 10298  
 10299  	// The status code.
 10300  	StatusCode *string `locationName:"statusCode" type:"string" enum:"StreamingImageStatusCode"`
 10301  
 10302  	StatusMessage *string `locationName:"statusMessage" type:"string"`
 10303  
 10304  	StreamingImageId *string `locationName:"streamingImageId" type:"string"`
 10305  
 10306  	Tags map[string]*string `locationName:"tags" type:"map"`
 10307  }
 10308  
 10309  // String returns the string representation.
 10310  //
 10311  // API parameter values that are decorated as "sensitive" in the API will not
 10312  // be included in the string output. The member name will be present, but the
 10313  // value will be replaced with "sensitive".
 10314  func (s StreamingImage) String() string {
 10315  	return awsutil.Prettify(s)
 10316  }
 10317  
 10318  // GoString returns the string representation.
 10319  //
 10320  // API parameter values that are decorated as "sensitive" in the API will not
 10321  // be included in the string output. The member name will be present, but the
 10322  // value will be replaced with "sensitive".
 10323  func (s StreamingImage) GoString() string {
 10324  	return s.String()
 10325  }
 10326  
 10327  // SetArn sets the Arn field's value.
 10328  func (s *StreamingImage) SetArn(v string) *StreamingImage {
 10329  	s.Arn = &v
 10330  	return s
 10331  }
 10332  
 10333  // SetDescription sets the Description field's value.
 10334  func (s *StreamingImage) SetDescription(v string) *StreamingImage {
 10335  	s.Description = &v
 10336  	return s
 10337  }
 10338  
 10339  // SetEc2ImageId sets the Ec2ImageId field's value.
 10340  func (s *StreamingImage) SetEc2ImageId(v string) *StreamingImage {
 10341  	s.Ec2ImageId = &v
 10342  	return s
 10343  }
 10344  
 10345  // SetEncryptionConfiguration sets the EncryptionConfiguration field's value.
 10346  func (s *StreamingImage) SetEncryptionConfiguration(v *StreamingImageEncryptionConfiguration) *StreamingImage {
 10347  	s.EncryptionConfiguration = v
 10348  	return s
 10349  }
 10350  
 10351  // SetEulaIds sets the EulaIds field's value.
 10352  func (s *StreamingImage) SetEulaIds(v []*string) *StreamingImage {
 10353  	s.EulaIds = v
 10354  	return s
 10355  }
 10356  
 10357  // SetName sets the Name field's value.
 10358  func (s *StreamingImage) SetName(v string) *StreamingImage {
 10359  	s.Name = &v
 10360  	return s
 10361  }
 10362  
 10363  // SetOwner sets the Owner field's value.
 10364  func (s *StreamingImage) SetOwner(v string) *StreamingImage {
 10365  	s.Owner = &v
 10366  	return s
 10367  }
 10368  
 10369  // SetPlatform sets the Platform field's value.
 10370  func (s *StreamingImage) SetPlatform(v string) *StreamingImage {
 10371  	s.Platform = &v
 10372  	return s
 10373  }
 10374  
 10375  // SetState sets the State field's value.
 10376  func (s *StreamingImage) SetState(v string) *StreamingImage {
 10377  	s.State = &v
 10378  	return s
 10379  }
 10380  
 10381  // SetStatusCode sets the StatusCode field's value.
 10382  func (s *StreamingImage) SetStatusCode(v string) *StreamingImage {
 10383  	s.StatusCode = &v
 10384  	return s
 10385  }
 10386  
 10387  // SetStatusMessage sets the StatusMessage field's value.
 10388  func (s *StreamingImage) SetStatusMessage(v string) *StreamingImage {
 10389  	s.StatusMessage = &v
 10390  	return s
 10391  }
 10392  
 10393  // SetStreamingImageId sets the StreamingImageId field's value.
 10394  func (s *StreamingImage) SetStreamingImageId(v string) *StreamingImage {
 10395  	s.StreamingImageId = &v
 10396  	return s
 10397  }
 10398  
 10399  // SetTags sets the Tags field's value.
 10400  func (s *StreamingImage) SetTags(v map[string]*string) *StreamingImage {
 10401  	s.Tags = v
 10402  	return s
 10403  }
 10404  
 10405  type StreamingImageEncryptionConfiguration struct {
 10406  	_ struct{} `type:"structure"`
 10407  
 10408  	KeyArn *string `locationName:"keyArn" min:"4" type:"string"`
 10409  
 10410  	// KeyType is a required field
 10411  	KeyType *string `locationName:"keyType" type:"string" required:"true" enum:"StreamingImageEncryptionConfigurationKeyType"`
 10412  }
 10413  
 10414  // String returns the string representation.
 10415  //
 10416  // API parameter values that are decorated as "sensitive" in the API will not
 10417  // be included in the string output. The member name will be present, but the
 10418  // value will be replaced with "sensitive".
 10419  func (s StreamingImageEncryptionConfiguration) String() string {
 10420  	return awsutil.Prettify(s)
 10421  }
 10422  
 10423  // GoString returns the string representation.
 10424  //
 10425  // API parameter values that are decorated as "sensitive" in the API will not
 10426  // be included in the string output. The member name will be present, but the
 10427  // value will be replaced with "sensitive".
 10428  func (s StreamingImageEncryptionConfiguration) GoString() string {
 10429  	return s.String()
 10430  }
 10431  
 10432  // SetKeyArn sets the KeyArn field's value.
 10433  func (s *StreamingImageEncryptionConfiguration) SetKeyArn(v string) *StreamingImageEncryptionConfiguration {
 10434  	s.KeyArn = &v
 10435  	return s
 10436  }
 10437  
 10438  // SetKeyType sets the KeyType field's value.
 10439  func (s *StreamingImageEncryptionConfiguration) SetKeyType(v string) *StreamingImageEncryptionConfiguration {
 10440  	s.KeyType = &v
 10441  	return s
 10442  }
 10443  
 10444  type StreamingSession struct {
 10445  	_ struct{} `type:"structure"`
 10446  
 10447  	Arn *string `locationName:"arn" type:"string"`
 10448  
 10449  	CreatedAt *time.Time `locationName:"createdAt" type:"timestamp" timestampFormat:"iso8601"`
 10450  
 10451  	CreatedBy *string `locationName:"createdBy" type:"string"`
 10452  
 10453  	Ec2InstanceType *string `locationName:"ec2InstanceType" type:"string"`
 10454  
 10455  	LaunchProfileId *string `locationName:"launchProfileId" type:"string"`
 10456  
 10457  	OwnedBy *string `locationName:"ownedBy" type:"string"`
 10458  
 10459  	SessionId *string `locationName:"sessionId" type:"string"`
 10460  
 10461  	// The streaming session state.
 10462  	State *string `locationName:"state" type:"string" enum:"StreamingSessionState"`
 10463  
 10464  	StatusCode *string `locationName:"statusCode" type:"string" enum:"StreamingSessionStatusCode"`
 10465  
 10466  	StatusMessage *string `locationName:"statusMessage" type:"string"`
 10467  
 10468  	StreamingImageId *string `locationName:"streamingImageId" type:"string"`
 10469  
 10470  	Tags map[string]*string `locationName:"tags" type:"map"`
 10471  
 10472  	TerminateAt *time.Time `locationName:"terminateAt" type:"timestamp" timestampFormat:"iso8601"`
 10473  
 10474  	UpdatedAt *time.Time `locationName:"updatedAt" type:"timestamp" timestampFormat:"iso8601"`
 10475  
 10476  	UpdatedBy *string `locationName:"updatedBy" type:"string"`
 10477  }
 10478  
 10479  // String returns the string representation.
 10480  //
 10481  // API parameter values that are decorated as "sensitive" in the API will not
 10482  // be included in the string output. The member name will be present, but the
 10483  // value will be replaced with "sensitive".
 10484  func (s StreamingSession) String() string {
 10485  	return awsutil.Prettify(s)
 10486  }
 10487  
 10488  // GoString returns the string representation.
 10489  //
 10490  // API parameter values that are decorated as "sensitive" in the API will not
 10491  // be included in the string output. The member name will be present, but the
 10492  // value will be replaced with "sensitive".
 10493  func (s StreamingSession) GoString() string {
 10494  	return s.String()
 10495  }
 10496  
 10497  // SetArn sets the Arn field's value.
 10498  func (s *StreamingSession) SetArn(v string) *StreamingSession {
 10499  	s.Arn = &v
 10500  	return s
 10501  }
 10502  
 10503  // SetCreatedAt sets the CreatedAt field's value.
 10504  func (s *StreamingSession) SetCreatedAt(v time.Time) *StreamingSession {
 10505  	s.CreatedAt = &v
 10506  	return s
 10507  }
 10508  
 10509  // SetCreatedBy sets the CreatedBy field's value.
 10510  func (s *StreamingSession) SetCreatedBy(v string) *StreamingSession {
 10511  	s.CreatedBy = &v
 10512  	return s
 10513  }
 10514  
 10515  // SetEc2InstanceType sets the Ec2InstanceType field's value.
 10516  func (s *StreamingSession) SetEc2InstanceType(v string) *StreamingSession {
 10517  	s.Ec2InstanceType = &v
 10518  	return s
 10519  }
 10520  
 10521  // SetLaunchProfileId sets the LaunchProfileId field's value.
 10522  func (s *StreamingSession) SetLaunchProfileId(v string) *StreamingSession {
 10523  	s.LaunchProfileId = &v
 10524  	return s
 10525  }
 10526  
 10527  // SetOwnedBy sets the OwnedBy field's value.
 10528  func (s *StreamingSession) SetOwnedBy(v string) *StreamingSession {
 10529  	s.OwnedBy = &v
 10530  	return s
 10531  }
 10532  
 10533  // SetSessionId sets the SessionId field's value.
 10534  func (s *StreamingSession) SetSessionId(v string) *StreamingSession {
 10535  	s.SessionId = &v
 10536  	return s
 10537  }
 10538  
 10539  // SetState sets the State field's value.
 10540  func (s *StreamingSession) SetState(v string) *StreamingSession {
 10541  	s.State = &v
 10542  	return s
 10543  }
 10544  
 10545  // SetStatusCode sets the StatusCode field's value.
 10546  func (s *StreamingSession) SetStatusCode(v string) *StreamingSession {
 10547  	s.StatusCode = &v
 10548  	return s
 10549  }
 10550  
 10551  // SetStatusMessage sets the StatusMessage field's value.
 10552  func (s *StreamingSession) SetStatusMessage(v string) *StreamingSession {
 10553  	s.StatusMessage = &v
 10554  	return s
 10555  }
 10556  
 10557  // SetStreamingImageId sets the StreamingImageId field's value.
 10558  func (s *StreamingSession) SetStreamingImageId(v string) *StreamingSession {
 10559  	s.StreamingImageId = &v
 10560  	return s
 10561  }
 10562  
 10563  // SetTags sets the Tags field's value.
 10564  func (s *StreamingSession) SetTags(v map[string]*string) *StreamingSession {
 10565  	s.Tags = v
 10566  	return s
 10567  }
 10568  
 10569  // SetTerminateAt sets the TerminateAt field's value.
 10570  func (s *StreamingSession) SetTerminateAt(v time.Time) *StreamingSession {
 10571  	s.TerminateAt = &v
 10572  	return s
 10573  }
 10574  
 10575  // SetUpdatedAt sets the UpdatedAt field's value.
 10576  func (s *StreamingSession) SetUpdatedAt(v time.Time) *StreamingSession {
 10577  	s.UpdatedAt = &v
 10578  	return s
 10579  }
 10580  
 10581  // SetUpdatedBy sets the UpdatedBy field's value.
 10582  func (s *StreamingSession) SetUpdatedBy(v string) *StreamingSession {
 10583  	s.UpdatedBy = &v
 10584  	return s
 10585  }
 10586  
 10587  type StreamingSessionStream struct {
 10588  	_ struct{} `type:"structure"`
 10589  
 10590  	CreatedAt *time.Time `locationName:"createdAt" type:"timestamp" timestampFormat:"iso8601"`
 10591  
 10592  	CreatedBy *string `locationName:"createdBy" type:"string"`
 10593  
 10594  	ExpiresAt *time.Time `locationName:"expiresAt" type:"timestamp" timestampFormat:"iso8601"`
 10595  
 10596  	OwnedBy *string `locationName:"ownedBy" type:"string"`
 10597  
 10598  	State *string `locationName:"state" type:"string" enum:"StreamingSessionStreamState"`
 10599  
 10600  	StatusCode *string `locationName:"statusCode" type:"string" enum:"StreamingSessionStreamStatusCode"`
 10601  
 10602  	StreamId *string `locationName:"streamId" type:"string"`
 10603  
 10604  	Url *string `locationName:"url" type:"string"`
 10605  }
 10606  
 10607  // String returns the string representation.
 10608  //
 10609  // API parameter values that are decorated as "sensitive" in the API will not
 10610  // be included in the string output. The member name will be present, but the
 10611  // value will be replaced with "sensitive".
 10612  func (s StreamingSessionStream) String() string {
 10613  	return awsutil.Prettify(s)
 10614  }
 10615  
 10616  // GoString returns the string representation.
 10617  //
 10618  // API parameter values that are decorated as "sensitive" in the API will not
 10619  // be included in the string output. The member name will be present, but the
 10620  // value will be replaced with "sensitive".
 10621  func (s StreamingSessionStream) GoString() string {
 10622  	return s.String()
 10623  }
 10624  
 10625  // SetCreatedAt sets the CreatedAt field's value.
 10626  func (s *StreamingSessionStream) SetCreatedAt(v time.Time) *StreamingSessionStream {
 10627  	s.CreatedAt = &v
 10628  	return s
 10629  }
 10630  
 10631  // SetCreatedBy sets the CreatedBy field's value.
 10632  func (s *StreamingSessionStream) SetCreatedBy(v string) *StreamingSessionStream {
 10633  	s.CreatedBy = &v
 10634  	return s
 10635  }
 10636  
 10637  // SetExpiresAt sets the ExpiresAt field's value.
 10638  func (s *StreamingSessionStream) SetExpiresAt(v time.Time) *StreamingSessionStream {
 10639  	s.ExpiresAt = &v
 10640  	return s
 10641  }
 10642  
 10643  // SetOwnedBy sets the OwnedBy field's value.
 10644  func (s *StreamingSessionStream) SetOwnedBy(v string) *StreamingSessionStream {
 10645  	s.OwnedBy = &v
 10646  	return s
 10647  }
 10648  
 10649  // SetState sets the State field's value.
 10650  func (s *StreamingSessionStream) SetState(v string) *StreamingSessionStream {
 10651  	s.State = &v
 10652  	return s
 10653  }
 10654  
 10655  // SetStatusCode sets the StatusCode field's value.
 10656  func (s *StreamingSessionStream) SetStatusCode(v string) *StreamingSessionStream {
 10657  	s.StatusCode = &v
 10658  	return s
 10659  }
 10660  
 10661  // SetStreamId sets the StreamId field's value.
 10662  func (s *StreamingSessionStream) SetStreamId(v string) *StreamingSessionStream {
 10663  	s.StreamId = &v
 10664  	return s
 10665  }
 10666  
 10667  // SetUrl sets the Url field's value.
 10668  func (s *StreamingSessionStream) SetUrl(v string) *StreamingSessionStream {
 10669  	s.Url = &v
 10670  	return s
 10671  }
 10672  
 10673  type Studio struct {
 10674  	_ struct{} `type:"structure"`
 10675  
 10676  	AdminRoleArn *string `locationName:"adminRoleArn" type:"string"`
 10677  
 10678  	Arn *string `locationName:"arn" type:"string"`
 10679  
 10680  	CreatedAt *time.Time `locationName:"createdAt" type:"timestamp" timestampFormat:"iso8601"`
 10681  
 10682  	DisplayName *string `locationName:"displayName" type:"string"`
 10683  
 10684  	HomeRegion *string `locationName:"homeRegion" type:"string"`
 10685  
 10686  	SsoClientId *string `locationName:"ssoClientId" type:"string"`
 10687  
 10688  	State *string `locationName:"state" type:"string" enum:"StudioState"`
 10689  
 10690  	// The status code.
 10691  	StatusCode *string `locationName:"statusCode" type:"string" enum:"StudioStatusCode"`
 10692  
 10693  	StatusMessage *string `locationName:"statusMessage" type:"string"`
 10694  
 10695  	// Configuration of the encryption method that is used for the studio.
 10696  	StudioEncryptionConfiguration *StudioEncryptionConfiguration `locationName:"studioEncryptionConfiguration" type:"structure"`
 10697  
 10698  	StudioId *string `locationName:"studioId" type:"string"`
 10699  
 10700  	StudioName *string `locationName:"studioName" min:"3" type:"string"`
 10701  
 10702  	StudioUrl *string `locationName:"studioUrl" type:"string"`
 10703  
 10704  	Tags map[string]*string `locationName:"tags" type:"map"`
 10705  
 10706  	UpdatedAt *time.Time `locationName:"updatedAt" type:"timestamp" timestampFormat:"iso8601"`
 10707  
 10708  	UserRoleArn *string `locationName:"userRoleArn" type:"string"`
 10709  }
 10710  
 10711  // String returns the string representation.
 10712  //
 10713  // API parameter values that are decorated as "sensitive" in the API will not
 10714  // be included in the string output. The member name will be present, but the
 10715  // value will be replaced with "sensitive".
 10716  func (s Studio) String() string {
 10717  	return awsutil.Prettify(s)
 10718  }
 10719  
 10720  // GoString returns the string representation.
 10721  //
 10722  // API parameter values that are decorated as "sensitive" in the API will not
 10723  // be included in the string output. The member name will be present, but the
 10724  // value will be replaced with "sensitive".
 10725  func (s Studio) GoString() string {
 10726  	return s.String()
 10727  }
 10728  
 10729  // SetAdminRoleArn sets the AdminRoleArn field's value.
 10730  func (s *Studio) SetAdminRoleArn(v string) *Studio {
 10731  	s.AdminRoleArn = &v
 10732  	return s
 10733  }
 10734  
 10735  // SetArn sets the Arn field's value.
 10736  func (s *Studio) SetArn(v string) *Studio {
 10737  	s.Arn = &v
 10738  	return s
 10739  }
 10740  
 10741  // SetCreatedAt sets the CreatedAt field's value.
 10742  func (s *Studio) SetCreatedAt(v time.Time) *Studio {
 10743  	s.CreatedAt = &v
 10744  	return s
 10745  }
 10746  
 10747  // SetDisplayName sets the DisplayName field's value.
 10748  func (s *Studio) SetDisplayName(v string) *Studio {
 10749  	s.DisplayName = &v
 10750  	return s
 10751  }
 10752  
 10753  // SetHomeRegion sets the HomeRegion field's value.
 10754  func (s *Studio) SetHomeRegion(v string) *Studio {
 10755  	s.HomeRegion = &v
 10756  	return s
 10757  }
 10758  
 10759  // SetSsoClientId sets the SsoClientId field's value.
 10760  func (s *Studio) SetSsoClientId(v string) *Studio {
 10761  	s.SsoClientId = &v
 10762  	return s
 10763  }
 10764  
 10765  // SetState sets the State field's value.
 10766  func (s *Studio) SetState(v string) *Studio {
 10767  	s.State = &v
 10768  	return s
 10769  }
 10770  
 10771  // SetStatusCode sets the StatusCode field's value.
 10772  func (s *Studio) SetStatusCode(v string) *Studio {
 10773  	s.StatusCode = &v
 10774  	return s
 10775  }
 10776  
 10777  // SetStatusMessage sets the StatusMessage field's value.
 10778  func (s *Studio) SetStatusMessage(v string) *Studio {
 10779  	s.StatusMessage = &v
 10780  	return s
 10781  }
 10782  
 10783  // SetStudioEncryptionConfiguration sets the StudioEncryptionConfiguration field's value.
 10784  func (s *Studio) SetStudioEncryptionConfiguration(v *StudioEncryptionConfiguration) *Studio {
 10785  	s.StudioEncryptionConfiguration = v
 10786  	return s
 10787  }
 10788  
 10789  // SetStudioId sets the StudioId field's value.
 10790  func (s *Studio) SetStudioId(v string) *Studio {
 10791  	s.StudioId = &v
 10792  	return s
 10793  }
 10794  
 10795  // SetStudioName sets the StudioName field's value.
 10796  func (s *Studio) SetStudioName(v string) *Studio {
 10797  	s.StudioName = &v
 10798  	return s
 10799  }
 10800  
 10801  // SetStudioUrl sets the StudioUrl field's value.
 10802  func (s *Studio) SetStudioUrl(v string) *Studio {
 10803  	s.StudioUrl = &v
 10804  	return s
 10805  }
 10806  
 10807  // SetTags sets the Tags field's value.
 10808  func (s *Studio) SetTags(v map[string]*string) *Studio {
 10809  	s.Tags = v
 10810  	return s
 10811  }
 10812  
 10813  // SetUpdatedAt sets the UpdatedAt field's value.
 10814  func (s *Studio) SetUpdatedAt(v time.Time) *Studio {
 10815  	s.UpdatedAt = &v
 10816  	return s
 10817  }
 10818  
 10819  // SetUserRoleArn sets the UserRoleArn field's value.
 10820  func (s *Studio) SetUserRoleArn(v string) *Studio {
 10821  	s.UserRoleArn = &v
 10822  	return s
 10823  }
 10824  
 10825  // A network that is used by a studio’s users and workflows, including render
 10826  // farm, Active Directory, licensing, and file system.
 10827  type StudioComponent struct {
 10828  	_ struct{} `type:"structure"`
 10829  
 10830  	Arn *string `locationName:"arn" type:"string"`
 10831  
 10832  	// The configuration of the studio component, based on component type.
 10833  	Configuration *StudioComponentConfiguration `locationName:"configuration" type:"structure"`
 10834  
 10835  	CreatedAt *time.Time `locationName:"createdAt" type:"timestamp" timestampFormat:"iso8601"`
 10836  
 10837  	CreatedBy *string `locationName:"createdBy" type:"string"`
 10838  
 10839  	Description *string `locationName:"description" type:"string"`
 10840  
 10841  	Ec2SecurityGroupIds []*string `locationName:"ec2SecurityGroupIds" min:"1" type:"list"`
 10842  
 10843  	InitializationScripts []*StudioComponentInitializationScript `locationName:"initializationScripts" type:"list"`
 10844  
 10845  	Name *string `locationName:"name" type:"string"`
 10846  
 10847  	ScriptParameters []*ScriptParameterKeyValue `locationName:"scriptParameters" type:"list"`
 10848  
 10849  	// The current state of the studio component resource.
 10850  	//
 10851  	// While a studio component is being created, modified, or deleted, its state
 10852  	// will equal "CREATE_IN_PROGRESS", "UPDATE_IN_PROGRESS", or "DELETE_IN_PROGRESS"
 10853  	//
 10854  	// These are called 'transition states'.
 10855  	//
 10856  	// No modifications may be made to the studio component while it is in a transition
 10857  	// state.
 10858  	//
 10859  	// If creation of the resource fails, the state will change to `CREATE_FAILED`.
 10860  	// The resource StatusCode and StatusMessage will provide more information of
 10861  	// why creation failed. The resource in this state will automatically be deleted
 10862  	// from your account after a period of time.
 10863  	//
 10864  	// If updating the resource fails, the state will change to `UPDATE_FAILED`.
 10865  	// The resource StatusCode and StatusMessage will provide more information of
 10866  	// why the update failed. The resource will be returned to the state it was
 10867  	// in when the update request was invoked.
 10868  	//
 10869  	// If deleting the resource fails, the state will change to `DELETE_FAILED`.
 10870  	// The resource StatusCode and StatusMessage will provide more information of
 10871  	// why the update failed. The resource will be returned to the state it was
 10872  	// in when the update request was invoked. After the resource is deleted successfully,
 10873  	// it will change to the "DELETED" state. The resource will no longer count
 10874  	// against service quotas and cannot be used or acted upon any futher. It will
 10875  	// be removed from your account after a period of time.
 10876  	State *string `locationName:"state" type:"string" enum:"StudioComponentState"`
 10877  
 10878  	// The current status of the studio component resource.
 10879  	//
 10880  	// When the resource is in the 'READY' state, the status code signals what the
 10881  	// last mutation made to the resource was.
 10882  	//
 10883  	// When the resource is in a CREATE_FAILED/UPDATE_FAILED/DELETE_FAILED state,
 10884  	// the status code signals what went wrong and why the mutation failed.
 10885  	StatusCode *string `locationName:"statusCode" type:"string" enum:"StudioComponentStatusCode"`
 10886  
 10887  	StatusMessage *string `locationName:"statusMessage" type:"string"`
 10888  
 10889  	StudioComponentId *string `locationName:"studioComponentId" type:"string"`
 10890  
 10891  	Subtype *string `locationName:"subtype" type:"string" enum:"StudioComponentSubtype"`
 10892  
 10893  	Tags map[string]*string `locationName:"tags" type:"map"`
 10894  
 10895  	Type *string `locationName:"type" type:"string" enum:"StudioComponentType"`
 10896  
 10897  	UpdatedAt *time.Time `locationName:"updatedAt" type:"timestamp" timestampFormat:"iso8601"`
 10898  
 10899  	UpdatedBy *string `locationName:"updatedBy" type:"string"`
 10900  }
 10901  
 10902  // String returns the string representation.
 10903  //
 10904  // API parameter values that are decorated as "sensitive" in the API will not
 10905  // be included in the string output. The member name will be present, but the
 10906  // value will be replaced with "sensitive".
 10907  func (s StudioComponent) String() string {
 10908  	return awsutil.Prettify(s)
 10909  }
 10910  
 10911  // GoString returns the string representation.
 10912  //
 10913  // API parameter values that are decorated as "sensitive" in the API will not
 10914  // be included in the string output. The member name will be present, but the
 10915  // value will be replaced with "sensitive".
 10916  func (s StudioComponent) GoString() string {
 10917  	return s.String()
 10918  }
 10919  
 10920  // SetArn sets the Arn field's value.
 10921  func (s *StudioComponent) SetArn(v string) *StudioComponent {
 10922  	s.Arn = &v
 10923  	return s
 10924  }
 10925  
 10926  // SetConfiguration sets the Configuration field's value.
 10927  func (s *StudioComponent) SetConfiguration(v *StudioComponentConfiguration) *StudioComponent {
 10928  	s.Configuration = v
 10929  	return s
 10930  }
 10931  
 10932  // SetCreatedAt sets the CreatedAt field's value.
 10933  func (s *StudioComponent) SetCreatedAt(v time.Time) *StudioComponent {
 10934  	s.CreatedAt = &v
 10935  	return s
 10936  }
 10937  
 10938  // SetCreatedBy sets the CreatedBy field's value.
 10939  func (s *StudioComponent) SetCreatedBy(v string) *StudioComponent {
 10940  	s.CreatedBy = &v
 10941  	return s
 10942  }
 10943  
 10944  // SetDescription sets the Description field's value.
 10945  func (s *StudioComponent) SetDescription(v string) *StudioComponent {
 10946  	s.Description = &v
 10947  	return s
 10948  }
 10949  
 10950  // SetEc2SecurityGroupIds sets the Ec2SecurityGroupIds field's value.
 10951  func (s *StudioComponent) SetEc2SecurityGroupIds(v []*string) *StudioComponent {
 10952  	s.Ec2SecurityGroupIds = v
 10953  	return s
 10954  }
 10955  
 10956  // SetInitializationScripts sets the InitializationScripts field's value.
 10957  func (s *StudioComponent) SetInitializationScripts(v []*StudioComponentInitializationScript) *StudioComponent {
 10958  	s.InitializationScripts = v
 10959  	return s
 10960  }
 10961  
 10962  // SetName sets the Name field's value.
 10963  func (s *StudioComponent) SetName(v string) *StudioComponent {
 10964  	s.Name = &v
 10965  	return s
 10966  }
 10967  
 10968  // SetScriptParameters sets the ScriptParameters field's value.
 10969  func (s *StudioComponent) SetScriptParameters(v []*ScriptParameterKeyValue) *StudioComponent {
 10970  	s.ScriptParameters = v
 10971  	return s
 10972  }
 10973  
 10974  // SetState sets the State field's value.
 10975  func (s *StudioComponent) SetState(v string) *StudioComponent {
 10976  	s.State = &v
 10977  	return s
 10978  }
 10979  
 10980  // SetStatusCode sets the StatusCode field's value.
 10981  func (s *StudioComponent) SetStatusCode(v string) *StudioComponent {
 10982  	s.StatusCode = &v
 10983  	return s
 10984  }
 10985  
 10986  // SetStatusMessage sets the StatusMessage field's value.
 10987  func (s *StudioComponent) SetStatusMessage(v string) *StudioComponent {
 10988  	s.StatusMessage = &v
 10989  	return s
 10990  }
 10991  
 10992  // SetStudioComponentId sets the StudioComponentId field's value.
 10993  func (s *StudioComponent) SetStudioComponentId(v string) *StudioComponent {
 10994  	s.StudioComponentId = &v
 10995  	return s
 10996  }
 10997  
 10998  // SetSubtype sets the Subtype field's value.
 10999  func (s *StudioComponent) SetSubtype(v string) *StudioComponent {
 11000  	s.Subtype = &v
 11001  	return s
 11002  }
 11003  
 11004  // SetTags sets the Tags field's value.
 11005  func (s *StudioComponent) SetTags(v map[string]*string) *StudioComponent {
 11006  	s.Tags = v
 11007  	return s
 11008  }
 11009  
 11010  // SetType sets the Type field's value.
 11011  func (s *StudioComponent) SetType(v string) *StudioComponent {
 11012  	s.Type = &v
 11013  	return s
 11014  }
 11015  
 11016  // SetUpdatedAt sets the UpdatedAt field's value.
 11017  func (s *StudioComponent) SetUpdatedAt(v time.Time) *StudioComponent {
 11018  	s.UpdatedAt = &v
 11019  	return s
 11020  }
 11021  
 11022  // SetUpdatedBy sets the UpdatedBy field's value.
 11023  func (s *StudioComponent) SetUpdatedBy(v string) *StudioComponent {
 11024  	s.UpdatedBy = &v
 11025  	return s
 11026  }
 11027  
 11028  // The configuration of the studio component, based on component type.
 11029  type StudioComponentConfiguration struct {
 11030  	_ struct{} `type:"structure"`
 11031  
 11032  	// The configuration for a Microsoft Active Directory (Microsoft AD) studio
 11033  	// resource.
 11034  	ActiveDirectoryConfiguration *ActiveDirectoryConfiguration `locationName:"activeDirectoryConfiguration" type:"structure"`
 11035  
 11036  	// The configuration for a render farm that is associated with a studio resource.
 11037  	ComputeFarmConfiguration *ComputeFarmConfiguration `locationName:"computeFarmConfiguration" type:"structure"`
 11038  
 11039  	// The configuration for a license service that is associated with a studio
 11040  	// resource.
 11041  	LicenseServiceConfiguration *LicenseServiceConfiguration `locationName:"licenseServiceConfiguration" type:"structure"`
 11042  
 11043  	// The configuration for a shared file storage system that is associated with
 11044  	// a studio resource.
 11045  	SharedFileSystemConfiguration *SharedFileSystemConfiguration `locationName:"sharedFileSystemConfiguration" type:"structure"`
 11046  }
 11047  
 11048  // String returns the string representation.
 11049  //
 11050  // API parameter values that are decorated as "sensitive" in the API will not
 11051  // be included in the string output. The member name will be present, but the
 11052  // value will be replaced with "sensitive".
 11053  func (s StudioComponentConfiguration) String() string {
 11054  	return awsutil.Prettify(s)
 11055  }
 11056  
 11057  // GoString returns the string representation.
 11058  //
 11059  // API parameter values that are decorated as "sensitive" in the API will not
 11060  // be included in the string output. The member name will be present, but the
 11061  // value will be replaced with "sensitive".
 11062  func (s StudioComponentConfiguration) GoString() string {
 11063  	return s.String()
 11064  }
 11065  
 11066  // Validate inspects the fields of the type to determine if they are valid.
 11067  func (s *StudioComponentConfiguration) Validate() error {
 11068  	invalidParams := request.ErrInvalidParams{Context: "StudioComponentConfiguration"}
 11069  	if s.ActiveDirectoryConfiguration != nil {
 11070  		if err := s.ActiveDirectoryConfiguration.Validate(); err != nil {
 11071  			invalidParams.AddNested("ActiveDirectoryConfiguration", err.(request.ErrInvalidParams))
 11072  		}
 11073  	}
 11074  
 11075  	if invalidParams.Len() > 0 {
 11076  		return invalidParams
 11077  	}
 11078  	return nil
 11079  }
 11080  
 11081  // SetActiveDirectoryConfiguration sets the ActiveDirectoryConfiguration field's value.
 11082  func (s *StudioComponentConfiguration) SetActiveDirectoryConfiguration(v *ActiveDirectoryConfiguration) *StudioComponentConfiguration {
 11083  	s.ActiveDirectoryConfiguration = v
 11084  	return s
 11085  }
 11086  
 11087  // SetComputeFarmConfiguration sets the ComputeFarmConfiguration field's value.
 11088  func (s *StudioComponentConfiguration) SetComputeFarmConfiguration(v *ComputeFarmConfiguration) *StudioComponentConfiguration {
 11089  	s.ComputeFarmConfiguration = v
 11090  	return s
 11091  }
 11092  
 11093  // SetLicenseServiceConfiguration sets the LicenseServiceConfiguration field's value.
 11094  func (s *StudioComponentConfiguration) SetLicenseServiceConfiguration(v *LicenseServiceConfiguration) *StudioComponentConfiguration {
 11095  	s.LicenseServiceConfiguration = v
 11096  	return s
 11097  }
 11098  
 11099  // SetSharedFileSystemConfiguration sets the SharedFileSystemConfiguration field's value.
 11100  func (s *StudioComponentConfiguration) SetSharedFileSystemConfiguration(v *SharedFileSystemConfiguration) *StudioComponentConfiguration {
 11101  	s.SharedFileSystemConfiguration = v
 11102  	return s
 11103  }
 11104  
 11105  // Initialization scripts for studio components.
 11106  type StudioComponentInitializationScript struct {
 11107  	_ struct{} `type:"structure"`
 11108  
 11109  	// The version number of the protocol that is used by the launch profile. The
 11110  	// only valid version is "2021-03-31".
 11111  	LaunchProfileProtocolVersion *string `locationName:"launchProfileProtocolVersion" type:"string"`
 11112  
 11113  	Platform *string `locationName:"platform" type:"string" enum:"LaunchProfilePlatform"`
 11114  
 11115  	RunContext *string `locationName:"runContext" type:"string" enum:"StudioComponentInitializationScriptRunContext"`
 11116  
 11117  	Script *string `locationName:"script" min:"1" type:"string"`
 11118  }
 11119  
 11120  // String returns the string representation.
 11121  //
 11122  // API parameter values that are decorated as "sensitive" in the API will not
 11123  // be included in the string output. The member name will be present, but the
 11124  // value will be replaced with "sensitive".
 11125  func (s StudioComponentInitializationScript) String() string {
 11126  	return awsutil.Prettify(s)
 11127  }
 11128  
 11129  // GoString returns the string representation.
 11130  //
 11131  // API parameter values that are decorated as "sensitive" in the API will not
 11132  // be included in the string output. The member name will be present, but the
 11133  // value will be replaced with "sensitive".
 11134  func (s StudioComponentInitializationScript) GoString() string {
 11135  	return s.String()
 11136  }
 11137  
 11138  // Validate inspects the fields of the type to determine if they are valid.
 11139  func (s *StudioComponentInitializationScript) Validate() error {
 11140  	invalidParams := request.ErrInvalidParams{Context: "StudioComponentInitializationScript"}
 11141  	if s.Script != nil && len(*s.Script) < 1 {
 11142  		invalidParams.Add(request.NewErrParamMinLen("Script", 1))
 11143  	}
 11144  
 11145  	if invalidParams.Len() > 0 {
 11146  		return invalidParams
 11147  	}
 11148  	return nil
 11149  }
 11150  
 11151  // SetLaunchProfileProtocolVersion sets the LaunchProfileProtocolVersion field's value.
 11152  func (s *StudioComponentInitializationScript) SetLaunchProfileProtocolVersion(v string) *StudioComponentInitializationScript {
 11153  	s.LaunchProfileProtocolVersion = &v
 11154  	return s
 11155  }
 11156  
 11157  // SetPlatform sets the Platform field's value.
 11158  func (s *StudioComponentInitializationScript) SetPlatform(v string) *StudioComponentInitializationScript {
 11159  	s.Platform = &v
 11160  	return s
 11161  }
 11162  
 11163  // SetRunContext sets the RunContext field's value.
 11164  func (s *StudioComponentInitializationScript) SetRunContext(v string) *StudioComponentInitializationScript {
 11165  	s.RunContext = &v
 11166  	return s
 11167  }
 11168  
 11169  // SetScript sets the Script field's value.
 11170  func (s *StudioComponentInitializationScript) SetScript(v string) *StudioComponentInitializationScript {
 11171  	s.Script = &v
 11172  	return s
 11173  }
 11174  
 11175  type StudioComponentSummary struct {
 11176  	_ struct{} `type:"structure"`
 11177  
 11178  	CreatedAt *time.Time `locationName:"createdAt" type:"timestamp" timestampFormat:"iso8601"`
 11179  
 11180  	CreatedBy *string `locationName:"createdBy" type:"string"`
 11181  
 11182  	Description *string `locationName:"description" type:"string"`
 11183  
 11184  	Name *string `locationName:"name" type:"string"`
 11185  
 11186  	StudioComponentId *string `locationName:"studioComponentId" type:"string"`
 11187  
 11188  	Subtype *string `locationName:"subtype" type:"string" enum:"StudioComponentSubtype"`
 11189  
 11190  	Type *string `locationName:"type" type:"string" enum:"StudioComponentType"`
 11191  
 11192  	UpdatedAt *time.Time `locationName:"updatedAt" type:"timestamp" timestampFormat:"iso8601"`
 11193  
 11194  	UpdatedBy *string `locationName:"updatedBy" type:"string"`
 11195  }
 11196  
 11197  // String returns the string representation.
 11198  //
 11199  // API parameter values that are decorated as "sensitive" in the API will not
 11200  // be included in the string output. The member name will be present, but the
 11201  // value will be replaced with "sensitive".
 11202  func (s StudioComponentSummary) String() string {
 11203  	return awsutil.Prettify(s)
 11204  }
 11205  
 11206  // GoString returns the string representation.
 11207  //
 11208  // API parameter values that are decorated as "sensitive" in the API will not
 11209  // be included in the string output. The member name will be present, but the
 11210  // value will be replaced with "sensitive".
 11211  func (s StudioComponentSummary) GoString() string {
 11212  	return s.String()
 11213  }
 11214  
 11215  // SetCreatedAt sets the CreatedAt field's value.
 11216  func (s *StudioComponentSummary) SetCreatedAt(v time.Time) *StudioComponentSummary {
 11217  	s.CreatedAt = &v
 11218  	return s
 11219  }
 11220  
 11221  // SetCreatedBy sets the CreatedBy field's value.
 11222  func (s *StudioComponentSummary) SetCreatedBy(v string) *StudioComponentSummary {
 11223  	s.CreatedBy = &v
 11224  	return s
 11225  }
 11226  
 11227  // SetDescription sets the Description field's value.
 11228  func (s *StudioComponentSummary) SetDescription(v string) *StudioComponentSummary {
 11229  	s.Description = &v
 11230  	return s
 11231  }
 11232  
 11233  // SetName sets the Name field's value.
 11234  func (s *StudioComponentSummary) SetName(v string) *StudioComponentSummary {
 11235  	s.Name = &v
 11236  	return s
 11237  }
 11238  
 11239  // SetStudioComponentId sets the StudioComponentId field's value.
 11240  func (s *StudioComponentSummary) SetStudioComponentId(v string) *StudioComponentSummary {
 11241  	s.StudioComponentId = &v
 11242  	return s
 11243  }
 11244  
 11245  // SetSubtype sets the Subtype field's value.
 11246  func (s *StudioComponentSummary) SetSubtype(v string) *StudioComponentSummary {
 11247  	s.Subtype = &v
 11248  	return s
 11249  }
 11250  
 11251  // SetType sets the Type field's value.
 11252  func (s *StudioComponentSummary) SetType(v string) *StudioComponentSummary {
 11253  	s.Type = &v
 11254  	return s
 11255  }
 11256  
 11257  // SetUpdatedAt sets the UpdatedAt field's value.
 11258  func (s *StudioComponentSummary) SetUpdatedAt(v time.Time) *StudioComponentSummary {
 11259  	s.UpdatedAt = &v
 11260  	return s
 11261  }
 11262  
 11263  // SetUpdatedBy sets the UpdatedBy field's value.
 11264  func (s *StudioComponentSummary) SetUpdatedBy(v string) *StudioComponentSummary {
 11265  	s.UpdatedBy = &v
 11266  	return s
 11267  }
 11268  
 11269  // Configuration of the encryption method that is used for the studio.
 11270  type StudioEncryptionConfiguration struct {
 11271  	_ struct{} `type:"structure"`
 11272  
 11273  	// The Amazon Resource Name (ARN) for a KMS key that is used to encrypt studio
 11274  	// data.
 11275  	KeyArn *string `locationName:"keyArn" min:"4" type:"string"`
 11276  
 11277  	// The type of KMS key that is used to encrypt studio data.
 11278  	//
 11279  	// KeyType is a required field
 11280  	KeyType *string `locationName:"keyType" type:"string" required:"true" enum:"StudioEncryptionConfigurationKeyType"`
 11281  }
 11282  
 11283  // String returns the string representation.
 11284  //
 11285  // API parameter values that are decorated as "sensitive" in the API will not
 11286  // be included in the string output. The member name will be present, but the
 11287  // value will be replaced with "sensitive".
 11288  func (s StudioEncryptionConfiguration) String() string {
 11289  	return awsutil.Prettify(s)
 11290  }
 11291  
 11292  // GoString returns the string representation.
 11293  //
 11294  // API parameter values that are decorated as "sensitive" in the API will not
 11295  // be included in the string output. The member name will be present, but the
 11296  // value will be replaced with "sensitive".
 11297  func (s StudioEncryptionConfiguration) GoString() string {
 11298  	return s.String()
 11299  }
 11300  
 11301  // Validate inspects the fields of the type to determine if they are valid.
 11302  func (s *StudioEncryptionConfiguration) Validate() error {
 11303  	invalidParams := request.ErrInvalidParams{Context: "StudioEncryptionConfiguration"}
 11304  	if s.KeyArn != nil && len(*s.KeyArn) < 4 {
 11305  		invalidParams.Add(request.NewErrParamMinLen("KeyArn", 4))
 11306  	}
 11307  	if s.KeyType == nil {
 11308  		invalidParams.Add(request.NewErrParamRequired("KeyType"))
 11309  	}
 11310  
 11311  	if invalidParams.Len() > 0 {
 11312  		return invalidParams
 11313  	}
 11314  	return nil
 11315  }
 11316  
 11317  // SetKeyArn sets the KeyArn field's value.
 11318  func (s *StudioEncryptionConfiguration) SetKeyArn(v string) *StudioEncryptionConfiguration {
 11319  	s.KeyArn = &v
 11320  	return s
 11321  }
 11322  
 11323  // SetKeyType sets the KeyType field's value.
 11324  func (s *StudioEncryptionConfiguration) SetKeyType(v string) *StudioEncryptionConfiguration {
 11325  	s.KeyType = &v
 11326  	return s
 11327  }
 11328  
 11329  type StudioMembership struct {
 11330  	_ struct{} `type:"structure"`
 11331  
 11332  	IdentityStoreId *string `locationName:"identityStoreId" type:"string"`
 11333  
 11334  	Persona *string `locationName:"persona" type:"string" enum:"StudioPersona"`
 11335  
 11336  	PrincipalId *string `locationName:"principalId" type:"string"`
 11337  }
 11338  
 11339  // String returns the string representation.
 11340  //
 11341  // API parameter values that are decorated as "sensitive" in the API will not
 11342  // be included in the string output. The member name will be present, but the
 11343  // value will be replaced with "sensitive".
 11344  func (s StudioMembership) String() string {
 11345  	return awsutil.Prettify(s)
 11346  }
 11347  
 11348  // GoString returns the string representation.
 11349  //
 11350  // API parameter values that are decorated as "sensitive" in the API will not
 11351  // be included in the string output. The member name will be present, but the
 11352  // value will be replaced with "sensitive".
 11353  func (s StudioMembership) GoString() string {
 11354  	return s.String()
 11355  }
 11356  
 11357  // SetIdentityStoreId sets the IdentityStoreId field's value.
 11358  func (s *StudioMembership) SetIdentityStoreId(v string) *StudioMembership {
 11359  	s.IdentityStoreId = &v
 11360  	return s
 11361  }
 11362  
 11363  // SetPersona sets the Persona field's value.
 11364  func (s *StudioMembership) SetPersona(v string) *StudioMembership {
 11365  	s.Persona = &v
 11366  	return s
 11367  }
 11368  
 11369  // SetPrincipalId sets the PrincipalId field's value.
 11370  func (s *StudioMembership) SetPrincipalId(v string) *StudioMembership {
 11371  	s.PrincipalId = &v
 11372  	return s
 11373  }
 11374  
 11375  type TagResourceInput struct {
 11376  	_ struct{} `type:"structure"`
 11377  
 11378  	// ResourceArn is a required field
 11379  	ResourceArn *string `location:"uri" locationName:"resourceArn" type:"string" required:"true"`
 11380  
 11381  	Tags map[string]*string `locationName:"tags" type:"map"`
 11382  }
 11383  
 11384  // String returns the string representation.
 11385  //
 11386  // API parameter values that are decorated as "sensitive" in the API will not
 11387  // be included in the string output. The member name will be present, but the
 11388  // value will be replaced with "sensitive".
 11389  func (s TagResourceInput) String() string {
 11390  	return awsutil.Prettify(s)
 11391  }
 11392  
 11393  // GoString returns the string representation.
 11394  //
 11395  // API parameter values that are decorated as "sensitive" in the API will not
 11396  // be included in the string output. The member name will be present, but the
 11397  // value will be replaced with "sensitive".
 11398  func (s TagResourceInput) GoString() string {
 11399  	return s.String()
 11400  }
 11401  
 11402  // Validate inspects the fields of the type to determine if they are valid.
 11403  func (s *TagResourceInput) Validate() error {
 11404  	invalidParams := request.ErrInvalidParams{Context: "TagResourceInput"}
 11405  	if s.ResourceArn == nil {
 11406  		invalidParams.Add(request.NewErrParamRequired("ResourceArn"))
 11407  	}
 11408  	if s.ResourceArn != nil && len(*s.ResourceArn) < 1 {
 11409  		invalidParams.Add(request.NewErrParamMinLen("ResourceArn", 1))
 11410  	}
 11411  
 11412  	if invalidParams.Len() > 0 {
 11413  		return invalidParams
 11414  	}
 11415  	return nil
 11416  }
 11417  
 11418  // SetResourceArn sets the ResourceArn field's value.
 11419  func (s *TagResourceInput) SetResourceArn(v string) *TagResourceInput {
 11420  	s.ResourceArn = &v
 11421  	return s
 11422  }
 11423  
 11424  // SetTags sets the Tags field's value.
 11425  func (s *TagResourceInput) SetTags(v map[string]*string) *TagResourceInput {
 11426  	s.Tags = v
 11427  	return s
 11428  }
 11429  
 11430  type TagResourceOutput struct {
 11431  	_ struct{} `type:"structure" nopayload:"true"`
 11432  }
 11433  
 11434  // String returns the string representation.
 11435  //
 11436  // API parameter values that are decorated as "sensitive" in the API will not
 11437  // be included in the string output. The member name will be present, but the
 11438  // value will be replaced with "sensitive".
 11439  func (s TagResourceOutput) String() string {
 11440  	return awsutil.Prettify(s)
 11441  }
 11442  
 11443  // GoString returns the string representation.
 11444  //
 11445  // API parameter values that are decorated as "sensitive" in the API will not
 11446  // be included in the string output. The member name will be present, but the
 11447  // value will be replaced with "sensitive".
 11448  func (s TagResourceOutput) GoString() string {
 11449  	return s.String()
 11450  }
 11451  
 11452  type ThrottlingException struct {
 11453  	_            struct{}                  `type:"structure"`
 11454  	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
 11455  
 11456  	Code_ *string `locationName:"code" type:"string"`
 11457  
 11458  	// ExceptionContext is a set of key-value pairs that provide you with more information
 11459  	// about the error that occurred. For example, when the service returns a 404
 11460  	// ResourceNotFound error, ExceptionContext will contain the key `resourceId`
 11461  	// with the value of resource that was not found.
 11462  	//
 11463  	// ExceptionContext enables scripts and other programmatic clients to provide
 11464  	// for better error handling.
 11465  	Context map[string]*string `locationName:"context" type:"map"`
 11466  
 11467  	Message_ *string `locationName:"message" type:"string"`
 11468  }
 11469  
 11470  // String returns the string representation.
 11471  //
 11472  // API parameter values that are decorated as "sensitive" in the API will not
 11473  // be included in the string output. The member name will be present, but the
 11474  // value will be replaced with "sensitive".
 11475  func (s ThrottlingException) String() string {
 11476  	return awsutil.Prettify(s)
 11477  }
 11478  
 11479  // GoString returns the string representation.
 11480  //
 11481  // API parameter values that are decorated as "sensitive" in the API will not
 11482  // be included in the string output. The member name will be present, but the
 11483  // value will be replaced with "sensitive".
 11484  func (s ThrottlingException) GoString() string {
 11485  	return s.String()
 11486  }
 11487  
 11488  func newErrorThrottlingException(v protocol.ResponseMetadata) error {
 11489  	return &ThrottlingException{
 11490  		RespMetadata: v,
 11491  	}
 11492  }
 11493  
 11494  // Code returns the exception type name.
 11495  func (s *ThrottlingException) Code() string {
 11496  	return "ThrottlingException"
 11497  }
 11498  
 11499  // Message returns the exception's message.
 11500  func (s *ThrottlingException) Message() string {
 11501  	if s.Message_ != nil {
 11502  		return *s.Message_
 11503  	}
 11504  	return ""
 11505  }
 11506  
 11507  // OrigErr always returns nil, satisfies awserr.Error interface.
 11508  func (s *ThrottlingException) OrigErr() error {
 11509  	return nil
 11510  }
 11511  
 11512  func (s *ThrottlingException) Error() string {
 11513  	return fmt.Sprintf("%s: %s\n%s", s.Code(), s.Message(), s.String())
 11514  }
 11515  
 11516  // Status code returns the HTTP status code for the request's response error.
 11517  func (s *ThrottlingException) StatusCode() int {
 11518  	return s.RespMetadata.StatusCode
 11519  }
 11520  
 11521  // RequestID returns the service's response RequestID for request.
 11522  func (s *ThrottlingException) RequestID() string {
 11523  	return s.RespMetadata.RequestID
 11524  }
 11525  
 11526  type UntagResourceInput struct {
 11527  	_ struct{} `type:"structure" nopayload:"true"`
 11528  
 11529  	// ResourceArn is a required field
 11530  	ResourceArn *string `location:"uri" locationName:"resourceArn" type:"string" required:"true"`
 11531  
 11532  	// TagKeys is a required field
 11533  	TagKeys []*string `location:"querystring" locationName:"tagKeys" type:"list" required:"true"`
 11534  }
 11535  
 11536  // String returns the string representation.
 11537  //
 11538  // API parameter values that are decorated as "sensitive" in the API will not
 11539  // be included in the string output. The member name will be present, but the
 11540  // value will be replaced with "sensitive".
 11541  func (s UntagResourceInput) String() string {
 11542  	return awsutil.Prettify(s)
 11543  }
 11544  
 11545  // GoString returns the string representation.
 11546  //
 11547  // API parameter values that are decorated as "sensitive" in the API will not
 11548  // be included in the string output. The member name will be present, but the
 11549  // value will be replaced with "sensitive".
 11550  func (s UntagResourceInput) GoString() string {
 11551  	return s.String()
 11552  }
 11553  
 11554  // Validate inspects the fields of the type to determine if they are valid.
 11555  func (s *UntagResourceInput) Validate() error {
 11556  	invalidParams := request.ErrInvalidParams{Context: "UntagResourceInput"}
 11557  	if s.ResourceArn == nil {
 11558  		invalidParams.Add(request.NewErrParamRequired("ResourceArn"))
 11559  	}
 11560  	if s.ResourceArn != nil && len(*s.ResourceArn) < 1 {
 11561  		invalidParams.Add(request.NewErrParamMinLen("ResourceArn", 1))
 11562  	}
 11563  	if s.TagKeys == nil {
 11564  		invalidParams.Add(request.NewErrParamRequired("TagKeys"))
 11565  	}
 11566  
 11567  	if invalidParams.Len() > 0 {
 11568  		return invalidParams
 11569  	}
 11570  	return nil
 11571  }
 11572  
 11573  // SetResourceArn sets the ResourceArn field's value.
 11574  func (s *UntagResourceInput) SetResourceArn(v string) *UntagResourceInput {
 11575  	s.ResourceArn = &v
 11576  	return s
 11577  }
 11578  
 11579  // SetTagKeys sets the TagKeys field's value.
 11580  func (s *UntagResourceInput) SetTagKeys(v []*string) *UntagResourceInput {
 11581  	s.TagKeys = v
 11582  	return s
 11583  }
 11584  
 11585  type UntagResourceOutput struct {
 11586  	_ struct{} `type:"structure" nopayload:"true"`
 11587  }
 11588  
 11589  // String returns the string representation.
 11590  //
 11591  // API parameter values that are decorated as "sensitive" in the API will not
 11592  // be included in the string output. The member name will be present, but the
 11593  // value will be replaced with "sensitive".
 11594  func (s UntagResourceOutput) String() string {
 11595  	return awsutil.Prettify(s)
 11596  }
 11597  
 11598  // GoString returns the string representation.
 11599  //
 11600  // API parameter values that are decorated as "sensitive" in the API will not
 11601  // be included in the string output. The member name will be present, but the
 11602  // value will be replaced with "sensitive".
 11603  func (s UntagResourceOutput) GoString() string {
 11604  	return s.String()
 11605  }
 11606  
 11607  type UpdateLaunchProfileInput struct {
 11608  	_ struct{} `type:"structure"`
 11609  
 11610  	ClientToken *string `location:"header" locationName:"X-Amz-Client-Token" min:"1" type:"string" idempotencyToken:"true"`
 11611  
 11612  	Description *string `locationName:"description" type:"string"`
 11613  
 11614  	// LaunchProfileId is a required field
 11615  	LaunchProfileId *string `location:"uri" locationName:"launchProfileId" type:"string" required:"true"`
 11616  
 11617  	LaunchProfileProtocolVersions []*string `locationName:"launchProfileProtocolVersions" type:"list"`
 11618  
 11619  	Name *string `locationName:"name" type:"string"`
 11620  
 11621  	StreamConfiguration *StreamConfigurationCreate `locationName:"streamConfiguration" type:"structure"`
 11622  
 11623  	StudioComponentIds []*string `locationName:"studioComponentIds" min:"1" type:"list"`
 11624  
 11625  	// StudioId is a required field
 11626  	StudioId *string `location:"uri" locationName:"studioId" type:"string" required:"true"`
 11627  }
 11628  
 11629  // String returns the string representation.
 11630  //
 11631  // API parameter values that are decorated as "sensitive" in the API will not
 11632  // be included in the string output. The member name will be present, but the
 11633  // value will be replaced with "sensitive".
 11634  func (s UpdateLaunchProfileInput) String() string {
 11635  	return awsutil.Prettify(s)
 11636  }
 11637  
 11638  // GoString returns the string representation.
 11639  //
 11640  // API parameter values that are decorated as "sensitive" in the API will not
 11641  // be included in the string output. The member name will be present, but the
 11642  // value will be replaced with "sensitive".
 11643  func (s UpdateLaunchProfileInput) GoString() string {
 11644  	return s.String()
 11645  }
 11646  
 11647  // Validate inspects the fields of the type to determine if they are valid.
 11648  func (s *UpdateLaunchProfileInput) Validate() error {
 11649  	invalidParams := request.ErrInvalidParams{Context: "UpdateLaunchProfileInput"}
 11650  	if s.ClientToken != nil && len(*s.ClientToken) < 1 {
 11651  		invalidParams.Add(request.NewErrParamMinLen("ClientToken", 1))
 11652  	}
 11653  	if s.LaunchProfileId == nil {
 11654  		invalidParams.Add(request.NewErrParamRequired("LaunchProfileId"))
 11655  	}
 11656  	if s.LaunchProfileId != nil && len(*s.LaunchProfileId) < 1 {
 11657  		invalidParams.Add(request.NewErrParamMinLen("LaunchProfileId", 1))
 11658  	}
 11659  	if s.StudioComponentIds != nil && len(s.StudioComponentIds) < 1 {
 11660  		invalidParams.Add(request.NewErrParamMinLen("StudioComponentIds", 1))
 11661  	}
 11662  	if s.StudioId == nil {
 11663  		invalidParams.Add(request.NewErrParamRequired("StudioId"))
 11664  	}
 11665  	if s.StudioId != nil && len(*s.StudioId) < 1 {
 11666  		invalidParams.Add(request.NewErrParamMinLen("StudioId", 1))
 11667  	}
 11668  	if s.StreamConfiguration != nil {
 11669  		if err := s.StreamConfiguration.Validate(); err != nil {
 11670  			invalidParams.AddNested("StreamConfiguration", err.(request.ErrInvalidParams))
 11671  		}
 11672  	}
 11673  
 11674  	if invalidParams.Len() > 0 {
 11675  		return invalidParams
 11676  	}
 11677  	return nil
 11678  }
 11679  
 11680  // SetClientToken sets the ClientToken field's value.
 11681  func (s *UpdateLaunchProfileInput) SetClientToken(v string) *UpdateLaunchProfileInput {
 11682  	s.ClientToken = &v
 11683  	return s
 11684  }
 11685  
 11686  // SetDescription sets the Description field's value.
 11687  func (s *UpdateLaunchProfileInput) SetDescription(v string) *UpdateLaunchProfileInput {
 11688  	s.Description = &v
 11689  	return s
 11690  }
 11691  
 11692  // SetLaunchProfileId sets the LaunchProfileId field's value.
 11693  func (s *UpdateLaunchProfileInput) SetLaunchProfileId(v string) *UpdateLaunchProfileInput {
 11694  	s.LaunchProfileId = &v
 11695  	return s
 11696  }
 11697  
 11698  // SetLaunchProfileProtocolVersions sets the LaunchProfileProtocolVersions field's value.
 11699  func (s *UpdateLaunchProfileInput) SetLaunchProfileProtocolVersions(v []*string) *UpdateLaunchProfileInput {
 11700  	s.LaunchProfileProtocolVersions = v
 11701  	return s
 11702  }
 11703  
 11704  // SetName sets the Name field's value.
 11705  func (s *UpdateLaunchProfileInput) SetName(v string) *UpdateLaunchProfileInput {
 11706  	s.Name = &v
 11707  	return s
 11708  }
 11709  
 11710  // SetStreamConfiguration sets the StreamConfiguration field's value.
 11711  func (s *UpdateLaunchProfileInput) SetStreamConfiguration(v *StreamConfigurationCreate) *UpdateLaunchProfileInput {
 11712  	s.StreamConfiguration = v
 11713  	return s
 11714  }
 11715  
 11716  // SetStudioComponentIds sets the StudioComponentIds field's value.
 11717  func (s *UpdateLaunchProfileInput) SetStudioComponentIds(v []*string) *UpdateLaunchProfileInput {
 11718  	s.StudioComponentIds = v
 11719  	return s
 11720  }
 11721  
 11722  // SetStudioId sets the StudioId field's value.
 11723  func (s *UpdateLaunchProfileInput) SetStudioId(v string) *UpdateLaunchProfileInput {
 11724  	s.StudioId = &v
 11725  	return s
 11726  }
 11727  
 11728  type UpdateLaunchProfileMemberInput struct {
 11729  	_ struct{} `type:"structure"`
 11730  
 11731  	ClientToken *string `location:"header" locationName:"X-Amz-Client-Token" min:"1" type:"string" idempotencyToken:"true"`
 11732  
 11733  	// LaunchProfileId is a required field
 11734  	LaunchProfileId *string `location:"uri" locationName:"launchProfileId" type:"string" required:"true"`
 11735  
 11736  	// Persona is a required field
 11737  	Persona *string `locationName:"persona" type:"string" required:"true" enum:"LaunchProfilePersona"`
 11738  
 11739  	// PrincipalId is a required field
 11740  	PrincipalId *string `location:"uri" locationName:"principalId" type:"string" required:"true"`
 11741  
 11742  	// StudioId is a required field
 11743  	StudioId *string `location:"uri" locationName:"studioId" type:"string" required:"true"`
 11744  }
 11745  
 11746  // String returns the string representation.
 11747  //
 11748  // API parameter values that are decorated as "sensitive" in the API will not
 11749  // be included in the string output. The member name will be present, but the
 11750  // value will be replaced with "sensitive".
 11751  func (s UpdateLaunchProfileMemberInput) String() string {
 11752  	return awsutil.Prettify(s)
 11753  }
 11754  
 11755  // GoString returns the string representation.
 11756  //
 11757  // API parameter values that are decorated as "sensitive" in the API will not
 11758  // be included in the string output. The member name will be present, but the
 11759  // value will be replaced with "sensitive".
 11760  func (s UpdateLaunchProfileMemberInput) GoString() string {
 11761  	return s.String()
 11762  }
 11763  
 11764  // Validate inspects the fields of the type to determine if they are valid.
 11765  func (s *UpdateLaunchProfileMemberInput) Validate() error {
 11766  	invalidParams := request.ErrInvalidParams{Context: "UpdateLaunchProfileMemberInput"}
 11767  	if s.ClientToken != nil && len(*s.ClientToken) < 1 {
 11768  		invalidParams.Add(request.NewErrParamMinLen("ClientToken", 1))
 11769  	}
 11770  	if s.LaunchProfileId == nil {
 11771  		invalidParams.Add(request.NewErrParamRequired("LaunchProfileId"))
 11772  	}
 11773  	if s.LaunchProfileId != nil && len(*s.LaunchProfileId) < 1 {
 11774  		invalidParams.Add(request.NewErrParamMinLen("LaunchProfileId", 1))
 11775  	}
 11776  	if s.Persona == nil {
 11777  		invalidParams.Add(request.NewErrParamRequired("Persona"))
 11778  	}
 11779  	if s.PrincipalId == nil {
 11780  		invalidParams.Add(request.NewErrParamRequired("PrincipalId"))
 11781  	}
 11782  	if s.PrincipalId != nil && len(*s.PrincipalId) < 1 {
 11783  		invalidParams.Add(request.NewErrParamMinLen("PrincipalId", 1))
 11784  	}
 11785  	if s.StudioId == nil {
 11786  		invalidParams.Add(request.NewErrParamRequired("StudioId"))
 11787  	}
 11788  	if s.StudioId != nil && len(*s.StudioId) < 1 {
 11789  		invalidParams.Add(request.NewErrParamMinLen("StudioId", 1))
 11790  	}
 11791  
 11792  	if invalidParams.Len() > 0 {
 11793  		return invalidParams
 11794  	}
 11795  	return nil
 11796  }
 11797  
 11798  // SetClientToken sets the ClientToken field's value.
 11799  func (s *UpdateLaunchProfileMemberInput) SetClientToken(v string) *UpdateLaunchProfileMemberInput {
 11800  	s.ClientToken = &v
 11801  	return s
 11802  }
 11803  
 11804  // SetLaunchProfileId sets the LaunchProfileId field's value.
 11805  func (s *UpdateLaunchProfileMemberInput) SetLaunchProfileId(v string) *UpdateLaunchProfileMemberInput {
 11806  	s.LaunchProfileId = &v
 11807  	return s
 11808  }
 11809  
 11810  // SetPersona sets the Persona field's value.
 11811  func (s *UpdateLaunchProfileMemberInput) SetPersona(v string) *UpdateLaunchProfileMemberInput {
 11812  	s.Persona = &v
 11813  	return s
 11814  }
 11815  
 11816  // SetPrincipalId sets the PrincipalId field's value.
 11817  func (s *UpdateLaunchProfileMemberInput) SetPrincipalId(v string) *UpdateLaunchProfileMemberInput {
 11818  	s.PrincipalId = &v
 11819  	return s
 11820  }
 11821  
 11822  // SetStudioId sets the StudioId field's value.
 11823  func (s *UpdateLaunchProfileMemberInput) SetStudioId(v string) *UpdateLaunchProfileMemberInput {
 11824  	s.StudioId = &v
 11825  	return s
 11826  }
 11827  
 11828  type UpdateLaunchProfileMemberOutput struct {
 11829  	_ struct{} `type:"structure"`
 11830  
 11831  	Member *LaunchProfileMembership `locationName:"member" type:"structure"`
 11832  }
 11833  
 11834  // String returns the string representation.
 11835  //
 11836  // API parameter values that are decorated as "sensitive" in the API will not
 11837  // be included in the string output. The member name will be present, but the
 11838  // value will be replaced with "sensitive".
 11839  func (s UpdateLaunchProfileMemberOutput) String() string {
 11840  	return awsutil.Prettify(s)
 11841  }
 11842  
 11843  // GoString returns the string representation.
 11844  //
 11845  // API parameter values that are decorated as "sensitive" in the API will not
 11846  // be included in the string output. The member name will be present, but the
 11847  // value will be replaced with "sensitive".
 11848  func (s UpdateLaunchProfileMemberOutput) GoString() string {
 11849  	return s.String()
 11850  }
 11851  
 11852  // SetMember sets the Member field's value.
 11853  func (s *UpdateLaunchProfileMemberOutput) SetMember(v *LaunchProfileMembership) *UpdateLaunchProfileMemberOutput {
 11854  	s.Member = v
 11855  	return s
 11856  }
 11857  
 11858  type UpdateLaunchProfileOutput struct {
 11859  	_ struct{} `type:"structure"`
 11860  
 11861  	LaunchProfile *LaunchProfile `locationName:"launchProfile" type:"structure"`
 11862  }
 11863  
 11864  // String returns the string representation.
 11865  //
 11866  // API parameter values that are decorated as "sensitive" in the API will not
 11867  // be included in the string output. The member name will be present, but the
 11868  // value will be replaced with "sensitive".
 11869  func (s UpdateLaunchProfileOutput) String() string {
 11870  	return awsutil.Prettify(s)
 11871  }
 11872  
 11873  // GoString returns the string representation.
 11874  //
 11875  // API parameter values that are decorated as "sensitive" in the API will not
 11876  // be included in the string output. The member name will be present, but the
 11877  // value will be replaced with "sensitive".
 11878  func (s UpdateLaunchProfileOutput) GoString() string {
 11879  	return s.String()
 11880  }
 11881  
 11882  // SetLaunchProfile sets the LaunchProfile field's value.
 11883  func (s *UpdateLaunchProfileOutput) SetLaunchProfile(v *LaunchProfile) *UpdateLaunchProfileOutput {
 11884  	s.LaunchProfile = v
 11885  	return s
 11886  }
 11887  
 11888  type UpdateStreamingImageInput struct {
 11889  	_ struct{} `type:"structure"`
 11890  
 11891  	ClientToken *string `location:"header" locationName:"X-Amz-Client-Token" min:"1" type:"string" idempotencyToken:"true"`
 11892  
 11893  	// The description.
 11894  	Description *string `locationName:"description" type:"string"`
 11895  
 11896  	// A friendly name for a streaming image resource.
 11897  	Name *string `locationName:"name" type:"string"`
 11898  
 11899  	// StreamingImageId is a required field
 11900  	StreamingImageId *string `location:"uri" locationName:"streamingImageId" type:"string" required:"true"`
 11901  
 11902  	// StudioId is a required field
 11903  	StudioId *string `location:"uri" locationName:"studioId" type:"string" required:"true"`
 11904  }
 11905  
 11906  // String returns the string representation.
 11907  //
 11908  // API parameter values that are decorated as "sensitive" in the API will not
 11909  // be included in the string output. The member name will be present, but the
 11910  // value will be replaced with "sensitive".
 11911  func (s UpdateStreamingImageInput) String() string {
 11912  	return awsutil.Prettify(s)
 11913  }
 11914  
 11915  // GoString returns the string representation.
 11916  //
 11917  // API parameter values that are decorated as "sensitive" in the API will not
 11918  // be included in the string output. The member name will be present, but the
 11919  // value will be replaced with "sensitive".
 11920  func (s UpdateStreamingImageInput) GoString() string {
 11921  	return s.String()
 11922  }
 11923  
 11924  // Validate inspects the fields of the type to determine if they are valid.
 11925  func (s *UpdateStreamingImageInput) Validate() error {
 11926  	invalidParams := request.ErrInvalidParams{Context: "UpdateStreamingImageInput"}
 11927  	if s.ClientToken != nil && len(*s.ClientToken) < 1 {
 11928  		invalidParams.Add(request.NewErrParamMinLen("ClientToken", 1))
 11929  	}
 11930  	if s.StreamingImageId == nil {
 11931  		invalidParams.Add(request.NewErrParamRequired("StreamingImageId"))
 11932  	}
 11933  	if s.StreamingImageId != nil && len(*s.StreamingImageId) < 1 {
 11934  		invalidParams.Add(request.NewErrParamMinLen("StreamingImageId", 1))
 11935  	}
 11936  	if s.StudioId == nil {
 11937  		invalidParams.Add(request.NewErrParamRequired("StudioId"))
 11938  	}
 11939  	if s.StudioId != nil && len(*s.StudioId) < 1 {
 11940  		invalidParams.Add(request.NewErrParamMinLen("StudioId", 1))
 11941  	}
 11942  
 11943  	if invalidParams.Len() > 0 {
 11944  		return invalidParams
 11945  	}
 11946  	return nil
 11947  }
 11948  
 11949  // SetClientToken sets the ClientToken field's value.
 11950  func (s *UpdateStreamingImageInput) SetClientToken(v string) *UpdateStreamingImageInput {
 11951  	s.ClientToken = &v
 11952  	return s
 11953  }
 11954  
 11955  // SetDescription sets the Description field's value.
 11956  func (s *UpdateStreamingImageInput) SetDescription(v string) *UpdateStreamingImageInput {
 11957  	s.Description = &v
 11958  	return s
 11959  }
 11960  
 11961  // SetName sets the Name field's value.
 11962  func (s *UpdateStreamingImageInput) SetName(v string) *UpdateStreamingImageInput {
 11963  	s.Name = &v
 11964  	return s
 11965  }
 11966  
 11967  // SetStreamingImageId sets the StreamingImageId field's value.
 11968  func (s *UpdateStreamingImageInput) SetStreamingImageId(v string) *UpdateStreamingImageInput {
 11969  	s.StreamingImageId = &v
 11970  	return s
 11971  }
 11972  
 11973  // SetStudioId sets the StudioId field's value.
 11974  func (s *UpdateStreamingImageInput) SetStudioId(v string) *UpdateStreamingImageInput {
 11975  	s.StudioId = &v
 11976  	return s
 11977  }
 11978  
 11979  type UpdateStreamingImageOutput struct {
 11980  	_ struct{} `type:"structure"`
 11981  
 11982  	StreamingImage *StreamingImage `locationName:"streamingImage" type:"structure"`
 11983  }
 11984  
 11985  // String returns the string representation.
 11986  //
 11987  // API parameter values that are decorated as "sensitive" in the API will not
 11988  // be included in the string output. The member name will be present, but the
 11989  // value will be replaced with "sensitive".
 11990  func (s UpdateStreamingImageOutput) String() string {
 11991  	return awsutil.Prettify(s)
 11992  }
 11993  
 11994  // GoString returns the string representation.
 11995  //
 11996  // API parameter values that are decorated as "sensitive" in the API will not
 11997  // be included in the string output. The member name will be present, but the
 11998  // value will be replaced with "sensitive".
 11999  func (s UpdateStreamingImageOutput) GoString() string {
 12000  	return s.String()
 12001  }
 12002  
 12003  // SetStreamingImage sets the StreamingImage field's value.
 12004  func (s *UpdateStreamingImageOutput) SetStreamingImage(v *StreamingImage) *UpdateStreamingImageOutput {
 12005  	s.StreamingImage = v
 12006  	return s
 12007  }
 12008  
 12009  type UpdateStudioComponentInput struct {
 12010  	_ struct{} `type:"structure"`
 12011  
 12012  	ClientToken *string `location:"header" locationName:"X-Amz-Client-Token" min:"1" type:"string" idempotencyToken:"true"`
 12013  
 12014  	// The configuration of the studio component, based on component type.
 12015  	Configuration *StudioComponentConfiguration `locationName:"configuration" type:"structure"`
 12016  
 12017  	Description *string `locationName:"description" type:"string"`
 12018  
 12019  	Ec2SecurityGroupIds []*string `locationName:"ec2SecurityGroupIds" min:"1" type:"list"`
 12020  
 12021  	InitializationScripts []*StudioComponentInitializationScript `locationName:"initializationScripts" type:"list"`
 12022  
 12023  	Name *string `locationName:"name" type:"string"`
 12024  
 12025  	ScriptParameters []*ScriptParameterKeyValue `locationName:"scriptParameters" type:"list"`
 12026  
 12027  	// StudioComponentId is a required field
 12028  	StudioComponentId *string `location:"uri" locationName:"studioComponentId" type:"string" required:"true"`
 12029  
 12030  	// StudioId is a required field
 12031  	StudioId *string `location:"uri" locationName:"studioId" type:"string" required:"true"`
 12032  
 12033  	Subtype *string `locationName:"subtype" type:"string" enum:"StudioComponentSubtype"`
 12034  
 12035  	Type *string `locationName:"type" type:"string" enum:"StudioComponentType"`
 12036  }
 12037  
 12038  // String returns the string representation.
 12039  //
 12040  // API parameter values that are decorated as "sensitive" in the API will not
 12041  // be included in the string output. The member name will be present, but the
 12042  // value will be replaced with "sensitive".
 12043  func (s UpdateStudioComponentInput) String() string {
 12044  	return awsutil.Prettify(s)
 12045  }
 12046  
 12047  // GoString returns the string representation.
 12048  //
 12049  // API parameter values that are decorated as "sensitive" in the API will not
 12050  // be included in the string output. The member name will be present, but the
 12051  // value will be replaced with "sensitive".
 12052  func (s UpdateStudioComponentInput) GoString() string {
 12053  	return s.String()
 12054  }
 12055  
 12056  // Validate inspects the fields of the type to determine if they are valid.
 12057  func (s *UpdateStudioComponentInput) Validate() error {
 12058  	invalidParams := request.ErrInvalidParams{Context: "UpdateStudioComponentInput"}
 12059  	if s.ClientToken != nil && len(*s.ClientToken) < 1 {
 12060  		invalidParams.Add(request.NewErrParamMinLen("ClientToken", 1))
 12061  	}
 12062  	if s.Ec2SecurityGroupIds != nil && len(s.Ec2SecurityGroupIds) < 1 {
 12063  		invalidParams.Add(request.NewErrParamMinLen("Ec2SecurityGroupIds", 1))
 12064  	}
 12065  	if s.StudioComponentId == nil {
 12066  		invalidParams.Add(request.NewErrParamRequired("StudioComponentId"))
 12067  	}
 12068  	if s.StudioComponentId != nil && len(*s.StudioComponentId) < 1 {
 12069  		invalidParams.Add(request.NewErrParamMinLen("StudioComponentId", 1))
 12070  	}
 12071  	if s.StudioId == nil {
 12072  		invalidParams.Add(request.NewErrParamRequired("StudioId"))
 12073  	}
 12074  	if s.StudioId != nil && len(*s.StudioId) < 1 {
 12075  		invalidParams.Add(request.NewErrParamMinLen("StudioId", 1))
 12076  	}
 12077  	if s.Configuration != nil {
 12078  		if err := s.Configuration.Validate(); err != nil {
 12079  			invalidParams.AddNested("Configuration", err.(request.ErrInvalidParams))
 12080  		}
 12081  	}
 12082  	if s.InitializationScripts != nil {
 12083  		for i, v := range s.InitializationScripts {
 12084  			if v == nil {
 12085  				continue
 12086  			}
 12087  			if err := v.Validate(); err != nil {
 12088  				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "InitializationScripts", i), err.(request.ErrInvalidParams))
 12089  			}
 12090  		}
 12091  	}
 12092  	if s.ScriptParameters != nil {
 12093  		for i, v := range s.ScriptParameters {
 12094  			if v == nil {
 12095  				continue
 12096  			}
 12097  			if err := v.Validate(); err != nil {
 12098  				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "ScriptParameters", i), err.(request.ErrInvalidParams))
 12099  			}
 12100  		}
 12101  	}
 12102  
 12103  	if invalidParams.Len() > 0 {
 12104  		return invalidParams
 12105  	}
 12106  	return nil
 12107  }
 12108  
 12109  // SetClientToken sets the ClientToken field's value.
 12110  func (s *UpdateStudioComponentInput) SetClientToken(v string) *UpdateStudioComponentInput {
 12111  	s.ClientToken = &v
 12112  	return s
 12113  }
 12114  
 12115  // SetConfiguration sets the Configuration field's value.
 12116  func (s *UpdateStudioComponentInput) SetConfiguration(v *StudioComponentConfiguration) *UpdateStudioComponentInput {
 12117  	s.Configuration = v
 12118  	return s
 12119  }
 12120  
 12121  // SetDescription sets the Description field's value.
 12122  func (s *UpdateStudioComponentInput) SetDescription(v string) *UpdateStudioComponentInput {
 12123  	s.Description = &v
 12124  	return s
 12125  }
 12126  
 12127  // SetEc2SecurityGroupIds sets the Ec2SecurityGroupIds field's value.
 12128  func (s *UpdateStudioComponentInput) SetEc2SecurityGroupIds(v []*string) *UpdateStudioComponentInput {
 12129  	s.Ec2SecurityGroupIds = v
 12130  	return s
 12131  }
 12132  
 12133  // SetInitializationScripts sets the InitializationScripts field's value.
 12134  func (s *UpdateStudioComponentInput) SetInitializationScripts(v []*StudioComponentInitializationScript) *UpdateStudioComponentInput {
 12135  	s.InitializationScripts = v
 12136  	return s
 12137  }
 12138  
 12139  // SetName sets the Name field's value.
 12140  func (s *UpdateStudioComponentInput) SetName(v string) *UpdateStudioComponentInput {
 12141  	s.Name = &v
 12142  	return s
 12143  }
 12144  
 12145  // SetScriptParameters sets the ScriptParameters field's value.
 12146  func (s *UpdateStudioComponentInput) SetScriptParameters(v []*ScriptParameterKeyValue) *UpdateStudioComponentInput {
 12147  	s.ScriptParameters = v
 12148  	return s
 12149  }
 12150  
 12151  // SetStudioComponentId sets the StudioComponentId field's value.
 12152  func (s *UpdateStudioComponentInput) SetStudioComponentId(v string) *UpdateStudioComponentInput {
 12153  	s.StudioComponentId = &v
 12154  	return s
 12155  }
 12156  
 12157  // SetStudioId sets the StudioId field's value.
 12158  func (s *UpdateStudioComponentInput) SetStudioId(v string) *UpdateStudioComponentInput {
 12159  	s.StudioId = &v
 12160  	return s
 12161  }
 12162  
 12163  // SetSubtype sets the Subtype field's value.
 12164  func (s *UpdateStudioComponentInput) SetSubtype(v string) *UpdateStudioComponentInput {
 12165  	s.Subtype = &v
 12166  	return s
 12167  }
 12168  
 12169  // SetType sets the Type field's value.
 12170  func (s *UpdateStudioComponentInput) SetType(v string) *UpdateStudioComponentInput {
 12171  	s.Type = &v
 12172  	return s
 12173  }
 12174  
 12175  type UpdateStudioComponentOutput struct {
 12176  	_ struct{} `type:"structure"`
 12177  
 12178  	// A network that is used by a studio’s users and workflows, including render
 12179  	// farm, Active Directory, licensing, and file system.
 12180  	StudioComponent *StudioComponent `locationName:"studioComponent" type:"structure"`
 12181  }
 12182  
 12183  // String returns the string representation.
 12184  //
 12185  // API parameter values that are decorated as "sensitive" in the API will not
 12186  // be included in the string output. The member name will be present, but the
 12187  // value will be replaced with "sensitive".
 12188  func (s UpdateStudioComponentOutput) String() string {
 12189  	return awsutil.Prettify(s)
 12190  }
 12191  
 12192  // GoString returns the string representation.
 12193  //
 12194  // API parameter values that are decorated as "sensitive" in the API will not
 12195  // be included in the string output. The member name will be present, but the
 12196  // value will be replaced with "sensitive".
 12197  func (s UpdateStudioComponentOutput) GoString() string {
 12198  	return s.String()
 12199  }
 12200  
 12201  // SetStudioComponent sets the StudioComponent field's value.
 12202  func (s *UpdateStudioComponentOutput) SetStudioComponent(v *StudioComponent) *UpdateStudioComponentOutput {
 12203  	s.StudioComponent = v
 12204  	return s
 12205  }
 12206  
 12207  type UpdateStudioInput struct {
 12208  	_ struct{} `type:"structure"`
 12209  
 12210  	AdminRoleArn *string `locationName:"adminRoleArn" type:"string"`
 12211  
 12212  	ClientToken *string `location:"header" locationName:"X-Amz-Client-Token" min:"1" type:"string" idempotencyToken:"true"`
 12213  
 12214  	DisplayName *string `locationName:"displayName" type:"string"`
 12215  
 12216  	// StudioId is a required field
 12217  	StudioId *string `location:"uri" locationName:"studioId" type:"string" required:"true"`
 12218  
 12219  	UserRoleArn *string `locationName:"userRoleArn" type:"string"`
 12220  }
 12221  
 12222  // String returns the string representation.
 12223  //
 12224  // API parameter values that are decorated as "sensitive" in the API will not
 12225  // be included in the string output. The member name will be present, but the
 12226  // value will be replaced with "sensitive".
 12227  func (s UpdateStudioInput) String() string {
 12228  	return awsutil.Prettify(s)
 12229  }
 12230  
 12231  // GoString returns the string representation.
 12232  //
 12233  // API parameter values that are decorated as "sensitive" in the API will not
 12234  // be included in the string output. The member name will be present, but the
 12235  // value will be replaced with "sensitive".
 12236  func (s UpdateStudioInput) GoString() string {
 12237  	return s.String()
 12238  }
 12239  
 12240  // Validate inspects the fields of the type to determine if they are valid.
 12241  func (s *UpdateStudioInput) Validate() error {
 12242  	invalidParams := request.ErrInvalidParams{Context: "UpdateStudioInput"}
 12243  	if s.ClientToken != nil && len(*s.ClientToken) < 1 {
 12244  		invalidParams.Add(request.NewErrParamMinLen("ClientToken", 1))
 12245  	}
 12246  	if s.StudioId == nil {
 12247  		invalidParams.Add(request.NewErrParamRequired("StudioId"))
 12248  	}
 12249  	if s.StudioId != nil && len(*s.StudioId) < 1 {
 12250  		invalidParams.Add(request.NewErrParamMinLen("StudioId", 1))
 12251  	}
 12252  
 12253  	if invalidParams.Len() > 0 {
 12254  		return invalidParams
 12255  	}
 12256  	return nil
 12257  }
 12258  
 12259  // SetAdminRoleArn sets the AdminRoleArn field's value.
 12260  func (s *UpdateStudioInput) SetAdminRoleArn(v string) *UpdateStudioInput {
 12261  	s.AdminRoleArn = &v
 12262  	return s
 12263  }
 12264  
 12265  // SetClientToken sets the ClientToken field's value.
 12266  func (s *UpdateStudioInput) SetClientToken(v string) *UpdateStudioInput {
 12267  	s.ClientToken = &v
 12268  	return s
 12269  }
 12270  
 12271  // SetDisplayName sets the DisplayName field's value.
 12272  func (s *UpdateStudioInput) SetDisplayName(v string) *UpdateStudioInput {
 12273  	s.DisplayName = &v
 12274  	return s
 12275  }
 12276  
 12277  // SetStudioId sets the StudioId field's value.
 12278  func (s *UpdateStudioInput) SetStudioId(v string) *UpdateStudioInput {
 12279  	s.StudioId = &v
 12280  	return s
 12281  }
 12282  
 12283  // SetUserRoleArn sets the UserRoleArn field's value.
 12284  func (s *UpdateStudioInput) SetUserRoleArn(v string) *UpdateStudioInput {
 12285  	s.UserRoleArn = &v
 12286  	return s
 12287  }
 12288  
 12289  type UpdateStudioOutput struct {
 12290  	_ struct{} `type:"structure"`
 12291  
 12292  	Studio *Studio `locationName:"studio" type:"structure"`
 12293  }
 12294  
 12295  // String returns the string representation.
 12296  //
 12297  // API parameter values that are decorated as "sensitive" in the API will not
 12298  // be included in the string output. The member name will be present, but the
 12299  // value will be replaced with "sensitive".
 12300  func (s UpdateStudioOutput) String() string {
 12301  	return awsutil.Prettify(s)
 12302  }
 12303  
 12304  // GoString returns the string representation.
 12305  //
 12306  // API parameter values that are decorated as "sensitive" in the API will not
 12307  // be included in the string output. The member name will be present, but the
 12308  // value will be replaced with "sensitive".
 12309  func (s UpdateStudioOutput) GoString() string {
 12310  	return s.String()
 12311  }
 12312  
 12313  // SetStudio sets the Studio field's value.
 12314  func (s *UpdateStudioOutput) SetStudio(v *Studio) *UpdateStudioOutput {
 12315  	s.Studio = v
 12316  	return s
 12317  }
 12318  
 12319  type ValidationException struct {
 12320  	_            struct{}                  `type:"structure"`
 12321  	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
 12322  
 12323  	Code_ *string `locationName:"code" type:"string"`
 12324  
 12325  	// ExceptionContext is a set of key-value pairs that provide you with more information
 12326  	// about the error that occurred. For example, when the service returns a 404
 12327  	// ResourceNotFound error, ExceptionContext will contain the key `resourceId`
 12328  	// with the value of resource that was not found.
 12329  	//
 12330  	// ExceptionContext enables scripts and other programmatic clients to provide
 12331  	// for better error handling.
 12332  	Context map[string]*string `locationName:"context" type:"map"`
 12333  
 12334  	Message_ *string `locationName:"message" type:"string"`
 12335  }
 12336  
 12337  // String returns the string representation.
 12338  //
 12339  // API parameter values that are decorated as "sensitive" in the API will not
 12340  // be included in the string output. The member name will be present, but the
 12341  // value will be replaced with "sensitive".
 12342  func (s ValidationException) String() string {
 12343  	return awsutil.Prettify(s)
 12344  }
 12345  
 12346  // GoString returns the string representation.
 12347  //
 12348  // API parameter values that are decorated as "sensitive" in the API will not
 12349  // be included in the string output. The member name will be present, but the
 12350  // value will be replaced with "sensitive".
 12351  func (s ValidationException) GoString() string {
 12352  	return s.String()
 12353  }
 12354  
 12355  func newErrorValidationException(v protocol.ResponseMetadata) error {
 12356  	return &ValidationException{
 12357  		RespMetadata: v,
 12358  	}
 12359  }
 12360  
 12361  // Code returns the exception type name.
 12362  func (s *ValidationException) Code() string {
 12363  	return "ValidationException"
 12364  }
 12365  
 12366  // Message returns the exception's message.
 12367  func (s *ValidationException) Message() string {
 12368  	if s.Message_ != nil {
 12369  		return *s.Message_
 12370  	}
 12371  	return ""
 12372  }
 12373  
 12374  // OrigErr always returns nil, satisfies awserr.Error interface.
 12375  func (s *ValidationException) OrigErr() error {
 12376  	return nil
 12377  }
 12378  
 12379  func (s *ValidationException) Error() string {
 12380  	return fmt.Sprintf("%s: %s\n%s", s.Code(), s.Message(), s.String())
 12381  }
 12382  
 12383  // Status code returns the HTTP status code for the request's response error.
 12384  func (s *ValidationException) StatusCode() int {
 12385  	return s.RespMetadata.StatusCode
 12386  }
 12387  
 12388  // RequestID returns the service's response RequestID for request.
 12389  func (s *ValidationException) RequestID() string {
 12390  	return s.RespMetadata.RequestID
 12391  }
 12392  
 12393  const (
 12394  	// LaunchProfilePersonaUser is a LaunchProfilePersona enum value
 12395  	LaunchProfilePersonaUser = "USER"
 12396  )
 12397  
 12398  // LaunchProfilePersona_Values returns all elements of the LaunchProfilePersona enum
 12399  func LaunchProfilePersona_Values() []string {
 12400  	return []string{
 12401  		LaunchProfilePersonaUser,
 12402  	}
 12403  }
 12404  
 12405  const (
 12406  	// LaunchProfilePlatformLinux is a LaunchProfilePlatform enum value
 12407  	LaunchProfilePlatformLinux = "LINUX"
 12408  
 12409  	// LaunchProfilePlatformWindows is a LaunchProfilePlatform enum value
 12410  	LaunchProfilePlatformWindows = "WINDOWS"
 12411  )
 12412  
 12413  // LaunchProfilePlatform_Values returns all elements of the LaunchProfilePlatform enum
 12414  func LaunchProfilePlatform_Values() []string {
 12415  	return []string{
 12416  		LaunchProfilePlatformLinux,
 12417  		LaunchProfilePlatformWindows,
 12418  	}
 12419  }
 12420  
 12421  const (
 12422  	// LaunchProfileStateCreateInProgress is a LaunchProfileState enum value
 12423  	LaunchProfileStateCreateInProgress = "CREATE_IN_PROGRESS"
 12424  
 12425  	// LaunchProfileStateReady is a LaunchProfileState enum value
 12426  	LaunchProfileStateReady = "READY"
 12427  
 12428  	// LaunchProfileStateUpdateInProgress is a LaunchProfileState enum value
 12429  	LaunchProfileStateUpdateInProgress = "UPDATE_IN_PROGRESS"
 12430  
 12431  	// LaunchProfileStateDeleteInProgress is a LaunchProfileState enum value
 12432  	LaunchProfileStateDeleteInProgress = "DELETE_IN_PROGRESS"
 12433  
 12434  	// LaunchProfileStateDeleted is a LaunchProfileState enum value
 12435  	LaunchProfileStateDeleted = "DELETED"
 12436  
 12437  	// LaunchProfileStateDeleteFailed is a LaunchProfileState enum value
 12438  	LaunchProfileStateDeleteFailed = "DELETE_FAILED"
 12439  
 12440  	// LaunchProfileStateCreateFailed is a LaunchProfileState enum value
 12441  	LaunchProfileStateCreateFailed = "CREATE_FAILED"
 12442  
 12443  	// LaunchProfileStateUpdateFailed is a LaunchProfileState enum value
 12444  	LaunchProfileStateUpdateFailed = "UPDATE_FAILED"
 12445  )
 12446  
 12447  // LaunchProfileState_Values returns all elements of the LaunchProfileState enum
 12448  func LaunchProfileState_Values() []string {
 12449  	return []string{
 12450  		LaunchProfileStateCreateInProgress,
 12451  		LaunchProfileStateReady,
 12452  		LaunchProfileStateUpdateInProgress,
 12453  		LaunchProfileStateDeleteInProgress,
 12454  		LaunchProfileStateDeleted,
 12455  		LaunchProfileStateDeleteFailed,
 12456  		LaunchProfileStateCreateFailed,
 12457  		LaunchProfileStateUpdateFailed,
 12458  	}
 12459  }
 12460  
 12461  const (
 12462  	// LaunchProfileStatusCodeLaunchProfileCreated is a LaunchProfileStatusCode enum value
 12463  	LaunchProfileStatusCodeLaunchProfileCreated = "LAUNCH_PROFILE_CREATED"
 12464  
 12465  	// LaunchProfileStatusCodeLaunchProfileUpdated is a LaunchProfileStatusCode enum value
 12466  	LaunchProfileStatusCodeLaunchProfileUpdated = "LAUNCH_PROFILE_UPDATED"
 12467  
 12468  	// LaunchProfileStatusCodeLaunchProfileDeleted is a LaunchProfileStatusCode enum value
 12469  	LaunchProfileStatusCodeLaunchProfileDeleted = "LAUNCH_PROFILE_DELETED"
 12470  
 12471  	// LaunchProfileStatusCodeLaunchProfileCreateInProgress is a LaunchProfileStatusCode enum value
 12472  	LaunchProfileStatusCodeLaunchProfileCreateInProgress = "LAUNCH_PROFILE_CREATE_IN_PROGRESS"
 12473  
 12474  	// LaunchProfileStatusCodeLaunchProfileUpdateInProgress is a LaunchProfileStatusCode enum value
 12475  	LaunchProfileStatusCodeLaunchProfileUpdateInProgress = "LAUNCH_PROFILE_UPDATE_IN_PROGRESS"
 12476  
 12477  	// LaunchProfileStatusCodeLaunchProfileDeleteInProgress is a LaunchProfileStatusCode enum value
 12478  	LaunchProfileStatusCodeLaunchProfileDeleteInProgress = "LAUNCH_PROFILE_DELETE_IN_PROGRESS"
 12479  
 12480  	// LaunchProfileStatusCodeInternalError is a LaunchProfileStatusCode enum value
 12481  	LaunchProfileStatusCodeInternalError = "INTERNAL_ERROR"
 12482  
 12483  	// LaunchProfileStatusCodeStreamingImageNotFound is a LaunchProfileStatusCode enum value
 12484  	LaunchProfileStatusCodeStreamingImageNotFound = "STREAMING_IMAGE_NOT_FOUND"
 12485  
 12486  	// LaunchProfileStatusCodeStreamingImageNotReady is a LaunchProfileStatusCode enum value
 12487  	LaunchProfileStatusCodeStreamingImageNotReady = "STREAMING_IMAGE_NOT_READY"
 12488  
 12489  	// LaunchProfileStatusCodeLaunchProfileWithStreamSessionsNotDeleted is a LaunchProfileStatusCode enum value
 12490  	LaunchProfileStatusCodeLaunchProfileWithStreamSessionsNotDeleted = "LAUNCH_PROFILE_WITH_STREAM_SESSIONS_NOT_DELETED"
 12491  
 12492  	// LaunchProfileStatusCodeEncryptionKeyAccessDenied is a LaunchProfileStatusCode enum value
 12493  	LaunchProfileStatusCodeEncryptionKeyAccessDenied = "ENCRYPTION_KEY_ACCESS_DENIED"
 12494  
 12495  	// LaunchProfileStatusCodeEncryptionKeyNotFound is a LaunchProfileStatusCode enum value
 12496  	LaunchProfileStatusCodeEncryptionKeyNotFound = "ENCRYPTION_KEY_NOT_FOUND"
 12497  
 12498  	// LaunchProfileStatusCodeInvalidSubnetsProvided is a LaunchProfileStatusCode enum value
 12499  	LaunchProfileStatusCodeInvalidSubnetsProvided = "INVALID_SUBNETS_PROVIDED"
 12500  )
 12501  
 12502  // LaunchProfileStatusCode_Values returns all elements of the LaunchProfileStatusCode enum
 12503  func LaunchProfileStatusCode_Values() []string {
 12504  	return []string{
 12505  		LaunchProfileStatusCodeLaunchProfileCreated,
 12506  		LaunchProfileStatusCodeLaunchProfileUpdated,
 12507  		LaunchProfileStatusCodeLaunchProfileDeleted,
 12508  		LaunchProfileStatusCodeLaunchProfileCreateInProgress,
 12509  		LaunchProfileStatusCodeLaunchProfileUpdateInProgress,
 12510  		LaunchProfileStatusCodeLaunchProfileDeleteInProgress,
 12511  		LaunchProfileStatusCodeInternalError,
 12512  		LaunchProfileStatusCodeStreamingImageNotFound,
 12513  		LaunchProfileStatusCodeStreamingImageNotReady,
 12514  		LaunchProfileStatusCodeLaunchProfileWithStreamSessionsNotDeleted,
 12515  		LaunchProfileStatusCodeEncryptionKeyAccessDenied,
 12516  		LaunchProfileStatusCodeEncryptionKeyNotFound,
 12517  		LaunchProfileStatusCodeInvalidSubnetsProvided,
 12518  	}
 12519  }
 12520  
 12521  const (
 12522  	// StreamingClipboardModeEnabled is a StreamingClipboardMode enum value
 12523  	StreamingClipboardModeEnabled = "ENABLED"
 12524  
 12525  	// StreamingClipboardModeDisabled is a StreamingClipboardMode enum value
 12526  	StreamingClipboardModeDisabled = "DISABLED"
 12527  )
 12528  
 12529  // StreamingClipboardMode_Values returns all elements of the StreamingClipboardMode enum
 12530  func StreamingClipboardMode_Values() []string {
 12531  	return []string{
 12532  		StreamingClipboardModeEnabled,
 12533  		StreamingClipboardModeDisabled,
 12534  	}
 12535  }
 12536  
 12537  const (
 12538  	// StreamingImageEncryptionConfigurationKeyTypeCustomerManagedKey is a StreamingImageEncryptionConfigurationKeyType enum value
 12539  	StreamingImageEncryptionConfigurationKeyTypeCustomerManagedKey = "CUSTOMER_MANAGED_KEY"
 12540  )
 12541  
 12542  // StreamingImageEncryptionConfigurationKeyType_Values returns all elements of the StreamingImageEncryptionConfigurationKeyType enum
 12543  func StreamingImageEncryptionConfigurationKeyType_Values() []string {
 12544  	return []string{
 12545  		StreamingImageEncryptionConfigurationKeyTypeCustomerManagedKey,
 12546  	}
 12547  }
 12548  
 12549  const (
 12550  	// StreamingImageStateCreateInProgress is a StreamingImageState enum value
 12551  	StreamingImageStateCreateInProgress = "CREATE_IN_PROGRESS"
 12552  
 12553  	// StreamingImageStateReady is a StreamingImageState enum value
 12554  	StreamingImageStateReady = "READY"
 12555  
 12556  	// StreamingImageStateDeleteInProgress is a StreamingImageState enum value
 12557  	StreamingImageStateDeleteInProgress = "DELETE_IN_PROGRESS"
 12558  
 12559  	// StreamingImageStateDeleted is a StreamingImageState enum value
 12560  	StreamingImageStateDeleted = "DELETED"
 12561  
 12562  	// StreamingImageStateUpdateInProgress is a StreamingImageState enum value
 12563  	StreamingImageStateUpdateInProgress = "UPDATE_IN_PROGRESS"
 12564  
 12565  	// StreamingImageStateUpdateFailed is a StreamingImageState enum value
 12566  	StreamingImageStateUpdateFailed = "UPDATE_FAILED"
 12567  
 12568  	// StreamingImageStateCreateFailed is a StreamingImageState enum value
 12569  	StreamingImageStateCreateFailed = "CREATE_FAILED"
 12570  
 12571  	// StreamingImageStateDeleteFailed is a StreamingImageState enum value
 12572  	StreamingImageStateDeleteFailed = "DELETE_FAILED"
 12573  )
 12574  
 12575  // StreamingImageState_Values returns all elements of the StreamingImageState enum
 12576  func StreamingImageState_Values() []string {
 12577  	return []string{
 12578  		StreamingImageStateCreateInProgress,
 12579  		StreamingImageStateReady,
 12580  		StreamingImageStateDeleteInProgress,
 12581  		StreamingImageStateDeleted,
 12582  		StreamingImageStateUpdateInProgress,
 12583  		StreamingImageStateUpdateFailed,
 12584  		StreamingImageStateCreateFailed,
 12585  		StreamingImageStateDeleteFailed,
 12586  	}
 12587  }
 12588  
 12589  // The status code.
 12590  const (
 12591  	// StreamingImageStatusCodeStreamingImageCreateInProgress is a StreamingImageStatusCode enum value
 12592  	StreamingImageStatusCodeStreamingImageCreateInProgress = "STREAMING_IMAGE_CREATE_IN_PROGRESS"
 12593  
 12594  	// StreamingImageStatusCodeStreamingImageReady is a StreamingImageStatusCode enum value
 12595  	StreamingImageStatusCodeStreamingImageReady = "STREAMING_IMAGE_READY"
 12596  
 12597  	// StreamingImageStatusCodeStreamingImageDeleteInProgress is a StreamingImageStatusCode enum value
 12598  	StreamingImageStatusCodeStreamingImageDeleteInProgress = "STREAMING_IMAGE_DELETE_IN_PROGRESS"
 12599  
 12600  	// StreamingImageStatusCodeStreamingImageDeleted is a StreamingImageStatusCode enum value
 12601  	StreamingImageStatusCodeStreamingImageDeleted = "STREAMING_IMAGE_DELETED"
 12602  
 12603  	// StreamingImageStatusCodeStreamingImageUpdateInProgress is a StreamingImageStatusCode enum value
 12604  	StreamingImageStatusCodeStreamingImageUpdateInProgress = "STREAMING_IMAGE_UPDATE_IN_PROGRESS"
 12605  
 12606  	// StreamingImageStatusCodeInternalError is a StreamingImageStatusCode enum value
 12607  	StreamingImageStatusCodeInternalError = "INTERNAL_ERROR"
 12608  )
 12609  
 12610  // StreamingImageStatusCode_Values returns all elements of the StreamingImageStatusCode enum
 12611  func StreamingImageStatusCode_Values() []string {
 12612  	return []string{
 12613  		StreamingImageStatusCodeStreamingImageCreateInProgress,
 12614  		StreamingImageStatusCodeStreamingImageReady,
 12615  		StreamingImageStatusCodeStreamingImageDeleteInProgress,
 12616  		StreamingImageStatusCodeStreamingImageDeleted,
 12617  		StreamingImageStatusCodeStreamingImageUpdateInProgress,
 12618  		StreamingImageStatusCodeInternalError,
 12619  	}
 12620  }
 12621  
 12622  const (
 12623  	// StreamingInstanceTypeG4dnXlarge is a StreamingInstanceType enum value
 12624  	StreamingInstanceTypeG4dnXlarge = "g4dn.xlarge"
 12625  
 12626  	// StreamingInstanceTypeG4dn2xlarge is a StreamingInstanceType enum value
 12627  	StreamingInstanceTypeG4dn2xlarge = "g4dn.2xlarge"
 12628  
 12629  	// StreamingInstanceTypeG4dn4xlarge is a StreamingInstanceType enum value
 12630  	StreamingInstanceTypeG4dn4xlarge = "g4dn.4xlarge"
 12631  
 12632  	// StreamingInstanceTypeG4dn8xlarge is a StreamingInstanceType enum value
 12633  	StreamingInstanceTypeG4dn8xlarge = "g4dn.8xlarge"
 12634  
 12635  	// StreamingInstanceTypeG4dn12xlarge is a StreamingInstanceType enum value
 12636  	StreamingInstanceTypeG4dn12xlarge = "g4dn.12xlarge"
 12637  
 12638  	// StreamingInstanceTypeG4dn16xlarge is a StreamingInstanceType enum value
 12639  	StreamingInstanceTypeG4dn16xlarge = "g4dn.16xlarge"
 12640  )
 12641  
 12642  // StreamingInstanceType_Values returns all elements of the StreamingInstanceType enum
 12643  func StreamingInstanceType_Values() []string {
 12644  	return []string{
 12645  		StreamingInstanceTypeG4dnXlarge,
 12646  		StreamingInstanceTypeG4dn2xlarge,
 12647  		StreamingInstanceTypeG4dn4xlarge,
 12648  		StreamingInstanceTypeG4dn8xlarge,
 12649  		StreamingInstanceTypeG4dn12xlarge,
 12650  		StreamingInstanceTypeG4dn16xlarge,
 12651  	}
 12652  }
 12653  
 12654  // The streaming session state.
 12655  const (
 12656  	// StreamingSessionStateCreateInProgress is a StreamingSessionState enum value
 12657  	StreamingSessionStateCreateInProgress = "CREATE_IN_PROGRESS"
 12658  
 12659  	// StreamingSessionStateDeleteInProgress is a StreamingSessionState enum value
 12660  	StreamingSessionStateDeleteInProgress = "DELETE_IN_PROGRESS"
 12661  
 12662  	// StreamingSessionStateReady is a StreamingSessionState enum value
 12663  	StreamingSessionStateReady = "READY"
 12664  
 12665  	// StreamingSessionStateDeleted is a StreamingSessionState enum value
 12666  	StreamingSessionStateDeleted = "DELETED"
 12667  
 12668  	// StreamingSessionStateCreateFailed is a StreamingSessionState enum value
 12669  	StreamingSessionStateCreateFailed = "CREATE_FAILED"
 12670  
 12671  	// StreamingSessionStateDeleteFailed is a StreamingSessionState enum value
 12672  	StreamingSessionStateDeleteFailed = "DELETE_FAILED"
 12673  )
 12674  
 12675  // StreamingSessionState_Values returns all elements of the StreamingSessionState enum
 12676  func StreamingSessionState_Values() []string {
 12677  	return []string{
 12678  		StreamingSessionStateCreateInProgress,
 12679  		StreamingSessionStateDeleteInProgress,
 12680  		StreamingSessionStateReady,
 12681  		StreamingSessionStateDeleted,
 12682  		StreamingSessionStateCreateFailed,
 12683  		StreamingSessionStateDeleteFailed,
 12684  	}
 12685  }
 12686  
 12687  const (
 12688  	// StreamingSessionStatusCodeStreamingSessionReady is a StreamingSessionStatusCode enum value
 12689  	StreamingSessionStatusCodeStreamingSessionReady = "STREAMING_SESSION_READY"
 12690  
 12691  	// StreamingSessionStatusCodeStreamingSessionDeleted is a StreamingSessionStatusCode enum value
 12692  	StreamingSessionStatusCodeStreamingSessionDeleted = "STREAMING_SESSION_DELETED"
 12693  
 12694  	// StreamingSessionStatusCodeStreamingSessionCreateInProgress is a StreamingSessionStatusCode enum value
 12695  	StreamingSessionStatusCodeStreamingSessionCreateInProgress = "STREAMING_SESSION_CREATE_IN_PROGRESS"
 12696  
 12697  	// StreamingSessionStatusCodeStreamingSessionDeleteInProgress is a StreamingSessionStatusCode enum value
 12698  	StreamingSessionStatusCodeStreamingSessionDeleteInProgress = "STREAMING_SESSION_DELETE_IN_PROGRESS"
 12699  
 12700  	// StreamingSessionStatusCodeInternalError is a StreamingSessionStatusCode enum value
 12701  	StreamingSessionStatusCodeInternalError = "INTERNAL_ERROR"
 12702  
 12703  	// StreamingSessionStatusCodeInsufficientCapacity is a StreamingSessionStatusCode enum value
 12704  	StreamingSessionStatusCodeInsufficientCapacity = "INSUFFICIENT_CAPACITY"
 12705  
 12706  	// StreamingSessionStatusCodeActiveDirectoryDomainJoinError is a StreamingSessionStatusCode enum value
 12707  	StreamingSessionStatusCodeActiveDirectoryDomainJoinError = "ACTIVE_DIRECTORY_DOMAIN_JOIN_ERROR"
 12708  
 12709  	// StreamingSessionStatusCodeNetworkConnectionError is a StreamingSessionStatusCode enum value
 12710  	StreamingSessionStatusCodeNetworkConnectionError = "NETWORK_CONNECTION_ERROR"
 12711  
 12712  	// StreamingSessionStatusCodeInitializationScriptError is a StreamingSessionStatusCode enum value
 12713  	StreamingSessionStatusCodeInitializationScriptError = "INITIALIZATION_SCRIPT_ERROR"
 12714  
 12715  	// StreamingSessionStatusCodeDecryptStreamingImageError is a StreamingSessionStatusCode enum value
 12716  	StreamingSessionStatusCodeDecryptStreamingImageError = "DECRYPT_STREAMING_IMAGE_ERROR"
 12717  
 12718  	// StreamingSessionStatusCodeNetworkInterfaceError is a StreamingSessionStatusCode enum value
 12719  	StreamingSessionStatusCodeNetworkInterfaceError = "NETWORK_INTERFACE_ERROR"
 12720  )
 12721  
 12722  // StreamingSessionStatusCode_Values returns all elements of the StreamingSessionStatusCode enum
 12723  func StreamingSessionStatusCode_Values() []string {
 12724  	return []string{
 12725  		StreamingSessionStatusCodeStreamingSessionReady,
 12726  		StreamingSessionStatusCodeStreamingSessionDeleted,
 12727  		StreamingSessionStatusCodeStreamingSessionCreateInProgress,
 12728  		StreamingSessionStatusCodeStreamingSessionDeleteInProgress,
 12729  		StreamingSessionStatusCodeInternalError,
 12730  		StreamingSessionStatusCodeInsufficientCapacity,
 12731  		StreamingSessionStatusCodeActiveDirectoryDomainJoinError,
 12732  		StreamingSessionStatusCodeNetworkConnectionError,
 12733  		StreamingSessionStatusCodeInitializationScriptError,
 12734  		StreamingSessionStatusCodeDecryptStreamingImageError,
 12735  		StreamingSessionStatusCodeNetworkInterfaceError,
 12736  	}
 12737  }
 12738  
 12739  const (
 12740  	// StreamingSessionStreamStateReady is a StreamingSessionStreamState enum value
 12741  	StreamingSessionStreamStateReady = "READY"
 12742  
 12743  	// StreamingSessionStreamStateCreateInProgress is a StreamingSessionStreamState enum value
 12744  	StreamingSessionStreamStateCreateInProgress = "CREATE_IN_PROGRESS"
 12745  
 12746  	// StreamingSessionStreamStateDeleteInProgress is a StreamingSessionStreamState enum value
 12747  	StreamingSessionStreamStateDeleteInProgress = "DELETE_IN_PROGRESS"
 12748  
 12749  	// StreamingSessionStreamStateDeleted is a StreamingSessionStreamState enum value
 12750  	StreamingSessionStreamStateDeleted = "DELETED"
 12751  
 12752  	// StreamingSessionStreamStateCreateFailed is a StreamingSessionStreamState enum value
 12753  	StreamingSessionStreamStateCreateFailed = "CREATE_FAILED"
 12754  
 12755  	// StreamingSessionStreamStateDeleteFailed is a StreamingSessionStreamState enum value
 12756  	StreamingSessionStreamStateDeleteFailed = "DELETE_FAILED"
 12757  )
 12758  
 12759  // StreamingSessionStreamState_Values returns all elements of the StreamingSessionStreamState enum
 12760  func StreamingSessionStreamState_Values() []string {
 12761  	return []string{
 12762  		StreamingSessionStreamStateReady,
 12763  		StreamingSessionStreamStateCreateInProgress,
 12764  		StreamingSessionStreamStateDeleteInProgress,
 12765  		StreamingSessionStreamStateDeleted,
 12766  		StreamingSessionStreamStateCreateFailed,
 12767  		StreamingSessionStreamStateDeleteFailed,
 12768  	}
 12769  }
 12770  
 12771  const (
 12772  	// StreamingSessionStreamStatusCodeStreamCreateInProgress is a StreamingSessionStreamStatusCode enum value
 12773  	StreamingSessionStreamStatusCodeStreamCreateInProgress = "STREAM_CREATE_IN_PROGRESS"
 12774  
 12775  	// StreamingSessionStreamStatusCodeStreamReady is a StreamingSessionStreamStatusCode enum value
 12776  	StreamingSessionStreamStatusCodeStreamReady = "STREAM_READY"
 12777  
 12778  	// StreamingSessionStreamStatusCodeStreamDeleteInProgress is a StreamingSessionStreamStatusCode enum value
 12779  	StreamingSessionStreamStatusCodeStreamDeleteInProgress = "STREAM_DELETE_IN_PROGRESS"
 12780  
 12781  	// StreamingSessionStreamStatusCodeStreamDeleted is a StreamingSessionStreamStatusCode enum value
 12782  	StreamingSessionStreamStatusCodeStreamDeleted = "STREAM_DELETED"
 12783  
 12784  	// StreamingSessionStreamStatusCodeInternalError is a StreamingSessionStreamStatusCode enum value
 12785  	StreamingSessionStreamStatusCodeInternalError = "INTERNAL_ERROR"
 12786  
 12787  	// StreamingSessionStreamStatusCodeNetworkConnectionError is a StreamingSessionStreamStatusCode enum value
 12788  	StreamingSessionStreamStatusCodeNetworkConnectionError = "NETWORK_CONNECTION_ERROR"
 12789  )
 12790  
 12791  // StreamingSessionStreamStatusCode_Values returns all elements of the StreamingSessionStreamStatusCode enum
 12792  func StreamingSessionStreamStatusCode_Values() []string {
 12793  	return []string{
 12794  		StreamingSessionStreamStatusCodeStreamCreateInProgress,
 12795  		StreamingSessionStreamStatusCodeStreamReady,
 12796  		StreamingSessionStreamStatusCodeStreamDeleteInProgress,
 12797  		StreamingSessionStreamStatusCodeStreamDeleted,
 12798  		StreamingSessionStreamStatusCodeInternalError,
 12799  		StreamingSessionStreamStatusCodeNetworkConnectionError,
 12800  	}
 12801  }
 12802  
 12803  const (
 12804  	// StudioComponentInitializationScriptRunContextSystemInitialization is a StudioComponentInitializationScriptRunContext enum value
 12805  	StudioComponentInitializationScriptRunContextSystemInitialization = "SYSTEM_INITIALIZATION"
 12806  
 12807  	// StudioComponentInitializationScriptRunContextUserInitialization is a StudioComponentInitializationScriptRunContext enum value
 12808  	StudioComponentInitializationScriptRunContextUserInitialization = "USER_INITIALIZATION"
 12809  )
 12810  
 12811  // StudioComponentInitializationScriptRunContext_Values returns all elements of the StudioComponentInitializationScriptRunContext enum
 12812  func StudioComponentInitializationScriptRunContext_Values() []string {
 12813  	return []string{
 12814  		StudioComponentInitializationScriptRunContextSystemInitialization,
 12815  		StudioComponentInitializationScriptRunContextUserInitialization,
 12816  	}
 12817  }
 12818  
 12819  // The current state of the studio component resource.
 12820  //
 12821  // While a studio component is being created, modified, or deleted, its state
 12822  // will equal "CREATE_IN_PROGRESS", "UPDATE_IN_PROGRESS", or "DELETE_IN_PROGRESS"
 12823  //
 12824  // These are called 'transition states'.
 12825  //
 12826  // No modifications may be made to the studio component while it is in a transition
 12827  // state.
 12828  //
 12829  // If creation of the resource fails, the state will change to `CREATE_FAILED`.
 12830  // The resource StatusCode and StatusMessage will provide more information of
 12831  // why creation failed. The resource in this state will automatically be deleted
 12832  // from your account after a period of time.
 12833  //
 12834  // If updating the resource fails, the state will change to `UPDATE_FAILED`.
 12835  // The resource StatusCode and StatusMessage will provide more information of
 12836  // why the update failed. The resource will be returned to the state it was
 12837  // in when the update request was invoked.
 12838  //
 12839  // If deleting the resource fails, the state will change to `DELETE_FAILED`.
 12840  // The resource StatusCode and StatusMessage will provide more information of
 12841  // why the update failed. The resource will be returned to the state it was
 12842  // in when the update request was invoked. After the resource is deleted successfully,
 12843  // it will change to the "DELETED" state. The resource will no longer count
 12844  // against service quotas and cannot be used or acted upon any futher. It will
 12845  // be removed from your account after a period of time.
 12846  const (
 12847  	// StudioComponentStateCreateInProgress is a StudioComponentState enum value
 12848  	StudioComponentStateCreateInProgress = "CREATE_IN_PROGRESS"
 12849  
 12850  	// StudioComponentStateReady is a StudioComponentState enum value
 12851  	StudioComponentStateReady = "READY"
 12852  
 12853  	// StudioComponentStateUpdateInProgress is a StudioComponentState enum value
 12854  	StudioComponentStateUpdateInProgress = "UPDATE_IN_PROGRESS"
 12855  
 12856  	// StudioComponentStateDeleteInProgress is a StudioComponentState enum value
 12857  	StudioComponentStateDeleteInProgress = "DELETE_IN_PROGRESS"
 12858  
 12859  	// StudioComponentStateDeleted is a StudioComponentState enum value
 12860  	StudioComponentStateDeleted = "DELETED"
 12861  
 12862  	// StudioComponentStateDeleteFailed is a StudioComponentState enum value
 12863  	StudioComponentStateDeleteFailed = "DELETE_FAILED"
 12864  
 12865  	// StudioComponentStateCreateFailed is a StudioComponentState enum value
 12866  	StudioComponentStateCreateFailed = "CREATE_FAILED"
 12867  
 12868  	// StudioComponentStateUpdateFailed is a StudioComponentState enum value
 12869  	StudioComponentStateUpdateFailed = "UPDATE_FAILED"
 12870  )
 12871  
 12872  // StudioComponentState_Values returns all elements of the StudioComponentState enum
 12873  func StudioComponentState_Values() []string {
 12874  	return []string{
 12875  		StudioComponentStateCreateInProgress,
 12876  		StudioComponentStateReady,
 12877  		StudioComponentStateUpdateInProgress,
 12878  		StudioComponentStateDeleteInProgress,
 12879  		StudioComponentStateDeleted,
 12880  		StudioComponentStateDeleteFailed,
 12881  		StudioComponentStateCreateFailed,
 12882  		StudioComponentStateUpdateFailed,
 12883  	}
 12884  }
 12885  
 12886  // The current status of the studio component resource.
 12887  //
 12888  // When the resource is in the 'READY' state, the status code signals what the
 12889  // last mutation made to the resource was.
 12890  //
 12891  // When the resource is in a CREATE_FAILED/UPDATE_FAILED/DELETE_FAILED state,
 12892  // the status code signals what went wrong and why the mutation failed.
 12893  const (
 12894  	// StudioComponentStatusCodeActiveDirectoryAlreadyExists is a StudioComponentStatusCode enum value
 12895  	StudioComponentStatusCodeActiveDirectoryAlreadyExists = "ACTIVE_DIRECTORY_ALREADY_EXISTS"
 12896  
 12897  	// StudioComponentStatusCodeStudioComponentCreated is a StudioComponentStatusCode enum value
 12898  	StudioComponentStatusCodeStudioComponentCreated = "STUDIO_COMPONENT_CREATED"
 12899  
 12900  	// StudioComponentStatusCodeStudioComponentUpdated is a StudioComponentStatusCode enum value
 12901  	StudioComponentStatusCodeStudioComponentUpdated = "STUDIO_COMPONENT_UPDATED"
 12902  
 12903  	// StudioComponentStatusCodeStudioComponentDeleted is a StudioComponentStatusCode enum value
 12904  	StudioComponentStatusCodeStudioComponentDeleted = "STUDIO_COMPONENT_DELETED"
 12905  
 12906  	// StudioComponentStatusCodeEncryptionKeyAccessDenied is a StudioComponentStatusCode enum value
 12907  	StudioComponentStatusCodeEncryptionKeyAccessDenied = "ENCRYPTION_KEY_ACCESS_DENIED"
 12908  
 12909  	// StudioComponentStatusCodeEncryptionKeyNotFound is a StudioComponentStatusCode enum value
 12910  	StudioComponentStatusCodeEncryptionKeyNotFound = "ENCRYPTION_KEY_NOT_FOUND"
 12911  
 12912  	// StudioComponentStatusCodeStudioComponentCreateInProgress is a StudioComponentStatusCode enum value
 12913  	StudioComponentStatusCodeStudioComponentCreateInProgress = "STUDIO_COMPONENT_CREATE_IN_PROGRESS"
 12914  
 12915  	// StudioComponentStatusCodeStudioComponentUpdateInProgress is a StudioComponentStatusCode enum value
 12916  	StudioComponentStatusCodeStudioComponentUpdateInProgress = "STUDIO_COMPONENT_UPDATE_IN_PROGRESS"
 12917  
 12918  	// StudioComponentStatusCodeStudioComponentDeleteInProgress is a StudioComponentStatusCode enum value
 12919  	StudioComponentStatusCodeStudioComponentDeleteInProgress = "STUDIO_COMPONENT_DELETE_IN_PROGRESS"
 12920  
 12921  	// StudioComponentStatusCodeInternalError is a StudioComponentStatusCode enum value
 12922  	StudioComponentStatusCodeInternalError = "INTERNAL_ERROR"
 12923  )
 12924  
 12925  // StudioComponentStatusCode_Values returns all elements of the StudioComponentStatusCode enum
 12926  func StudioComponentStatusCode_Values() []string {
 12927  	return []string{
 12928  		StudioComponentStatusCodeActiveDirectoryAlreadyExists,
 12929  		StudioComponentStatusCodeStudioComponentCreated,
 12930  		StudioComponentStatusCodeStudioComponentUpdated,
 12931  		StudioComponentStatusCodeStudioComponentDeleted,
 12932  		StudioComponentStatusCodeEncryptionKeyAccessDenied,
 12933  		StudioComponentStatusCodeEncryptionKeyNotFound,
 12934  		StudioComponentStatusCodeStudioComponentCreateInProgress,
 12935  		StudioComponentStatusCodeStudioComponentUpdateInProgress,
 12936  		StudioComponentStatusCodeStudioComponentDeleteInProgress,
 12937  		StudioComponentStatusCodeInternalError,
 12938  	}
 12939  }
 12940  
 12941  const (
 12942  	// StudioComponentSubtypeAwsManagedMicrosoftAd is a StudioComponentSubtype enum value
 12943  	StudioComponentSubtypeAwsManagedMicrosoftAd = "AWS_MANAGED_MICROSOFT_AD"
 12944  
 12945  	// StudioComponentSubtypeAmazonFsxForWindows is a StudioComponentSubtype enum value
 12946  	StudioComponentSubtypeAmazonFsxForWindows = "AMAZON_FSX_FOR_WINDOWS"
 12947  
 12948  	// StudioComponentSubtypeAmazonFsxForLustre is a StudioComponentSubtype enum value
 12949  	StudioComponentSubtypeAmazonFsxForLustre = "AMAZON_FSX_FOR_LUSTRE"
 12950  
 12951  	// StudioComponentSubtypeCustom is a StudioComponentSubtype enum value
 12952  	StudioComponentSubtypeCustom = "CUSTOM"
 12953  )
 12954  
 12955  // StudioComponentSubtype_Values returns all elements of the StudioComponentSubtype enum
 12956  func StudioComponentSubtype_Values() []string {
 12957  	return []string{
 12958  		StudioComponentSubtypeAwsManagedMicrosoftAd,
 12959  		StudioComponentSubtypeAmazonFsxForWindows,
 12960  		StudioComponentSubtypeAmazonFsxForLustre,
 12961  		StudioComponentSubtypeCustom,
 12962  	}
 12963  }
 12964  
 12965  const (
 12966  	// StudioComponentTypeActiveDirectory is a StudioComponentType enum value
 12967  	StudioComponentTypeActiveDirectory = "ACTIVE_DIRECTORY"
 12968  
 12969  	// StudioComponentTypeSharedFileSystem is a StudioComponentType enum value
 12970  	StudioComponentTypeSharedFileSystem = "SHARED_FILE_SYSTEM"
 12971  
 12972  	// StudioComponentTypeComputeFarm is a StudioComponentType enum value
 12973  	StudioComponentTypeComputeFarm = "COMPUTE_FARM"
 12974  
 12975  	// StudioComponentTypeLicenseService is a StudioComponentType enum value
 12976  	StudioComponentTypeLicenseService = "LICENSE_SERVICE"
 12977  
 12978  	// StudioComponentTypeCustom is a StudioComponentType enum value
 12979  	StudioComponentTypeCustom = "CUSTOM"
 12980  )
 12981  
 12982  // StudioComponentType_Values returns all elements of the StudioComponentType enum
 12983  func StudioComponentType_Values() []string {
 12984  	return []string{
 12985  		StudioComponentTypeActiveDirectory,
 12986  		StudioComponentTypeSharedFileSystem,
 12987  		StudioComponentTypeComputeFarm,
 12988  		StudioComponentTypeLicenseService,
 12989  		StudioComponentTypeCustom,
 12990  	}
 12991  }
 12992  
 12993  // The type of KMS key that is used to encrypt studio data.
 12994  const (
 12995  	// StudioEncryptionConfigurationKeyTypeAwsOwnedKey is a StudioEncryptionConfigurationKeyType enum value
 12996  	StudioEncryptionConfigurationKeyTypeAwsOwnedKey = "AWS_OWNED_KEY"
 12997  
 12998  	// StudioEncryptionConfigurationKeyTypeCustomerManagedKey is a StudioEncryptionConfigurationKeyType enum value
 12999  	StudioEncryptionConfigurationKeyTypeCustomerManagedKey = "CUSTOMER_MANAGED_KEY"
 13000  )
 13001  
 13002  // StudioEncryptionConfigurationKeyType_Values returns all elements of the StudioEncryptionConfigurationKeyType enum
 13003  func StudioEncryptionConfigurationKeyType_Values() []string {
 13004  	return []string{
 13005  		StudioEncryptionConfigurationKeyTypeAwsOwnedKey,
 13006  		StudioEncryptionConfigurationKeyTypeCustomerManagedKey,
 13007  	}
 13008  }
 13009  
 13010  const (
 13011  	// StudioPersonaAdministrator is a StudioPersona enum value
 13012  	StudioPersonaAdministrator = "ADMINISTRATOR"
 13013  )
 13014  
 13015  // StudioPersona_Values returns all elements of the StudioPersona enum
 13016  func StudioPersona_Values() []string {
 13017  	return []string{
 13018  		StudioPersonaAdministrator,
 13019  	}
 13020  }
 13021  
 13022  const (
 13023  	// StudioStateCreateInProgress is a StudioState enum value
 13024  	StudioStateCreateInProgress = "CREATE_IN_PROGRESS"
 13025  
 13026  	// StudioStateReady is a StudioState enum value
 13027  	StudioStateReady = "READY"
 13028  
 13029  	// StudioStateUpdateInProgress is a StudioState enum value
 13030  	StudioStateUpdateInProgress = "UPDATE_IN_PROGRESS"
 13031  
 13032  	// StudioStateDeleteInProgress is a StudioState enum value
 13033  	StudioStateDeleteInProgress = "DELETE_IN_PROGRESS"
 13034  
 13035  	// StudioStateDeleted is a StudioState enum value
 13036  	StudioStateDeleted = "DELETED"
 13037  
 13038  	// StudioStateDeleteFailed is a StudioState enum value
 13039  	StudioStateDeleteFailed = "DELETE_FAILED"
 13040  
 13041  	// StudioStateCreateFailed is a StudioState enum value
 13042  	StudioStateCreateFailed = "CREATE_FAILED"
 13043  
 13044  	// StudioStateUpdateFailed is a StudioState enum value
 13045  	StudioStateUpdateFailed = "UPDATE_FAILED"
 13046  )
 13047  
 13048  // StudioState_Values returns all elements of the StudioState enum
 13049  func StudioState_Values() []string {
 13050  	return []string{
 13051  		StudioStateCreateInProgress,
 13052  		StudioStateReady,
 13053  		StudioStateUpdateInProgress,
 13054  		StudioStateDeleteInProgress,
 13055  		StudioStateDeleted,
 13056  		StudioStateDeleteFailed,
 13057  		StudioStateCreateFailed,
 13058  		StudioStateUpdateFailed,
 13059  	}
 13060  }
 13061  
 13062  // The status code.
 13063  const (
 13064  	// StudioStatusCodeStudioCreated is a StudioStatusCode enum value
 13065  	StudioStatusCodeStudioCreated = "STUDIO_CREATED"
 13066  
 13067  	// StudioStatusCodeStudioDeleted is a StudioStatusCode enum value
 13068  	StudioStatusCodeStudioDeleted = "STUDIO_DELETED"
 13069  
 13070  	// StudioStatusCodeStudioUpdated is a StudioStatusCode enum value
 13071  	StudioStatusCodeStudioUpdated = "STUDIO_UPDATED"
 13072  
 13073  	// StudioStatusCodeStudioCreateInProgress is a StudioStatusCode enum value
 13074  	StudioStatusCodeStudioCreateInProgress = "STUDIO_CREATE_IN_PROGRESS"
 13075  
 13076  	// StudioStatusCodeStudioUpdateInProgress is a StudioStatusCode enum value
 13077  	StudioStatusCodeStudioUpdateInProgress = "STUDIO_UPDATE_IN_PROGRESS"
 13078  
 13079  	// StudioStatusCodeStudioDeleteInProgress is a StudioStatusCode enum value
 13080  	StudioStatusCodeStudioDeleteInProgress = "STUDIO_DELETE_IN_PROGRESS"
 13081  
 13082  	// StudioStatusCodeStudioWithLaunchProfilesNotDeleted is a StudioStatusCode enum value
 13083  	StudioStatusCodeStudioWithLaunchProfilesNotDeleted = "STUDIO_WITH_LAUNCH_PROFILES_NOT_DELETED"
 13084  
 13085  	// StudioStatusCodeStudioWithStudioComponentsNotDeleted is a StudioStatusCode enum value
 13086  	StudioStatusCodeStudioWithStudioComponentsNotDeleted = "STUDIO_WITH_STUDIO_COMPONENTS_NOT_DELETED"
 13087  
 13088  	// StudioStatusCodeStudioWithStreamingImagesNotDeleted is a StudioStatusCode enum value
 13089  	StudioStatusCodeStudioWithStreamingImagesNotDeleted = "STUDIO_WITH_STREAMING_IMAGES_NOT_DELETED"
 13090  
 13091  	// StudioStatusCodeAwsSsoNotEnabled is a StudioStatusCode enum value
 13092  	StudioStatusCodeAwsSsoNotEnabled = "AWS_SSO_NOT_ENABLED"
 13093  
 13094  	// StudioStatusCodeAwsSsoAccessDenied is a StudioStatusCode enum value
 13095  	StudioStatusCodeAwsSsoAccessDenied = "AWS_SSO_ACCESS_DENIED"
 13096  
 13097  	// StudioStatusCodeRoleNotOwnedByStudioOwner is a StudioStatusCode enum value
 13098  	StudioStatusCodeRoleNotOwnedByStudioOwner = "ROLE_NOT_OWNED_BY_STUDIO_OWNER"
 13099  
 13100  	// StudioStatusCodeRoleCouldNotBeAssumed is a StudioStatusCode enum value
 13101  	StudioStatusCodeRoleCouldNotBeAssumed = "ROLE_COULD_NOT_BE_ASSUMED"
 13102  
 13103  	// StudioStatusCodeInternalError is a StudioStatusCode enum value
 13104  	StudioStatusCodeInternalError = "INTERNAL_ERROR"
 13105  
 13106  	// StudioStatusCodeEncryptionKeyNotFound is a StudioStatusCode enum value
 13107  	StudioStatusCodeEncryptionKeyNotFound = "ENCRYPTION_KEY_NOT_FOUND"
 13108  
 13109  	// StudioStatusCodeEncryptionKeyAccessDenied is a StudioStatusCode enum value
 13110  	StudioStatusCodeEncryptionKeyAccessDenied = "ENCRYPTION_KEY_ACCESS_DENIED"
 13111  
 13112  	// StudioStatusCodeAwsSsoConfigurationRepaired is a StudioStatusCode enum value
 13113  	StudioStatusCodeAwsSsoConfigurationRepaired = "AWS_SSO_CONFIGURATION_REPAIRED"
 13114  
 13115  	// StudioStatusCodeAwsSsoConfigurationRepairInProgress is a StudioStatusCode enum value
 13116  	StudioStatusCodeAwsSsoConfigurationRepairInProgress = "AWS_SSO_CONFIGURATION_REPAIR_IN_PROGRESS"
 13117  )
 13118  
 13119  // StudioStatusCode_Values returns all elements of the StudioStatusCode enum
 13120  func StudioStatusCode_Values() []string {
 13121  	return []string{
 13122  		StudioStatusCodeStudioCreated,
 13123  		StudioStatusCodeStudioDeleted,
 13124  		StudioStatusCodeStudioUpdated,
 13125  		StudioStatusCodeStudioCreateInProgress,
 13126  		StudioStatusCodeStudioUpdateInProgress,
 13127  		StudioStatusCodeStudioDeleteInProgress,
 13128  		StudioStatusCodeStudioWithLaunchProfilesNotDeleted,
 13129  		StudioStatusCodeStudioWithStudioComponentsNotDeleted,
 13130  		StudioStatusCodeStudioWithStreamingImagesNotDeleted,
 13131  		StudioStatusCodeAwsSsoNotEnabled,
 13132  		StudioStatusCodeAwsSsoAccessDenied,
 13133  		StudioStatusCodeRoleNotOwnedByStudioOwner,
 13134  		StudioStatusCodeRoleCouldNotBeAssumed,
 13135  		StudioStatusCodeInternalError,
 13136  		StudioStatusCodeEncryptionKeyNotFound,
 13137  		StudioStatusCodeEncryptionKeyAccessDenied,
 13138  		StudioStatusCodeAwsSsoConfigurationRepaired,
 13139  		StudioStatusCodeAwsSsoConfigurationRepairInProgress,
 13140  	}
 13141  }