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

     1  // Code generated by private/model/cli/gen-api/main.go. DO NOT EDIT.
     2  
     3  package mobile
     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  )
    14  
    15  const opCreateProject = "CreateProject"
    16  
    17  // CreateProjectRequest generates a "aws/request.Request" representing the
    18  // client's request for the CreateProject operation. The "output" return
    19  // value will be populated with the request's response once the request completes
    20  // successfully.
    21  //
    22  // Use "Send" method on the returned Request to send the API call to the service.
    23  // the "output" return value is not valid until after Send returns without error.
    24  //
    25  // See CreateProject for more information on using the CreateProject
    26  // API call, and error handling.
    27  //
    28  // This method is useful when you want to inject custom logic or configuration
    29  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
    30  //
    31  //
    32  //    // Example sending a request using the CreateProjectRequest method.
    33  //    req, resp := client.CreateProjectRequest(params)
    34  //
    35  //    err := req.Send()
    36  //    if err == nil { // resp is now filled
    37  //        fmt.Println(resp)
    38  //    }
    39  //
    40  // See also, https://docs.aws.amazon.com/goto/WebAPI/mobile-2017-07-01/CreateProject
    41  func (c *Mobile) CreateProjectRequest(input *CreateProjectInput) (req *request.Request, output *CreateProjectOutput) {
    42  	op := &request.Operation{
    43  		Name:       opCreateProject,
    44  		HTTPMethod: "POST",
    45  		HTTPPath:   "/projects",
    46  	}
    47  
    48  	if input == nil {
    49  		input = &CreateProjectInput{}
    50  	}
    51  
    52  	output = &CreateProjectOutput{}
    53  	req = c.newRequest(op, input, output)
    54  	return
    55  }
    56  
    57  // CreateProject API operation for AWS Mobile.
    58  //
    59  // Creates an AWS Mobile Hub project.
    60  //
    61  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
    62  // with awserr.Error's Code and Message methods to get detailed information about
    63  // the error.
    64  //
    65  // See the AWS API reference guide for AWS Mobile's
    66  // API operation CreateProject for usage and error information.
    67  //
    68  // Returned Error Types:
    69  //   * InternalFailureException
    70  //   The service has encountered an unexpected error condition which prevents
    71  //   it from servicing the request.
    72  //
    73  //   * ServiceUnavailableException
    74  //   The service is temporarily unavailable. The request should be retried after
    75  //   some time delay.
    76  //
    77  //   * UnauthorizedException
    78  //   Credentials of the caller are insufficient to authorize the request.
    79  //
    80  //   * TooManyRequestsException
    81  //   Too many requests have been received for this AWS account in too short a
    82  //   time. The request should be retried after some time delay.
    83  //
    84  //   * BadRequestException
    85  //   The request cannot be processed because some parameter is not valid or the
    86  //   project state prevents the operation from being performed.
    87  //
    88  //   * NotFoundException
    89  //   No entity can be found with the specified identifier.
    90  //
    91  //   * LimitExceededException
    92  //   There are too many AWS Mobile Hub projects in the account or the account
    93  //   has exceeded the maximum number of resources in some AWS service. You should
    94  //   create another sub-account using AWS Organizations or remove some resources
    95  //   and retry your request.
    96  //
    97  // See also, https://docs.aws.amazon.com/goto/WebAPI/mobile-2017-07-01/CreateProject
    98  func (c *Mobile) CreateProject(input *CreateProjectInput) (*CreateProjectOutput, error) {
    99  	req, out := c.CreateProjectRequest(input)
   100  	return out, req.Send()
   101  }
   102  
   103  // CreateProjectWithContext is the same as CreateProject with the addition of
   104  // the ability to pass a context and additional request options.
   105  //
   106  // See CreateProject for details on how to use this API operation.
   107  //
   108  // The context must be non-nil and will be used for request cancellation. If
   109  // the context is nil a panic will occur. In the future the SDK may create
   110  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
   111  // for more information on using Contexts.
   112  func (c *Mobile) CreateProjectWithContext(ctx aws.Context, input *CreateProjectInput, opts ...request.Option) (*CreateProjectOutput, error) {
   113  	req, out := c.CreateProjectRequest(input)
   114  	req.SetContext(ctx)
   115  	req.ApplyOptions(opts...)
   116  	return out, req.Send()
   117  }
   118  
   119  const opDeleteProject = "DeleteProject"
   120  
   121  // DeleteProjectRequest generates a "aws/request.Request" representing the
   122  // client's request for the DeleteProject operation. The "output" return
   123  // value will be populated with the request's response once the request completes
   124  // successfully.
   125  //
   126  // Use "Send" method on the returned Request to send the API call to the service.
   127  // the "output" return value is not valid until after Send returns without error.
   128  //
   129  // See DeleteProject for more information on using the DeleteProject
   130  // API call, and error handling.
   131  //
   132  // This method is useful when you want to inject custom logic or configuration
   133  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
   134  //
   135  //
   136  //    // Example sending a request using the DeleteProjectRequest method.
   137  //    req, resp := client.DeleteProjectRequest(params)
   138  //
   139  //    err := req.Send()
   140  //    if err == nil { // resp is now filled
   141  //        fmt.Println(resp)
   142  //    }
   143  //
   144  // See also, https://docs.aws.amazon.com/goto/WebAPI/mobile-2017-07-01/DeleteProject
   145  func (c *Mobile) DeleteProjectRequest(input *DeleteProjectInput) (req *request.Request, output *DeleteProjectOutput) {
   146  	op := &request.Operation{
   147  		Name:       opDeleteProject,
   148  		HTTPMethod: "DELETE",
   149  		HTTPPath:   "/projects/{projectId}",
   150  	}
   151  
   152  	if input == nil {
   153  		input = &DeleteProjectInput{}
   154  	}
   155  
   156  	output = &DeleteProjectOutput{}
   157  	req = c.newRequest(op, input, output)
   158  	return
   159  }
   160  
   161  // DeleteProject API operation for AWS Mobile.
   162  //
   163  // Delets a project in AWS Mobile Hub.
   164  //
   165  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
   166  // with awserr.Error's Code and Message methods to get detailed information about
   167  // the error.
   168  //
   169  // See the AWS API reference guide for AWS Mobile's
   170  // API operation DeleteProject for usage and error information.
   171  //
   172  // Returned Error Types:
   173  //   * InternalFailureException
   174  //   The service has encountered an unexpected error condition which prevents
   175  //   it from servicing the request.
   176  //
   177  //   * ServiceUnavailableException
   178  //   The service is temporarily unavailable. The request should be retried after
   179  //   some time delay.
   180  //
   181  //   * UnauthorizedException
   182  //   Credentials of the caller are insufficient to authorize the request.
   183  //
   184  //   * TooManyRequestsException
   185  //   Too many requests have been received for this AWS account in too short a
   186  //   time. The request should be retried after some time delay.
   187  //
   188  //   * NotFoundException
   189  //   No entity can be found with the specified identifier.
   190  //
   191  // See also, https://docs.aws.amazon.com/goto/WebAPI/mobile-2017-07-01/DeleteProject
   192  func (c *Mobile) DeleteProject(input *DeleteProjectInput) (*DeleteProjectOutput, error) {
   193  	req, out := c.DeleteProjectRequest(input)
   194  	return out, req.Send()
   195  }
   196  
   197  // DeleteProjectWithContext is the same as DeleteProject with the addition of
   198  // the ability to pass a context and additional request options.
   199  //
   200  // See DeleteProject for details on how to use this API operation.
   201  //
   202  // The context must be non-nil and will be used for request cancellation. If
   203  // the context is nil a panic will occur. In the future the SDK may create
   204  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
   205  // for more information on using Contexts.
   206  func (c *Mobile) DeleteProjectWithContext(ctx aws.Context, input *DeleteProjectInput, opts ...request.Option) (*DeleteProjectOutput, error) {
   207  	req, out := c.DeleteProjectRequest(input)
   208  	req.SetContext(ctx)
   209  	req.ApplyOptions(opts...)
   210  	return out, req.Send()
   211  }
   212  
   213  const opDescribeBundle = "DescribeBundle"
   214  
   215  // DescribeBundleRequest generates a "aws/request.Request" representing the
   216  // client's request for the DescribeBundle operation. The "output" return
   217  // value will be populated with the request's response once the request completes
   218  // successfully.
   219  //
   220  // Use "Send" method on the returned Request to send the API call to the service.
   221  // the "output" return value is not valid until after Send returns without error.
   222  //
   223  // See DescribeBundle for more information on using the DescribeBundle
   224  // API call, and error handling.
   225  //
   226  // This method is useful when you want to inject custom logic or configuration
   227  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
   228  //
   229  //
   230  //    // Example sending a request using the DescribeBundleRequest method.
   231  //    req, resp := client.DescribeBundleRequest(params)
   232  //
   233  //    err := req.Send()
   234  //    if err == nil { // resp is now filled
   235  //        fmt.Println(resp)
   236  //    }
   237  //
   238  // See also, https://docs.aws.amazon.com/goto/WebAPI/mobile-2017-07-01/DescribeBundle
   239  func (c *Mobile) DescribeBundleRequest(input *DescribeBundleInput) (req *request.Request, output *DescribeBundleOutput) {
   240  	op := &request.Operation{
   241  		Name:       opDescribeBundle,
   242  		HTTPMethod: "GET",
   243  		HTTPPath:   "/bundles/{bundleId}",
   244  	}
   245  
   246  	if input == nil {
   247  		input = &DescribeBundleInput{}
   248  	}
   249  
   250  	output = &DescribeBundleOutput{}
   251  	req = c.newRequest(op, input, output)
   252  	return
   253  }
   254  
   255  // DescribeBundle API operation for AWS Mobile.
   256  //
   257  // Get the bundle details for the requested bundle id.
   258  //
   259  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
   260  // with awserr.Error's Code and Message methods to get detailed information about
   261  // the error.
   262  //
   263  // See the AWS API reference guide for AWS Mobile's
   264  // API operation DescribeBundle for usage and error information.
   265  //
   266  // Returned Error Types:
   267  //   * InternalFailureException
   268  //   The service has encountered an unexpected error condition which prevents
   269  //   it from servicing the request.
   270  //
   271  //   * ServiceUnavailableException
   272  //   The service is temporarily unavailable. The request should be retried after
   273  //   some time delay.
   274  //
   275  //   * UnauthorizedException
   276  //   Credentials of the caller are insufficient to authorize the request.
   277  //
   278  //   * TooManyRequestsException
   279  //   Too many requests have been received for this AWS account in too short a
   280  //   time. The request should be retried after some time delay.
   281  //
   282  //   * BadRequestException
   283  //   The request cannot be processed because some parameter is not valid or the
   284  //   project state prevents the operation from being performed.
   285  //
   286  //   * NotFoundException
   287  //   No entity can be found with the specified identifier.
   288  //
   289  // See also, https://docs.aws.amazon.com/goto/WebAPI/mobile-2017-07-01/DescribeBundle
   290  func (c *Mobile) DescribeBundle(input *DescribeBundleInput) (*DescribeBundleOutput, error) {
   291  	req, out := c.DescribeBundleRequest(input)
   292  	return out, req.Send()
   293  }
   294  
   295  // DescribeBundleWithContext is the same as DescribeBundle with the addition of
   296  // the ability to pass a context and additional request options.
   297  //
   298  // See DescribeBundle for details on how to use this API operation.
   299  //
   300  // The context must be non-nil and will be used for request cancellation. If
   301  // the context is nil a panic will occur. In the future the SDK may create
   302  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
   303  // for more information on using Contexts.
   304  func (c *Mobile) DescribeBundleWithContext(ctx aws.Context, input *DescribeBundleInput, opts ...request.Option) (*DescribeBundleOutput, error) {
   305  	req, out := c.DescribeBundleRequest(input)
   306  	req.SetContext(ctx)
   307  	req.ApplyOptions(opts...)
   308  	return out, req.Send()
   309  }
   310  
   311  const opDescribeProject = "DescribeProject"
   312  
   313  // DescribeProjectRequest generates a "aws/request.Request" representing the
   314  // client's request for the DescribeProject operation. The "output" return
   315  // value will be populated with the request's response once the request completes
   316  // successfully.
   317  //
   318  // Use "Send" method on the returned Request to send the API call to the service.
   319  // the "output" return value is not valid until after Send returns without error.
   320  //
   321  // See DescribeProject for more information on using the DescribeProject
   322  // API call, and error handling.
   323  //
   324  // This method is useful when you want to inject custom logic or configuration
   325  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
   326  //
   327  //
   328  //    // Example sending a request using the DescribeProjectRequest method.
   329  //    req, resp := client.DescribeProjectRequest(params)
   330  //
   331  //    err := req.Send()
   332  //    if err == nil { // resp is now filled
   333  //        fmt.Println(resp)
   334  //    }
   335  //
   336  // See also, https://docs.aws.amazon.com/goto/WebAPI/mobile-2017-07-01/DescribeProject
   337  func (c *Mobile) DescribeProjectRequest(input *DescribeProjectInput) (req *request.Request, output *DescribeProjectOutput) {
   338  	op := &request.Operation{
   339  		Name:       opDescribeProject,
   340  		HTTPMethod: "GET",
   341  		HTTPPath:   "/project",
   342  	}
   343  
   344  	if input == nil {
   345  		input = &DescribeProjectInput{}
   346  	}
   347  
   348  	output = &DescribeProjectOutput{}
   349  	req = c.newRequest(op, input, output)
   350  	return
   351  }
   352  
   353  // DescribeProject API operation for AWS Mobile.
   354  //
   355  // Gets details about a project in AWS Mobile Hub.
   356  //
   357  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
   358  // with awserr.Error's Code and Message methods to get detailed information about
   359  // the error.
   360  //
   361  // See the AWS API reference guide for AWS Mobile's
   362  // API operation DescribeProject for usage and error information.
   363  //
   364  // Returned Error Types:
   365  //   * InternalFailureException
   366  //   The service has encountered an unexpected error condition which prevents
   367  //   it from servicing the request.
   368  //
   369  //   * ServiceUnavailableException
   370  //   The service is temporarily unavailable. The request should be retried after
   371  //   some time delay.
   372  //
   373  //   * UnauthorizedException
   374  //   Credentials of the caller are insufficient to authorize the request.
   375  //
   376  //   * TooManyRequestsException
   377  //   Too many requests have been received for this AWS account in too short a
   378  //   time. The request should be retried after some time delay.
   379  //
   380  //   * BadRequestException
   381  //   The request cannot be processed because some parameter is not valid or the
   382  //   project state prevents the operation from being performed.
   383  //
   384  //   * NotFoundException
   385  //   No entity can be found with the specified identifier.
   386  //
   387  // See also, https://docs.aws.amazon.com/goto/WebAPI/mobile-2017-07-01/DescribeProject
   388  func (c *Mobile) DescribeProject(input *DescribeProjectInput) (*DescribeProjectOutput, error) {
   389  	req, out := c.DescribeProjectRequest(input)
   390  	return out, req.Send()
   391  }
   392  
   393  // DescribeProjectWithContext is the same as DescribeProject with the addition of
   394  // the ability to pass a context and additional request options.
   395  //
   396  // See DescribeProject for details on how to use this API operation.
   397  //
   398  // The context must be non-nil and will be used for request cancellation. If
   399  // the context is nil a panic will occur. In the future the SDK may create
   400  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
   401  // for more information on using Contexts.
   402  func (c *Mobile) DescribeProjectWithContext(ctx aws.Context, input *DescribeProjectInput, opts ...request.Option) (*DescribeProjectOutput, error) {
   403  	req, out := c.DescribeProjectRequest(input)
   404  	req.SetContext(ctx)
   405  	req.ApplyOptions(opts...)
   406  	return out, req.Send()
   407  }
   408  
   409  const opExportBundle = "ExportBundle"
   410  
   411  // ExportBundleRequest generates a "aws/request.Request" representing the
   412  // client's request for the ExportBundle operation. The "output" return
   413  // value will be populated with the request's response once the request completes
   414  // successfully.
   415  //
   416  // Use "Send" method on the returned Request to send the API call to the service.
   417  // the "output" return value is not valid until after Send returns without error.
   418  //
   419  // See ExportBundle for more information on using the ExportBundle
   420  // API call, and error handling.
   421  //
   422  // This method is useful when you want to inject custom logic or configuration
   423  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
   424  //
   425  //
   426  //    // Example sending a request using the ExportBundleRequest method.
   427  //    req, resp := client.ExportBundleRequest(params)
   428  //
   429  //    err := req.Send()
   430  //    if err == nil { // resp is now filled
   431  //        fmt.Println(resp)
   432  //    }
   433  //
   434  // See also, https://docs.aws.amazon.com/goto/WebAPI/mobile-2017-07-01/ExportBundle
   435  func (c *Mobile) ExportBundleRequest(input *ExportBundleInput) (req *request.Request, output *ExportBundleOutput) {
   436  	op := &request.Operation{
   437  		Name:       opExportBundle,
   438  		HTTPMethod: "POST",
   439  		HTTPPath:   "/bundles/{bundleId}",
   440  	}
   441  
   442  	if input == nil {
   443  		input = &ExportBundleInput{}
   444  	}
   445  
   446  	output = &ExportBundleOutput{}
   447  	req = c.newRequest(op, input, output)
   448  	return
   449  }
   450  
   451  // ExportBundle API operation for AWS Mobile.
   452  //
   453  // Generates customized software development kit (SDK) and or tool packages
   454  // used to integrate mobile web or mobile app clients with backend AWS resources.
   455  //
   456  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
   457  // with awserr.Error's Code and Message methods to get detailed information about
   458  // the error.
   459  //
   460  // See the AWS API reference guide for AWS Mobile's
   461  // API operation ExportBundle for usage and error information.
   462  //
   463  // Returned Error Types:
   464  //   * InternalFailureException
   465  //   The service has encountered an unexpected error condition which prevents
   466  //   it from servicing the request.
   467  //
   468  //   * ServiceUnavailableException
   469  //   The service is temporarily unavailable. The request should be retried after
   470  //   some time delay.
   471  //
   472  //   * UnauthorizedException
   473  //   Credentials of the caller are insufficient to authorize the request.
   474  //
   475  //   * TooManyRequestsException
   476  //   Too many requests have been received for this AWS account in too short a
   477  //   time. The request should be retried after some time delay.
   478  //
   479  //   * BadRequestException
   480  //   The request cannot be processed because some parameter is not valid or the
   481  //   project state prevents the operation from being performed.
   482  //
   483  //   * NotFoundException
   484  //   No entity can be found with the specified identifier.
   485  //
   486  // See also, https://docs.aws.amazon.com/goto/WebAPI/mobile-2017-07-01/ExportBundle
   487  func (c *Mobile) ExportBundle(input *ExportBundleInput) (*ExportBundleOutput, error) {
   488  	req, out := c.ExportBundleRequest(input)
   489  	return out, req.Send()
   490  }
   491  
   492  // ExportBundleWithContext is the same as ExportBundle with the addition of
   493  // the ability to pass a context and additional request options.
   494  //
   495  // See ExportBundle for details on how to use this API operation.
   496  //
   497  // The context must be non-nil and will be used for request cancellation. If
   498  // the context is nil a panic will occur. In the future the SDK may create
   499  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
   500  // for more information on using Contexts.
   501  func (c *Mobile) ExportBundleWithContext(ctx aws.Context, input *ExportBundleInput, opts ...request.Option) (*ExportBundleOutput, error) {
   502  	req, out := c.ExportBundleRequest(input)
   503  	req.SetContext(ctx)
   504  	req.ApplyOptions(opts...)
   505  	return out, req.Send()
   506  }
   507  
   508  const opExportProject = "ExportProject"
   509  
   510  // ExportProjectRequest generates a "aws/request.Request" representing the
   511  // client's request for the ExportProject operation. The "output" return
   512  // value will be populated with the request's response once the request completes
   513  // successfully.
   514  //
   515  // Use "Send" method on the returned Request to send the API call to the service.
   516  // the "output" return value is not valid until after Send returns without error.
   517  //
   518  // See ExportProject for more information on using the ExportProject
   519  // API call, and error handling.
   520  //
   521  // This method is useful when you want to inject custom logic or configuration
   522  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
   523  //
   524  //
   525  //    // Example sending a request using the ExportProjectRequest method.
   526  //    req, resp := client.ExportProjectRequest(params)
   527  //
   528  //    err := req.Send()
   529  //    if err == nil { // resp is now filled
   530  //        fmt.Println(resp)
   531  //    }
   532  //
   533  // See also, https://docs.aws.amazon.com/goto/WebAPI/mobile-2017-07-01/ExportProject
   534  func (c *Mobile) ExportProjectRequest(input *ExportProjectInput) (req *request.Request, output *ExportProjectOutput) {
   535  	op := &request.Operation{
   536  		Name:       opExportProject,
   537  		HTTPMethod: "POST",
   538  		HTTPPath:   "/exports/{projectId}",
   539  	}
   540  
   541  	if input == nil {
   542  		input = &ExportProjectInput{}
   543  	}
   544  
   545  	output = &ExportProjectOutput{}
   546  	req = c.newRequest(op, input, output)
   547  	return
   548  }
   549  
   550  // ExportProject API operation for AWS Mobile.
   551  //
   552  // Exports project configuration to a snapshot which can be downloaded and shared.
   553  // Note that mobile app push credentials are encrypted in exported projects,
   554  // so they can only be shared successfully within the same AWS account.
   555  //
   556  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
   557  // with awserr.Error's Code and Message methods to get detailed information about
   558  // the error.
   559  //
   560  // See the AWS API reference guide for AWS Mobile's
   561  // API operation ExportProject for usage and error information.
   562  //
   563  // Returned Error Types:
   564  //   * InternalFailureException
   565  //   The service has encountered an unexpected error condition which prevents
   566  //   it from servicing the request.
   567  //
   568  //   * ServiceUnavailableException
   569  //   The service is temporarily unavailable. The request should be retried after
   570  //   some time delay.
   571  //
   572  //   * UnauthorizedException
   573  //   Credentials of the caller are insufficient to authorize the request.
   574  //
   575  //   * TooManyRequestsException
   576  //   Too many requests have been received for this AWS account in too short a
   577  //   time. The request should be retried after some time delay.
   578  //
   579  //   * BadRequestException
   580  //   The request cannot be processed because some parameter is not valid or the
   581  //   project state prevents the operation from being performed.
   582  //
   583  //   * NotFoundException
   584  //   No entity can be found with the specified identifier.
   585  //
   586  // See also, https://docs.aws.amazon.com/goto/WebAPI/mobile-2017-07-01/ExportProject
   587  func (c *Mobile) ExportProject(input *ExportProjectInput) (*ExportProjectOutput, error) {
   588  	req, out := c.ExportProjectRequest(input)
   589  	return out, req.Send()
   590  }
   591  
   592  // ExportProjectWithContext is the same as ExportProject with the addition of
   593  // the ability to pass a context and additional request options.
   594  //
   595  // See ExportProject for details on how to use this API operation.
   596  //
   597  // The context must be non-nil and will be used for request cancellation. If
   598  // the context is nil a panic will occur. In the future the SDK may create
   599  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
   600  // for more information on using Contexts.
   601  func (c *Mobile) ExportProjectWithContext(ctx aws.Context, input *ExportProjectInput, opts ...request.Option) (*ExportProjectOutput, error) {
   602  	req, out := c.ExportProjectRequest(input)
   603  	req.SetContext(ctx)
   604  	req.ApplyOptions(opts...)
   605  	return out, req.Send()
   606  }
   607  
   608  const opListBundles = "ListBundles"
   609  
   610  // ListBundlesRequest generates a "aws/request.Request" representing the
   611  // client's request for the ListBundles operation. The "output" return
   612  // value will be populated with the request's response once the request completes
   613  // successfully.
   614  //
   615  // Use "Send" method on the returned Request to send the API call to the service.
   616  // the "output" return value is not valid until after Send returns without error.
   617  //
   618  // See ListBundles for more information on using the ListBundles
   619  // API call, and error handling.
   620  //
   621  // This method is useful when you want to inject custom logic or configuration
   622  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
   623  //
   624  //
   625  //    // Example sending a request using the ListBundlesRequest method.
   626  //    req, resp := client.ListBundlesRequest(params)
   627  //
   628  //    err := req.Send()
   629  //    if err == nil { // resp is now filled
   630  //        fmt.Println(resp)
   631  //    }
   632  //
   633  // See also, https://docs.aws.amazon.com/goto/WebAPI/mobile-2017-07-01/ListBundles
   634  func (c *Mobile) ListBundlesRequest(input *ListBundlesInput) (req *request.Request, output *ListBundlesOutput) {
   635  	op := &request.Operation{
   636  		Name:       opListBundles,
   637  		HTTPMethod: "GET",
   638  		HTTPPath:   "/bundles",
   639  		Paginator: &request.Paginator{
   640  			InputTokens:     []string{"nextToken"},
   641  			OutputTokens:    []string{"nextToken"},
   642  			LimitToken:      "maxResults",
   643  			TruncationToken: "",
   644  		},
   645  	}
   646  
   647  	if input == nil {
   648  		input = &ListBundlesInput{}
   649  	}
   650  
   651  	output = &ListBundlesOutput{}
   652  	req = c.newRequest(op, input, output)
   653  	return
   654  }
   655  
   656  // ListBundles API operation for AWS Mobile.
   657  //
   658  // List all available bundles.
   659  //
   660  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
   661  // with awserr.Error's Code and Message methods to get detailed information about
   662  // the error.
   663  //
   664  // See the AWS API reference guide for AWS Mobile's
   665  // API operation ListBundles for usage and error information.
   666  //
   667  // Returned Error Types:
   668  //   * InternalFailureException
   669  //   The service has encountered an unexpected error condition which prevents
   670  //   it from servicing the request.
   671  //
   672  //   * ServiceUnavailableException
   673  //   The service is temporarily unavailable. The request should be retried after
   674  //   some time delay.
   675  //
   676  //   * UnauthorizedException
   677  //   Credentials of the caller are insufficient to authorize the request.
   678  //
   679  //   * TooManyRequestsException
   680  //   Too many requests have been received for this AWS account in too short a
   681  //   time. The request should be retried after some time delay.
   682  //
   683  //   * BadRequestException
   684  //   The request cannot be processed because some parameter is not valid or the
   685  //   project state prevents the operation from being performed.
   686  //
   687  // See also, https://docs.aws.amazon.com/goto/WebAPI/mobile-2017-07-01/ListBundles
   688  func (c *Mobile) ListBundles(input *ListBundlesInput) (*ListBundlesOutput, error) {
   689  	req, out := c.ListBundlesRequest(input)
   690  	return out, req.Send()
   691  }
   692  
   693  // ListBundlesWithContext is the same as ListBundles with the addition of
   694  // the ability to pass a context and additional request options.
   695  //
   696  // See ListBundles for details on how to use this API operation.
   697  //
   698  // The context must be non-nil and will be used for request cancellation. If
   699  // the context is nil a panic will occur. In the future the SDK may create
   700  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
   701  // for more information on using Contexts.
   702  func (c *Mobile) ListBundlesWithContext(ctx aws.Context, input *ListBundlesInput, opts ...request.Option) (*ListBundlesOutput, error) {
   703  	req, out := c.ListBundlesRequest(input)
   704  	req.SetContext(ctx)
   705  	req.ApplyOptions(opts...)
   706  	return out, req.Send()
   707  }
   708  
   709  // ListBundlesPages iterates over the pages of a ListBundles operation,
   710  // calling the "fn" function with the response data for each page. To stop
   711  // iterating, return false from the fn function.
   712  //
   713  // See ListBundles method for more information on how to use this operation.
   714  //
   715  // Note: This operation can generate multiple requests to a service.
   716  //
   717  //    // Example iterating over at most 3 pages of a ListBundles operation.
   718  //    pageNum := 0
   719  //    err := client.ListBundlesPages(params,
   720  //        func(page *mobile.ListBundlesOutput, lastPage bool) bool {
   721  //            pageNum++
   722  //            fmt.Println(page)
   723  //            return pageNum <= 3
   724  //        })
   725  //
   726  func (c *Mobile) ListBundlesPages(input *ListBundlesInput, fn func(*ListBundlesOutput, bool) bool) error {
   727  	return c.ListBundlesPagesWithContext(aws.BackgroundContext(), input, fn)
   728  }
   729  
   730  // ListBundlesPagesWithContext same as ListBundlesPages except
   731  // it takes a Context and allows setting request options on the pages.
   732  //
   733  // The context must be non-nil and will be used for request cancellation. If
   734  // the context is nil a panic will occur. In the future the SDK may create
   735  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
   736  // for more information on using Contexts.
   737  func (c *Mobile) ListBundlesPagesWithContext(ctx aws.Context, input *ListBundlesInput, fn func(*ListBundlesOutput, bool) bool, opts ...request.Option) error {
   738  	p := request.Pagination{
   739  		NewRequest: func() (*request.Request, error) {
   740  			var inCpy *ListBundlesInput
   741  			if input != nil {
   742  				tmp := *input
   743  				inCpy = &tmp
   744  			}
   745  			req, _ := c.ListBundlesRequest(inCpy)
   746  			req.SetContext(ctx)
   747  			req.ApplyOptions(opts...)
   748  			return req, nil
   749  		},
   750  	}
   751  
   752  	for p.Next() {
   753  		if !fn(p.Page().(*ListBundlesOutput), !p.HasNextPage()) {
   754  			break
   755  		}
   756  	}
   757  
   758  	return p.Err()
   759  }
   760  
   761  const opListProjects = "ListProjects"
   762  
   763  // ListProjectsRequest generates a "aws/request.Request" representing the
   764  // client's request for the ListProjects operation. The "output" return
   765  // value will be populated with the request's response once the request completes
   766  // successfully.
   767  //
   768  // Use "Send" method on the returned Request to send the API call to the service.
   769  // the "output" return value is not valid until after Send returns without error.
   770  //
   771  // See ListProjects for more information on using the ListProjects
   772  // API call, and error handling.
   773  //
   774  // This method is useful when you want to inject custom logic or configuration
   775  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
   776  //
   777  //
   778  //    // Example sending a request using the ListProjectsRequest method.
   779  //    req, resp := client.ListProjectsRequest(params)
   780  //
   781  //    err := req.Send()
   782  //    if err == nil { // resp is now filled
   783  //        fmt.Println(resp)
   784  //    }
   785  //
   786  // See also, https://docs.aws.amazon.com/goto/WebAPI/mobile-2017-07-01/ListProjects
   787  func (c *Mobile) ListProjectsRequest(input *ListProjectsInput) (req *request.Request, output *ListProjectsOutput) {
   788  	op := &request.Operation{
   789  		Name:       opListProjects,
   790  		HTTPMethod: "GET",
   791  		HTTPPath:   "/projects",
   792  		Paginator: &request.Paginator{
   793  			InputTokens:     []string{"nextToken"},
   794  			OutputTokens:    []string{"nextToken"},
   795  			LimitToken:      "maxResults",
   796  			TruncationToken: "",
   797  		},
   798  	}
   799  
   800  	if input == nil {
   801  		input = &ListProjectsInput{}
   802  	}
   803  
   804  	output = &ListProjectsOutput{}
   805  	req = c.newRequest(op, input, output)
   806  	return
   807  }
   808  
   809  // ListProjects API operation for AWS Mobile.
   810  //
   811  // Lists projects in AWS Mobile Hub.
   812  //
   813  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
   814  // with awserr.Error's Code and Message methods to get detailed information about
   815  // the error.
   816  //
   817  // See the AWS API reference guide for AWS Mobile's
   818  // API operation ListProjects for usage and error information.
   819  //
   820  // Returned Error Types:
   821  //   * InternalFailureException
   822  //   The service has encountered an unexpected error condition which prevents
   823  //   it from servicing the request.
   824  //
   825  //   * ServiceUnavailableException
   826  //   The service is temporarily unavailable. The request should be retried after
   827  //   some time delay.
   828  //
   829  //   * UnauthorizedException
   830  //   Credentials of the caller are insufficient to authorize the request.
   831  //
   832  //   * TooManyRequestsException
   833  //   Too many requests have been received for this AWS account in too short a
   834  //   time. The request should be retried after some time delay.
   835  //
   836  //   * BadRequestException
   837  //   The request cannot be processed because some parameter is not valid or the
   838  //   project state prevents the operation from being performed.
   839  //
   840  // See also, https://docs.aws.amazon.com/goto/WebAPI/mobile-2017-07-01/ListProjects
   841  func (c *Mobile) ListProjects(input *ListProjectsInput) (*ListProjectsOutput, error) {
   842  	req, out := c.ListProjectsRequest(input)
   843  	return out, req.Send()
   844  }
   845  
   846  // ListProjectsWithContext is the same as ListProjects with the addition of
   847  // the ability to pass a context and additional request options.
   848  //
   849  // See ListProjects for details on how to use this API operation.
   850  //
   851  // The context must be non-nil and will be used for request cancellation. If
   852  // the context is nil a panic will occur. In the future the SDK may create
   853  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
   854  // for more information on using Contexts.
   855  func (c *Mobile) ListProjectsWithContext(ctx aws.Context, input *ListProjectsInput, opts ...request.Option) (*ListProjectsOutput, error) {
   856  	req, out := c.ListProjectsRequest(input)
   857  	req.SetContext(ctx)
   858  	req.ApplyOptions(opts...)
   859  	return out, req.Send()
   860  }
   861  
   862  // ListProjectsPages iterates over the pages of a ListProjects operation,
   863  // calling the "fn" function with the response data for each page. To stop
   864  // iterating, return false from the fn function.
   865  //
   866  // See ListProjects method for more information on how to use this operation.
   867  //
   868  // Note: This operation can generate multiple requests to a service.
   869  //
   870  //    // Example iterating over at most 3 pages of a ListProjects operation.
   871  //    pageNum := 0
   872  //    err := client.ListProjectsPages(params,
   873  //        func(page *mobile.ListProjectsOutput, lastPage bool) bool {
   874  //            pageNum++
   875  //            fmt.Println(page)
   876  //            return pageNum <= 3
   877  //        })
   878  //
   879  func (c *Mobile) ListProjectsPages(input *ListProjectsInput, fn func(*ListProjectsOutput, bool) bool) error {
   880  	return c.ListProjectsPagesWithContext(aws.BackgroundContext(), input, fn)
   881  }
   882  
   883  // ListProjectsPagesWithContext same as ListProjectsPages except
   884  // it takes a Context and allows setting request options on the pages.
   885  //
   886  // The context must be non-nil and will be used for request cancellation. If
   887  // the context is nil a panic will occur. In the future the SDK may create
   888  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
   889  // for more information on using Contexts.
   890  func (c *Mobile) ListProjectsPagesWithContext(ctx aws.Context, input *ListProjectsInput, fn func(*ListProjectsOutput, bool) bool, opts ...request.Option) error {
   891  	p := request.Pagination{
   892  		NewRequest: func() (*request.Request, error) {
   893  			var inCpy *ListProjectsInput
   894  			if input != nil {
   895  				tmp := *input
   896  				inCpy = &tmp
   897  			}
   898  			req, _ := c.ListProjectsRequest(inCpy)
   899  			req.SetContext(ctx)
   900  			req.ApplyOptions(opts...)
   901  			return req, nil
   902  		},
   903  	}
   904  
   905  	for p.Next() {
   906  		if !fn(p.Page().(*ListProjectsOutput), !p.HasNextPage()) {
   907  			break
   908  		}
   909  	}
   910  
   911  	return p.Err()
   912  }
   913  
   914  const opUpdateProject = "UpdateProject"
   915  
   916  // UpdateProjectRequest generates a "aws/request.Request" representing the
   917  // client's request for the UpdateProject operation. The "output" return
   918  // value will be populated with the request's response once the request completes
   919  // successfully.
   920  //
   921  // Use "Send" method on the returned Request to send the API call to the service.
   922  // the "output" return value is not valid until after Send returns without error.
   923  //
   924  // See UpdateProject for more information on using the UpdateProject
   925  // API call, and error handling.
   926  //
   927  // This method is useful when you want to inject custom logic or configuration
   928  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
   929  //
   930  //
   931  //    // Example sending a request using the UpdateProjectRequest method.
   932  //    req, resp := client.UpdateProjectRequest(params)
   933  //
   934  //    err := req.Send()
   935  //    if err == nil { // resp is now filled
   936  //        fmt.Println(resp)
   937  //    }
   938  //
   939  // See also, https://docs.aws.amazon.com/goto/WebAPI/mobile-2017-07-01/UpdateProject
   940  func (c *Mobile) UpdateProjectRequest(input *UpdateProjectInput) (req *request.Request, output *UpdateProjectOutput) {
   941  	op := &request.Operation{
   942  		Name:       opUpdateProject,
   943  		HTTPMethod: "POST",
   944  		HTTPPath:   "/update",
   945  	}
   946  
   947  	if input == nil {
   948  		input = &UpdateProjectInput{}
   949  	}
   950  
   951  	output = &UpdateProjectOutput{}
   952  	req = c.newRequest(op, input, output)
   953  	return
   954  }
   955  
   956  // UpdateProject API operation for AWS Mobile.
   957  //
   958  // Update an existing project.
   959  //
   960  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
   961  // with awserr.Error's Code and Message methods to get detailed information about
   962  // the error.
   963  //
   964  // See the AWS API reference guide for AWS Mobile's
   965  // API operation UpdateProject for usage and error information.
   966  //
   967  // Returned Error Types:
   968  //   * InternalFailureException
   969  //   The service has encountered an unexpected error condition which prevents
   970  //   it from servicing the request.
   971  //
   972  //   * ServiceUnavailableException
   973  //   The service is temporarily unavailable. The request should be retried after
   974  //   some time delay.
   975  //
   976  //   * UnauthorizedException
   977  //   Credentials of the caller are insufficient to authorize the request.
   978  //
   979  //   * TooManyRequestsException
   980  //   Too many requests have been received for this AWS account in too short a
   981  //   time. The request should be retried after some time delay.
   982  //
   983  //   * BadRequestException
   984  //   The request cannot be processed because some parameter is not valid or the
   985  //   project state prevents the operation from being performed.
   986  //
   987  //   * NotFoundException
   988  //   No entity can be found with the specified identifier.
   989  //
   990  //   * AccountActionRequiredException
   991  //   Account Action is required in order to continue the request.
   992  //
   993  //   * LimitExceededException
   994  //   There are too many AWS Mobile Hub projects in the account or the account
   995  //   has exceeded the maximum number of resources in some AWS service. You should
   996  //   create another sub-account using AWS Organizations or remove some resources
   997  //   and retry your request.
   998  //
   999  // See also, https://docs.aws.amazon.com/goto/WebAPI/mobile-2017-07-01/UpdateProject
  1000  func (c *Mobile) UpdateProject(input *UpdateProjectInput) (*UpdateProjectOutput, error) {
  1001  	req, out := c.UpdateProjectRequest(input)
  1002  	return out, req.Send()
  1003  }
  1004  
  1005  // UpdateProjectWithContext is the same as UpdateProject with the addition of
  1006  // the ability to pass a context and additional request options.
  1007  //
  1008  // See UpdateProject for details on how to use this API operation.
  1009  //
  1010  // The context must be non-nil and will be used for request cancellation. If
  1011  // the context is nil a panic will occur. In the future the SDK may create
  1012  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  1013  // for more information on using Contexts.
  1014  func (c *Mobile) UpdateProjectWithContext(ctx aws.Context, input *UpdateProjectInput, opts ...request.Option) (*UpdateProjectOutput, error) {
  1015  	req, out := c.UpdateProjectRequest(input)
  1016  	req.SetContext(ctx)
  1017  	req.ApplyOptions(opts...)
  1018  	return out, req.Send()
  1019  }
  1020  
  1021  // Account Action is required in order to continue the request.
  1022  type AccountActionRequiredException struct {
  1023  	_            struct{}                  `type:"structure"`
  1024  	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
  1025  
  1026  	// The Exception Error Message.
  1027  	Message_ *string `locationName:"message" type:"string"`
  1028  }
  1029  
  1030  // String returns the string representation.
  1031  //
  1032  // API parameter values that are decorated as "sensitive" in the API will not
  1033  // be included in the string output. The member name will be present, but the
  1034  // value will be replaced with "sensitive".
  1035  func (s AccountActionRequiredException) String() string {
  1036  	return awsutil.Prettify(s)
  1037  }
  1038  
  1039  // GoString returns the string representation.
  1040  //
  1041  // API parameter values that are decorated as "sensitive" in the API will not
  1042  // be included in the string output. The member name will be present, but the
  1043  // value will be replaced with "sensitive".
  1044  func (s AccountActionRequiredException) GoString() string {
  1045  	return s.String()
  1046  }
  1047  
  1048  func newErrorAccountActionRequiredException(v protocol.ResponseMetadata) error {
  1049  	return &AccountActionRequiredException{
  1050  		RespMetadata: v,
  1051  	}
  1052  }
  1053  
  1054  // Code returns the exception type name.
  1055  func (s *AccountActionRequiredException) Code() string {
  1056  	return "AccountActionRequiredException"
  1057  }
  1058  
  1059  // Message returns the exception's message.
  1060  func (s *AccountActionRequiredException) Message() string {
  1061  	if s.Message_ != nil {
  1062  		return *s.Message_
  1063  	}
  1064  	return ""
  1065  }
  1066  
  1067  // OrigErr always returns nil, satisfies awserr.Error interface.
  1068  func (s *AccountActionRequiredException) OrigErr() error {
  1069  	return nil
  1070  }
  1071  
  1072  func (s *AccountActionRequiredException) Error() string {
  1073  	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
  1074  }
  1075  
  1076  // Status code returns the HTTP status code for the request's response error.
  1077  func (s *AccountActionRequiredException) StatusCode() int {
  1078  	return s.RespMetadata.StatusCode
  1079  }
  1080  
  1081  // RequestID returns the service's response RequestID for request.
  1082  func (s *AccountActionRequiredException) RequestID() string {
  1083  	return s.RespMetadata.RequestID
  1084  }
  1085  
  1086  // The request cannot be processed because some parameter is not valid or the
  1087  // project state prevents the operation from being performed.
  1088  type BadRequestException struct {
  1089  	_            struct{}                  `type:"structure"`
  1090  	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
  1091  
  1092  	// The Exception Error Message.
  1093  	Message_ *string `locationName:"message" type:"string"`
  1094  }
  1095  
  1096  // String returns the string representation.
  1097  //
  1098  // API parameter values that are decorated as "sensitive" in the API will not
  1099  // be included in the string output. The member name will be present, but the
  1100  // value will be replaced with "sensitive".
  1101  func (s BadRequestException) String() string {
  1102  	return awsutil.Prettify(s)
  1103  }
  1104  
  1105  // GoString returns the string representation.
  1106  //
  1107  // API parameter values that are decorated as "sensitive" in the API will not
  1108  // be included in the string output. The member name will be present, but the
  1109  // value will be replaced with "sensitive".
  1110  func (s BadRequestException) GoString() string {
  1111  	return s.String()
  1112  }
  1113  
  1114  func newErrorBadRequestException(v protocol.ResponseMetadata) error {
  1115  	return &BadRequestException{
  1116  		RespMetadata: v,
  1117  	}
  1118  }
  1119  
  1120  // Code returns the exception type name.
  1121  func (s *BadRequestException) Code() string {
  1122  	return "BadRequestException"
  1123  }
  1124  
  1125  // Message returns the exception's message.
  1126  func (s *BadRequestException) Message() string {
  1127  	if s.Message_ != nil {
  1128  		return *s.Message_
  1129  	}
  1130  	return ""
  1131  }
  1132  
  1133  // OrigErr always returns nil, satisfies awserr.Error interface.
  1134  func (s *BadRequestException) OrigErr() error {
  1135  	return nil
  1136  }
  1137  
  1138  func (s *BadRequestException) Error() string {
  1139  	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
  1140  }
  1141  
  1142  // Status code returns the HTTP status code for the request's response error.
  1143  func (s *BadRequestException) StatusCode() int {
  1144  	return s.RespMetadata.StatusCode
  1145  }
  1146  
  1147  // RequestID returns the service's response RequestID for request.
  1148  func (s *BadRequestException) RequestID() string {
  1149  	return s.RespMetadata.RequestID
  1150  }
  1151  
  1152  // The details of the bundle.
  1153  type BundleDetails struct {
  1154  	_ struct{} `type:"structure"`
  1155  
  1156  	// Developer desktop or mobile app or website platforms.
  1157  	AvailablePlatforms []*string `locationName:"availablePlatforms" type:"list"`
  1158  
  1159  	// Unique bundle identifier.
  1160  	BundleId *string `locationName:"bundleId" type:"string"`
  1161  
  1162  	// Description of the download bundle.
  1163  	Description *string `locationName:"description" type:"string"`
  1164  
  1165  	// Icon for the download bundle.
  1166  	IconUrl *string `locationName:"iconUrl" type:"string"`
  1167  
  1168  	// Title of the download bundle.
  1169  	Title *string `locationName:"title" type:"string"`
  1170  
  1171  	// Version of the download bundle.
  1172  	Version *string `locationName:"version" type:"string"`
  1173  }
  1174  
  1175  // String returns the string representation.
  1176  //
  1177  // API parameter values that are decorated as "sensitive" in the API will not
  1178  // be included in the string output. The member name will be present, but the
  1179  // value will be replaced with "sensitive".
  1180  func (s BundleDetails) String() string {
  1181  	return awsutil.Prettify(s)
  1182  }
  1183  
  1184  // GoString returns the string representation.
  1185  //
  1186  // API parameter values that are decorated as "sensitive" in the API will not
  1187  // be included in the string output. The member name will be present, but the
  1188  // value will be replaced with "sensitive".
  1189  func (s BundleDetails) GoString() string {
  1190  	return s.String()
  1191  }
  1192  
  1193  // SetAvailablePlatforms sets the AvailablePlatforms field's value.
  1194  func (s *BundleDetails) SetAvailablePlatforms(v []*string) *BundleDetails {
  1195  	s.AvailablePlatforms = v
  1196  	return s
  1197  }
  1198  
  1199  // SetBundleId sets the BundleId field's value.
  1200  func (s *BundleDetails) SetBundleId(v string) *BundleDetails {
  1201  	s.BundleId = &v
  1202  	return s
  1203  }
  1204  
  1205  // SetDescription sets the Description field's value.
  1206  func (s *BundleDetails) SetDescription(v string) *BundleDetails {
  1207  	s.Description = &v
  1208  	return s
  1209  }
  1210  
  1211  // SetIconUrl sets the IconUrl field's value.
  1212  func (s *BundleDetails) SetIconUrl(v string) *BundleDetails {
  1213  	s.IconUrl = &v
  1214  	return s
  1215  }
  1216  
  1217  // SetTitle sets the Title field's value.
  1218  func (s *BundleDetails) SetTitle(v string) *BundleDetails {
  1219  	s.Title = &v
  1220  	return s
  1221  }
  1222  
  1223  // SetVersion sets the Version field's value.
  1224  func (s *BundleDetails) SetVersion(v string) *BundleDetails {
  1225  	s.Version = &v
  1226  	return s
  1227  }
  1228  
  1229  // Request structure used to request a project be created.
  1230  type CreateProjectInput struct {
  1231  	_ struct{} `type:"structure" payload:"Contents"`
  1232  
  1233  	// ZIP or YAML file which contains configuration settings to be used when creating
  1234  	// the project. This may be the contents of the file downloaded from the URL
  1235  	// provided in an export project operation.
  1236  	Contents []byte `locationName:"contents" type:"blob"`
  1237  
  1238  	// Name of the project.
  1239  	Name *string `location:"querystring" locationName:"name" type:"string"`
  1240  
  1241  	// Default region where project resources should be created.
  1242  	Region *string `location:"querystring" locationName:"region" type:"string"`
  1243  
  1244  	// Unique identifier for an exported snapshot of project configuration. This
  1245  	// snapshot identifier is included in the share URL when a project is exported.
  1246  	SnapshotId *string `location:"querystring" locationName:"snapshotId" type:"string"`
  1247  }
  1248  
  1249  // String returns the string representation.
  1250  //
  1251  // API parameter values that are decorated as "sensitive" in the API will not
  1252  // be included in the string output. The member name will be present, but the
  1253  // value will be replaced with "sensitive".
  1254  func (s CreateProjectInput) String() string {
  1255  	return awsutil.Prettify(s)
  1256  }
  1257  
  1258  // GoString returns the string representation.
  1259  //
  1260  // API parameter values that are decorated as "sensitive" in the API will not
  1261  // be included in the string output. The member name will be present, but the
  1262  // value will be replaced with "sensitive".
  1263  func (s CreateProjectInput) GoString() string {
  1264  	return s.String()
  1265  }
  1266  
  1267  // SetContents sets the Contents field's value.
  1268  func (s *CreateProjectInput) SetContents(v []byte) *CreateProjectInput {
  1269  	s.Contents = v
  1270  	return s
  1271  }
  1272  
  1273  // SetName sets the Name field's value.
  1274  func (s *CreateProjectInput) SetName(v string) *CreateProjectInput {
  1275  	s.Name = &v
  1276  	return s
  1277  }
  1278  
  1279  // SetRegion sets the Region field's value.
  1280  func (s *CreateProjectInput) SetRegion(v string) *CreateProjectInput {
  1281  	s.Region = &v
  1282  	return s
  1283  }
  1284  
  1285  // SetSnapshotId sets the SnapshotId field's value.
  1286  func (s *CreateProjectInput) SetSnapshotId(v string) *CreateProjectInput {
  1287  	s.SnapshotId = &v
  1288  	return s
  1289  }
  1290  
  1291  // Result structure used in response to a request to create a project.
  1292  type CreateProjectOutput struct {
  1293  	_ struct{} `type:"structure"`
  1294  
  1295  	// Detailed information about the created AWS Mobile Hub project.
  1296  	Details *ProjectDetails `locationName:"details" type:"structure"`
  1297  }
  1298  
  1299  // String returns the string representation.
  1300  //
  1301  // API parameter values that are decorated as "sensitive" in the API will not
  1302  // be included in the string output. The member name will be present, but the
  1303  // value will be replaced with "sensitive".
  1304  func (s CreateProjectOutput) String() string {
  1305  	return awsutil.Prettify(s)
  1306  }
  1307  
  1308  // GoString returns the string representation.
  1309  //
  1310  // API parameter values that are decorated as "sensitive" in the API will not
  1311  // be included in the string output. The member name will be present, but the
  1312  // value will be replaced with "sensitive".
  1313  func (s CreateProjectOutput) GoString() string {
  1314  	return s.String()
  1315  }
  1316  
  1317  // SetDetails sets the Details field's value.
  1318  func (s *CreateProjectOutput) SetDetails(v *ProjectDetails) *CreateProjectOutput {
  1319  	s.Details = v
  1320  	return s
  1321  }
  1322  
  1323  // Request structure used to request a project be deleted.
  1324  type DeleteProjectInput struct {
  1325  	_ struct{} `type:"structure" nopayload:"true"`
  1326  
  1327  	// Unique project identifier.
  1328  	//
  1329  	// ProjectId is a required field
  1330  	ProjectId *string `location:"uri" locationName:"projectId" type:"string" required:"true"`
  1331  }
  1332  
  1333  // String returns the string representation.
  1334  //
  1335  // API parameter values that are decorated as "sensitive" in the API will not
  1336  // be included in the string output. The member name will be present, but the
  1337  // value will be replaced with "sensitive".
  1338  func (s DeleteProjectInput) String() string {
  1339  	return awsutil.Prettify(s)
  1340  }
  1341  
  1342  // GoString returns the string representation.
  1343  //
  1344  // API parameter values that are decorated as "sensitive" in the API will not
  1345  // be included in the string output. The member name will be present, but the
  1346  // value will be replaced with "sensitive".
  1347  func (s DeleteProjectInput) GoString() string {
  1348  	return s.String()
  1349  }
  1350  
  1351  // Validate inspects the fields of the type to determine if they are valid.
  1352  func (s *DeleteProjectInput) Validate() error {
  1353  	invalidParams := request.ErrInvalidParams{Context: "DeleteProjectInput"}
  1354  	if s.ProjectId == nil {
  1355  		invalidParams.Add(request.NewErrParamRequired("ProjectId"))
  1356  	}
  1357  	if s.ProjectId != nil && len(*s.ProjectId) < 1 {
  1358  		invalidParams.Add(request.NewErrParamMinLen("ProjectId", 1))
  1359  	}
  1360  
  1361  	if invalidParams.Len() > 0 {
  1362  		return invalidParams
  1363  	}
  1364  	return nil
  1365  }
  1366  
  1367  // SetProjectId sets the ProjectId field's value.
  1368  func (s *DeleteProjectInput) SetProjectId(v string) *DeleteProjectInput {
  1369  	s.ProjectId = &v
  1370  	return s
  1371  }
  1372  
  1373  // Result structure used in response to request to delete a project.
  1374  type DeleteProjectOutput struct {
  1375  	_ struct{} `type:"structure"`
  1376  
  1377  	// Resources which were deleted.
  1378  	DeletedResources []*Resource `locationName:"deletedResources" type:"list"`
  1379  
  1380  	// Resources which were not deleted, due to a risk of losing potentially important
  1381  	// data or files.
  1382  	OrphanedResources []*Resource `locationName:"orphanedResources" type:"list"`
  1383  }
  1384  
  1385  // String returns the string representation.
  1386  //
  1387  // API parameter values that are decorated as "sensitive" in the API will not
  1388  // be included in the string output. The member name will be present, but the
  1389  // value will be replaced with "sensitive".
  1390  func (s DeleteProjectOutput) String() string {
  1391  	return awsutil.Prettify(s)
  1392  }
  1393  
  1394  // GoString returns the string representation.
  1395  //
  1396  // API parameter values that are decorated as "sensitive" in the API will not
  1397  // be included in the string output. The member name will be present, but the
  1398  // value will be replaced with "sensitive".
  1399  func (s DeleteProjectOutput) GoString() string {
  1400  	return s.String()
  1401  }
  1402  
  1403  // SetDeletedResources sets the DeletedResources field's value.
  1404  func (s *DeleteProjectOutput) SetDeletedResources(v []*Resource) *DeleteProjectOutput {
  1405  	s.DeletedResources = v
  1406  	return s
  1407  }
  1408  
  1409  // SetOrphanedResources sets the OrphanedResources field's value.
  1410  func (s *DeleteProjectOutput) SetOrphanedResources(v []*Resource) *DeleteProjectOutput {
  1411  	s.OrphanedResources = v
  1412  	return s
  1413  }
  1414  
  1415  // Request structure to request the details of a specific bundle.
  1416  type DescribeBundleInput struct {
  1417  	_ struct{} `type:"structure" nopayload:"true"`
  1418  
  1419  	// Unique bundle identifier.
  1420  	//
  1421  	// BundleId is a required field
  1422  	BundleId *string `location:"uri" locationName:"bundleId" type:"string" required:"true"`
  1423  }
  1424  
  1425  // String returns the string representation.
  1426  //
  1427  // API parameter values that are decorated as "sensitive" in the API will not
  1428  // be included in the string output. The member name will be present, but the
  1429  // value will be replaced with "sensitive".
  1430  func (s DescribeBundleInput) String() string {
  1431  	return awsutil.Prettify(s)
  1432  }
  1433  
  1434  // GoString returns the string representation.
  1435  //
  1436  // API parameter values that are decorated as "sensitive" in the API will not
  1437  // be included in the string output. The member name will be present, but the
  1438  // value will be replaced with "sensitive".
  1439  func (s DescribeBundleInput) GoString() string {
  1440  	return s.String()
  1441  }
  1442  
  1443  // Validate inspects the fields of the type to determine if they are valid.
  1444  func (s *DescribeBundleInput) Validate() error {
  1445  	invalidParams := request.ErrInvalidParams{Context: "DescribeBundleInput"}
  1446  	if s.BundleId == nil {
  1447  		invalidParams.Add(request.NewErrParamRequired("BundleId"))
  1448  	}
  1449  	if s.BundleId != nil && len(*s.BundleId) < 1 {
  1450  		invalidParams.Add(request.NewErrParamMinLen("BundleId", 1))
  1451  	}
  1452  
  1453  	if invalidParams.Len() > 0 {
  1454  		return invalidParams
  1455  	}
  1456  	return nil
  1457  }
  1458  
  1459  // SetBundleId sets the BundleId field's value.
  1460  func (s *DescribeBundleInput) SetBundleId(v string) *DescribeBundleInput {
  1461  	s.BundleId = &v
  1462  	return s
  1463  }
  1464  
  1465  // Result structure contains the details of the bundle.
  1466  type DescribeBundleOutput struct {
  1467  	_ struct{} `type:"structure"`
  1468  
  1469  	// The details of the bundle.
  1470  	Details *BundleDetails `locationName:"details" type:"structure"`
  1471  }
  1472  
  1473  // String returns the string representation.
  1474  //
  1475  // API parameter values that are decorated as "sensitive" in the API will not
  1476  // be included in the string output. The member name will be present, but the
  1477  // value will be replaced with "sensitive".
  1478  func (s DescribeBundleOutput) String() string {
  1479  	return awsutil.Prettify(s)
  1480  }
  1481  
  1482  // GoString returns the string representation.
  1483  //
  1484  // API parameter values that are decorated as "sensitive" in the API will not
  1485  // be included in the string output. The member name will be present, but the
  1486  // value will be replaced with "sensitive".
  1487  func (s DescribeBundleOutput) GoString() string {
  1488  	return s.String()
  1489  }
  1490  
  1491  // SetDetails sets the Details field's value.
  1492  func (s *DescribeBundleOutput) SetDetails(v *BundleDetails) *DescribeBundleOutput {
  1493  	s.Details = v
  1494  	return s
  1495  }
  1496  
  1497  // Request structure used to request details about a project.
  1498  type DescribeProjectInput struct {
  1499  	_ struct{} `type:"structure" nopayload:"true"`
  1500  
  1501  	// Unique project identifier.
  1502  	//
  1503  	// ProjectId is a required field
  1504  	ProjectId *string `location:"querystring" locationName:"projectId" type:"string" required:"true"`
  1505  
  1506  	// If set to true, causes AWS Mobile Hub to synchronize information from other
  1507  	// services, e.g., update state of AWS CloudFormation stacks in the AWS Mobile
  1508  	// Hub project.
  1509  	SyncFromResources *bool `location:"querystring" locationName:"syncFromResources" type:"boolean"`
  1510  }
  1511  
  1512  // String returns the string representation.
  1513  //
  1514  // API parameter values that are decorated as "sensitive" in the API will not
  1515  // be included in the string output. The member name will be present, but the
  1516  // value will be replaced with "sensitive".
  1517  func (s DescribeProjectInput) String() string {
  1518  	return awsutil.Prettify(s)
  1519  }
  1520  
  1521  // GoString returns the string representation.
  1522  //
  1523  // API parameter values that are decorated as "sensitive" in the API will not
  1524  // be included in the string output. The member name will be present, but the
  1525  // value will be replaced with "sensitive".
  1526  func (s DescribeProjectInput) GoString() string {
  1527  	return s.String()
  1528  }
  1529  
  1530  // Validate inspects the fields of the type to determine if they are valid.
  1531  func (s *DescribeProjectInput) Validate() error {
  1532  	invalidParams := request.ErrInvalidParams{Context: "DescribeProjectInput"}
  1533  	if s.ProjectId == nil {
  1534  		invalidParams.Add(request.NewErrParamRequired("ProjectId"))
  1535  	}
  1536  
  1537  	if invalidParams.Len() > 0 {
  1538  		return invalidParams
  1539  	}
  1540  	return nil
  1541  }
  1542  
  1543  // SetProjectId sets the ProjectId field's value.
  1544  func (s *DescribeProjectInput) SetProjectId(v string) *DescribeProjectInput {
  1545  	s.ProjectId = &v
  1546  	return s
  1547  }
  1548  
  1549  // SetSyncFromResources sets the SyncFromResources field's value.
  1550  func (s *DescribeProjectInput) SetSyncFromResources(v bool) *DescribeProjectInput {
  1551  	s.SyncFromResources = &v
  1552  	return s
  1553  }
  1554  
  1555  // Result structure used for requests of project details.
  1556  type DescribeProjectOutput struct {
  1557  	_ struct{} `type:"structure"`
  1558  
  1559  	// Detailed information about an AWS Mobile Hub project.
  1560  	Details *ProjectDetails `locationName:"details" type:"structure"`
  1561  }
  1562  
  1563  // String returns the string representation.
  1564  //
  1565  // API parameter values that are decorated as "sensitive" in the API will not
  1566  // be included in the string output. The member name will be present, but the
  1567  // value will be replaced with "sensitive".
  1568  func (s DescribeProjectOutput) String() string {
  1569  	return awsutil.Prettify(s)
  1570  }
  1571  
  1572  // GoString returns the string representation.
  1573  //
  1574  // API parameter values that are decorated as "sensitive" in the API will not
  1575  // be included in the string output. The member name will be present, but the
  1576  // value will be replaced with "sensitive".
  1577  func (s DescribeProjectOutput) GoString() string {
  1578  	return s.String()
  1579  }
  1580  
  1581  // SetDetails sets the Details field's value.
  1582  func (s *DescribeProjectOutput) SetDetails(v *ProjectDetails) *DescribeProjectOutput {
  1583  	s.Details = v
  1584  	return s
  1585  }
  1586  
  1587  // Request structure used to request generation of custom SDK and tool packages
  1588  // required to integrate mobile web or app clients with backed AWS resources.
  1589  type ExportBundleInput struct {
  1590  	_ struct{} `type:"structure" nopayload:"true"`
  1591  
  1592  	// Unique bundle identifier.
  1593  	//
  1594  	// BundleId is a required field
  1595  	BundleId *string `location:"uri" locationName:"bundleId" type:"string" required:"true"`
  1596  
  1597  	// Developer desktop or target application platform.
  1598  	Platform *string `location:"querystring" locationName:"platform" type:"string" enum:"Platform"`
  1599  
  1600  	// Unique project identifier.
  1601  	ProjectId *string `location:"querystring" locationName:"projectId" type:"string"`
  1602  }
  1603  
  1604  // String returns the string representation.
  1605  //
  1606  // API parameter values that are decorated as "sensitive" in the API will not
  1607  // be included in the string output. The member name will be present, but the
  1608  // value will be replaced with "sensitive".
  1609  func (s ExportBundleInput) String() string {
  1610  	return awsutil.Prettify(s)
  1611  }
  1612  
  1613  // GoString returns the string representation.
  1614  //
  1615  // API parameter values that are decorated as "sensitive" in the API will not
  1616  // be included in the string output. The member name will be present, but the
  1617  // value will be replaced with "sensitive".
  1618  func (s ExportBundleInput) GoString() string {
  1619  	return s.String()
  1620  }
  1621  
  1622  // Validate inspects the fields of the type to determine if they are valid.
  1623  func (s *ExportBundleInput) Validate() error {
  1624  	invalidParams := request.ErrInvalidParams{Context: "ExportBundleInput"}
  1625  	if s.BundleId == nil {
  1626  		invalidParams.Add(request.NewErrParamRequired("BundleId"))
  1627  	}
  1628  	if s.BundleId != nil && len(*s.BundleId) < 1 {
  1629  		invalidParams.Add(request.NewErrParamMinLen("BundleId", 1))
  1630  	}
  1631  
  1632  	if invalidParams.Len() > 0 {
  1633  		return invalidParams
  1634  	}
  1635  	return nil
  1636  }
  1637  
  1638  // SetBundleId sets the BundleId field's value.
  1639  func (s *ExportBundleInput) SetBundleId(v string) *ExportBundleInput {
  1640  	s.BundleId = &v
  1641  	return s
  1642  }
  1643  
  1644  // SetPlatform sets the Platform field's value.
  1645  func (s *ExportBundleInput) SetPlatform(v string) *ExportBundleInput {
  1646  	s.Platform = &v
  1647  	return s
  1648  }
  1649  
  1650  // SetProjectId sets the ProjectId field's value.
  1651  func (s *ExportBundleInput) SetProjectId(v string) *ExportBundleInput {
  1652  	s.ProjectId = &v
  1653  	return s
  1654  }
  1655  
  1656  // Result structure which contains link to download custom-generated SDK and
  1657  // tool packages used to integrate mobile web or app clients with backed AWS
  1658  // resources.
  1659  type ExportBundleOutput struct {
  1660  	_ struct{} `type:"structure"`
  1661  
  1662  	// URL which contains the custom-generated SDK and tool packages used to integrate
  1663  	// the client mobile app or web app with the AWS resources created by the AWS
  1664  	// Mobile Hub project.
  1665  	DownloadUrl *string `locationName:"downloadUrl" type:"string"`
  1666  }
  1667  
  1668  // String returns the string representation.
  1669  //
  1670  // API parameter values that are decorated as "sensitive" in the API will not
  1671  // be included in the string output. The member name will be present, but the
  1672  // value will be replaced with "sensitive".
  1673  func (s ExportBundleOutput) String() string {
  1674  	return awsutil.Prettify(s)
  1675  }
  1676  
  1677  // GoString returns the string representation.
  1678  //
  1679  // API parameter values that are decorated as "sensitive" in the API will not
  1680  // be included in the string output. The member name will be present, but the
  1681  // value will be replaced with "sensitive".
  1682  func (s ExportBundleOutput) GoString() string {
  1683  	return s.String()
  1684  }
  1685  
  1686  // SetDownloadUrl sets the DownloadUrl field's value.
  1687  func (s *ExportBundleOutput) SetDownloadUrl(v string) *ExportBundleOutput {
  1688  	s.DownloadUrl = &v
  1689  	return s
  1690  }
  1691  
  1692  // Request structure used in requests to export project configuration details.
  1693  type ExportProjectInput struct {
  1694  	_ struct{} `type:"structure" nopayload:"true"`
  1695  
  1696  	// Unique project identifier.
  1697  	//
  1698  	// ProjectId is a required field
  1699  	ProjectId *string `location:"uri" locationName:"projectId" type:"string" required:"true"`
  1700  }
  1701  
  1702  // String returns the string representation.
  1703  //
  1704  // API parameter values that are decorated as "sensitive" in the API will not
  1705  // be included in the string output. The member name will be present, but the
  1706  // value will be replaced with "sensitive".
  1707  func (s ExportProjectInput) String() string {
  1708  	return awsutil.Prettify(s)
  1709  }
  1710  
  1711  // GoString returns the string representation.
  1712  //
  1713  // API parameter values that are decorated as "sensitive" in the API will not
  1714  // be included in the string output. The member name will be present, but the
  1715  // value will be replaced with "sensitive".
  1716  func (s ExportProjectInput) GoString() string {
  1717  	return s.String()
  1718  }
  1719  
  1720  // Validate inspects the fields of the type to determine if they are valid.
  1721  func (s *ExportProjectInput) Validate() error {
  1722  	invalidParams := request.ErrInvalidParams{Context: "ExportProjectInput"}
  1723  	if s.ProjectId == nil {
  1724  		invalidParams.Add(request.NewErrParamRequired("ProjectId"))
  1725  	}
  1726  	if s.ProjectId != nil && len(*s.ProjectId) < 1 {
  1727  		invalidParams.Add(request.NewErrParamMinLen("ProjectId", 1))
  1728  	}
  1729  
  1730  	if invalidParams.Len() > 0 {
  1731  		return invalidParams
  1732  	}
  1733  	return nil
  1734  }
  1735  
  1736  // SetProjectId sets the ProjectId field's value.
  1737  func (s *ExportProjectInput) SetProjectId(v string) *ExportProjectInput {
  1738  	s.ProjectId = &v
  1739  	return s
  1740  }
  1741  
  1742  // Result structure used for requests to export project configuration details.
  1743  type ExportProjectOutput struct {
  1744  	_ struct{} `type:"structure"`
  1745  
  1746  	// URL which can be used to download the exported project configuation file(s).
  1747  	DownloadUrl *string `locationName:"downloadUrl" type:"string"`
  1748  
  1749  	// URL which can be shared to allow other AWS users to create their own project
  1750  	// in AWS Mobile Hub with the same configuration as the specified project. This
  1751  	// URL pertains to a snapshot in time of the project configuration that is created
  1752  	// when this API is called. If you want to share additional changes to your
  1753  	// project configuration, then you will need to create and share a new snapshot
  1754  	// by calling this method again.
  1755  	ShareUrl *string `locationName:"shareUrl" type:"string"`
  1756  
  1757  	// Unique identifier for the exported snapshot of the project configuration.
  1758  	// This snapshot identifier is included in the share URL.
  1759  	SnapshotId *string `locationName:"snapshotId" type:"string"`
  1760  }
  1761  
  1762  // String returns the string representation.
  1763  //
  1764  // API parameter values that are decorated as "sensitive" in the API will not
  1765  // be included in the string output. The member name will be present, but the
  1766  // value will be replaced with "sensitive".
  1767  func (s ExportProjectOutput) String() string {
  1768  	return awsutil.Prettify(s)
  1769  }
  1770  
  1771  // GoString returns the string representation.
  1772  //
  1773  // API parameter values that are decorated as "sensitive" in the API will not
  1774  // be included in the string output. The member name will be present, but the
  1775  // value will be replaced with "sensitive".
  1776  func (s ExportProjectOutput) GoString() string {
  1777  	return s.String()
  1778  }
  1779  
  1780  // SetDownloadUrl sets the DownloadUrl field's value.
  1781  func (s *ExportProjectOutput) SetDownloadUrl(v string) *ExportProjectOutput {
  1782  	s.DownloadUrl = &v
  1783  	return s
  1784  }
  1785  
  1786  // SetShareUrl sets the ShareUrl field's value.
  1787  func (s *ExportProjectOutput) SetShareUrl(v string) *ExportProjectOutput {
  1788  	s.ShareUrl = &v
  1789  	return s
  1790  }
  1791  
  1792  // SetSnapshotId sets the SnapshotId field's value.
  1793  func (s *ExportProjectOutput) SetSnapshotId(v string) *ExportProjectOutput {
  1794  	s.SnapshotId = &v
  1795  	return s
  1796  }
  1797  
  1798  // The service has encountered an unexpected error condition which prevents
  1799  // it from servicing the request.
  1800  type InternalFailureException struct {
  1801  	_            struct{}                  `type:"structure"`
  1802  	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
  1803  
  1804  	// The Exception Error Message.
  1805  	Message_ *string `locationName:"message" type:"string"`
  1806  }
  1807  
  1808  // String returns the string representation.
  1809  //
  1810  // API parameter values that are decorated as "sensitive" in the API will not
  1811  // be included in the string output. The member name will be present, but the
  1812  // value will be replaced with "sensitive".
  1813  func (s InternalFailureException) String() string {
  1814  	return awsutil.Prettify(s)
  1815  }
  1816  
  1817  // GoString returns the string representation.
  1818  //
  1819  // API parameter values that are decorated as "sensitive" in the API will not
  1820  // be included in the string output. The member name will be present, but the
  1821  // value will be replaced with "sensitive".
  1822  func (s InternalFailureException) GoString() string {
  1823  	return s.String()
  1824  }
  1825  
  1826  func newErrorInternalFailureException(v protocol.ResponseMetadata) error {
  1827  	return &InternalFailureException{
  1828  		RespMetadata: v,
  1829  	}
  1830  }
  1831  
  1832  // Code returns the exception type name.
  1833  func (s *InternalFailureException) Code() string {
  1834  	return "InternalFailureException"
  1835  }
  1836  
  1837  // Message returns the exception's message.
  1838  func (s *InternalFailureException) Message() string {
  1839  	if s.Message_ != nil {
  1840  		return *s.Message_
  1841  	}
  1842  	return ""
  1843  }
  1844  
  1845  // OrigErr always returns nil, satisfies awserr.Error interface.
  1846  func (s *InternalFailureException) OrigErr() error {
  1847  	return nil
  1848  }
  1849  
  1850  func (s *InternalFailureException) Error() string {
  1851  	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
  1852  }
  1853  
  1854  // Status code returns the HTTP status code for the request's response error.
  1855  func (s *InternalFailureException) StatusCode() int {
  1856  	return s.RespMetadata.StatusCode
  1857  }
  1858  
  1859  // RequestID returns the service's response RequestID for request.
  1860  func (s *InternalFailureException) RequestID() string {
  1861  	return s.RespMetadata.RequestID
  1862  }
  1863  
  1864  // There are too many AWS Mobile Hub projects in the account or the account
  1865  // has exceeded the maximum number of resources in some AWS service. You should
  1866  // create another sub-account using AWS Organizations or remove some resources
  1867  // and retry your request.
  1868  type LimitExceededException struct {
  1869  	_            struct{}                  `type:"structure"`
  1870  	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
  1871  
  1872  	// The Exception Error Message.
  1873  	Message_ *string `locationName:"message" type:"string"`
  1874  
  1875  	// The Exception Error Message.
  1876  	RetryAfterSeconds *string `location:"header" locationName:"Retry-After" type:"string"`
  1877  }
  1878  
  1879  // String returns the string representation.
  1880  //
  1881  // API parameter values that are decorated as "sensitive" in the API will not
  1882  // be included in the string output. The member name will be present, but the
  1883  // value will be replaced with "sensitive".
  1884  func (s LimitExceededException) String() string {
  1885  	return awsutil.Prettify(s)
  1886  }
  1887  
  1888  // GoString returns the string representation.
  1889  //
  1890  // API parameter values that are decorated as "sensitive" in the API will not
  1891  // be included in the string output. The member name will be present, but the
  1892  // value will be replaced with "sensitive".
  1893  func (s LimitExceededException) GoString() string {
  1894  	return s.String()
  1895  }
  1896  
  1897  func newErrorLimitExceededException(v protocol.ResponseMetadata) error {
  1898  	return &LimitExceededException{
  1899  		RespMetadata: v,
  1900  	}
  1901  }
  1902  
  1903  // Code returns the exception type name.
  1904  func (s *LimitExceededException) Code() string {
  1905  	return "LimitExceededException"
  1906  }
  1907  
  1908  // Message returns the exception's message.
  1909  func (s *LimitExceededException) Message() string {
  1910  	if s.Message_ != nil {
  1911  		return *s.Message_
  1912  	}
  1913  	return ""
  1914  }
  1915  
  1916  // OrigErr always returns nil, satisfies awserr.Error interface.
  1917  func (s *LimitExceededException) OrigErr() error {
  1918  	return nil
  1919  }
  1920  
  1921  func (s *LimitExceededException) Error() string {
  1922  	return fmt.Sprintf("%s: %s\n%s", s.Code(), s.Message(), s.String())
  1923  }
  1924  
  1925  // Status code returns the HTTP status code for the request's response error.
  1926  func (s *LimitExceededException) StatusCode() int {
  1927  	return s.RespMetadata.StatusCode
  1928  }
  1929  
  1930  // RequestID returns the service's response RequestID for request.
  1931  func (s *LimitExceededException) RequestID() string {
  1932  	return s.RespMetadata.RequestID
  1933  }
  1934  
  1935  // Request structure to request all available bundles.
  1936  type ListBundlesInput struct {
  1937  	_ struct{} `type:"structure" nopayload:"true"`
  1938  
  1939  	// Maximum number of records to list in a single response.
  1940  	MaxResults *int64 `location:"querystring" locationName:"maxResults" type:"integer"`
  1941  
  1942  	// Pagination token. Set to null to start listing bundles from start. If non-null
  1943  	// pagination token is returned in a result, then pass its value in here in
  1944  	// another request to list more bundles.
  1945  	NextToken *string `location:"querystring" locationName:"nextToken" type:"string"`
  1946  }
  1947  
  1948  // String returns the string representation.
  1949  //
  1950  // API parameter values that are decorated as "sensitive" in the API will not
  1951  // be included in the string output. The member name will be present, but the
  1952  // value will be replaced with "sensitive".
  1953  func (s ListBundlesInput) String() string {
  1954  	return awsutil.Prettify(s)
  1955  }
  1956  
  1957  // GoString returns the string representation.
  1958  //
  1959  // API parameter values that are decorated as "sensitive" in the API will not
  1960  // be included in the string output. The member name will be present, but the
  1961  // value will be replaced with "sensitive".
  1962  func (s ListBundlesInput) GoString() string {
  1963  	return s.String()
  1964  }
  1965  
  1966  // SetMaxResults sets the MaxResults field's value.
  1967  func (s *ListBundlesInput) SetMaxResults(v int64) *ListBundlesInput {
  1968  	s.MaxResults = &v
  1969  	return s
  1970  }
  1971  
  1972  // SetNextToken sets the NextToken field's value.
  1973  func (s *ListBundlesInput) SetNextToken(v string) *ListBundlesInput {
  1974  	s.NextToken = &v
  1975  	return s
  1976  }
  1977  
  1978  // Result structure contains a list of all available bundles with details.
  1979  type ListBundlesOutput struct {
  1980  	_ struct{} `type:"structure"`
  1981  
  1982  	// A list of bundles.
  1983  	BundleList []*BundleDetails `locationName:"bundleList" type:"list"`
  1984  
  1985  	// Pagination token. If non-null pagination token is returned in a result, then
  1986  	// pass its value in another request to fetch more entries.
  1987  	NextToken *string `locationName:"nextToken" type:"string"`
  1988  }
  1989  
  1990  // String returns the string representation.
  1991  //
  1992  // API parameter values that are decorated as "sensitive" in the API will not
  1993  // be included in the string output. The member name will be present, but the
  1994  // value will be replaced with "sensitive".
  1995  func (s ListBundlesOutput) String() string {
  1996  	return awsutil.Prettify(s)
  1997  }
  1998  
  1999  // GoString returns the string representation.
  2000  //
  2001  // API parameter values that are decorated as "sensitive" in the API will not
  2002  // be included in the string output. The member name will be present, but the
  2003  // value will be replaced with "sensitive".
  2004  func (s ListBundlesOutput) GoString() string {
  2005  	return s.String()
  2006  }
  2007  
  2008  // SetBundleList sets the BundleList field's value.
  2009  func (s *ListBundlesOutput) SetBundleList(v []*BundleDetails) *ListBundlesOutput {
  2010  	s.BundleList = v
  2011  	return s
  2012  }
  2013  
  2014  // SetNextToken sets the NextToken field's value.
  2015  func (s *ListBundlesOutput) SetNextToken(v string) *ListBundlesOutput {
  2016  	s.NextToken = &v
  2017  	return s
  2018  }
  2019  
  2020  // Request structure used to request projects list in AWS Mobile Hub.
  2021  type ListProjectsInput struct {
  2022  	_ struct{} `type:"structure" nopayload:"true"`
  2023  
  2024  	// Maximum number of records to list in a single response.
  2025  	MaxResults *int64 `location:"querystring" locationName:"maxResults" type:"integer"`
  2026  
  2027  	// Pagination token. Set to null to start listing projects from start. If non-null
  2028  	// pagination token is returned in a result, then pass its value in here in
  2029  	// another request to list more projects.
  2030  	NextToken *string `location:"querystring" locationName:"nextToken" type:"string"`
  2031  }
  2032  
  2033  // String returns the string representation.
  2034  //
  2035  // API parameter values that are decorated as "sensitive" in the API will not
  2036  // be included in the string output. The member name will be present, but the
  2037  // value will be replaced with "sensitive".
  2038  func (s ListProjectsInput) String() string {
  2039  	return awsutil.Prettify(s)
  2040  }
  2041  
  2042  // GoString returns the string representation.
  2043  //
  2044  // API parameter values that are decorated as "sensitive" in the API will not
  2045  // be included in the string output. The member name will be present, but the
  2046  // value will be replaced with "sensitive".
  2047  func (s ListProjectsInput) GoString() string {
  2048  	return s.String()
  2049  }
  2050  
  2051  // SetMaxResults sets the MaxResults field's value.
  2052  func (s *ListProjectsInput) SetMaxResults(v int64) *ListProjectsInput {
  2053  	s.MaxResults = &v
  2054  	return s
  2055  }
  2056  
  2057  // SetNextToken sets the NextToken field's value.
  2058  func (s *ListProjectsInput) SetNextToken(v string) *ListProjectsInput {
  2059  	s.NextToken = &v
  2060  	return s
  2061  }
  2062  
  2063  // Result structure used for requests to list projects in AWS Mobile Hub.
  2064  type ListProjectsOutput struct {
  2065  	_ struct{} `type:"structure"`
  2066  
  2067  	// Pagination token. Set to null to start listing records from start. If non-null
  2068  	// pagination token is returned in a result, then pass its value in here in
  2069  	// another request to list more entries.
  2070  	NextToken *string `locationName:"nextToken" type:"string"`
  2071  
  2072  	// List of projects.
  2073  	Projects []*ProjectSummary `locationName:"projects" type:"list"`
  2074  }
  2075  
  2076  // String returns the string representation.
  2077  //
  2078  // API parameter values that are decorated as "sensitive" in the API will not
  2079  // be included in the string output. The member name will be present, but the
  2080  // value will be replaced with "sensitive".
  2081  func (s ListProjectsOutput) String() string {
  2082  	return awsutil.Prettify(s)
  2083  }
  2084  
  2085  // GoString returns the string representation.
  2086  //
  2087  // API parameter values that are decorated as "sensitive" in the API will not
  2088  // be included in the string output. The member name will be present, but the
  2089  // value will be replaced with "sensitive".
  2090  func (s ListProjectsOutput) GoString() string {
  2091  	return s.String()
  2092  }
  2093  
  2094  // SetNextToken sets the NextToken field's value.
  2095  func (s *ListProjectsOutput) SetNextToken(v string) *ListProjectsOutput {
  2096  	s.NextToken = &v
  2097  	return s
  2098  }
  2099  
  2100  // SetProjects sets the Projects field's value.
  2101  func (s *ListProjectsOutput) SetProjects(v []*ProjectSummary) *ListProjectsOutput {
  2102  	s.Projects = v
  2103  	return s
  2104  }
  2105  
  2106  // No entity can be found with the specified identifier.
  2107  type NotFoundException struct {
  2108  	_            struct{}                  `type:"structure"`
  2109  	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
  2110  
  2111  	// The Exception Error Message.
  2112  	Message_ *string `locationName:"message" type:"string"`
  2113  }
  2114  
  2115  // String returns the string representation.
  2116  //
  2117  // API parameter values that are decorated as "sensitive" in the API will not
  2118  // be included in the string output. The member name will be present, but the
  2119  // value will be replaced with "sensitive".
  2120  func (s NotFoundException) String() string {
  2121  	return awsutil.Prettify(s)
  2122  }
  2123  
  2124  // GoString returns the string representation.
  2125  //
  2126  // API parameter values that are decorated as "sensitive" in the API will not
  2127  // be included in the string output. The member name will be present, but the
  2128  // value will be replaced with "sensitive".
  2129  func (s NotFoundException) GoString() string {
  2130  	return s.String()
  2131  }
  2132  
  2133  func newErrorNotFoundException(v protocol.ResponseMetadata) error {
  2134  	return &NotFoundException{
  2135  		RespMetadata: v,
  2136  	}
  2137  }
  2138  
  2139  // Code returns the exception type name.
  2140  func (s *NotFoundException) Code() string {
  2141  	return "NotFoundException"
  2142  }
  2143  
  2144  // Message returns the exception's message.
  2145  func (s *NotFoundException) Message() string {
  2146  	if s.Message_ != nil {
  2147  		return *s.Message_
  2148  	}
  2149  	return ""
  2150  }
  2151  
  2152  // OrigErr always returns nil, satisfies awserr.Error interface.
  2153  func (s *NotFoundException) OrigErr() error {
  2154  	return nil
  2155  }
  2156  
  2157  func (s *NotFoundException) Error() string {
  2158  	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
  2159  }
  2160  
  2161  // Status code returns the HTTP status code for the request's response error.
  2162  func (s *NotFoundException) StatusCode() int {
  2163  	return s.RespMetadata.StatusCode
  2164  }
  2165  
  2166  // RequestID returns the service's response RequestID for request.
  2167  func (s *NotFoundException) RequestID() string {
  2168  	return s.RespMetadata.RequestID
  2169  }
  2170  
  2171  // Detailed information about an AWS Mobile Hub project.
  2172  type ProjectDetails struct {
  2173  	_ struct{} `type:"structure"`
  2174  
  2175  	// Website URL for this project in the AWS Mobile Hub console.
  2176  	ConsoleUrl *string `locationName:"consoleUrl" type:"string"`
  2177  
  2178  	// Date the project was created.
  2179  	CreatedDate *time.Time `locationName:"createdDate" type:"timestamp"`
  2180  
  2181  	// Date of the last modification of the project.
  2182  	LastUpdatedDate *time.Time `locationName:"lastUpdatedDate" type:"timestamp"`
  2183  
  2184  	// Name of the project.
  2185  	Name *string `locationName:"name" type:"string"`
  2186  
  2187  	// Unique project identifier.
  2188  	ProjectId *string `locationName:"projectId" type:"string"`
  2189  
  2190  	// Default region to use for AWS resource creation in the AWS Mobile Hub project.
  2191  	Region *string `locationName:"region" type:"string"`
  2192  
  2193  	// List of AWS resources associated with a project.
  2194  	Resources []*Resource `locationName:"resources" type:"list"`
  2195  
  2196  	// Synchronization state for a project.
  2197  	State *string `locationName:"state" type:"string" enum:"ProjectState"`
  2198  }
  2199  
  2200  // String returns the string representation.
  2201  //
  2202  // API parameter values that are decorated as "sensitive" in the API will not
  2203  // be included in the string output. The member name will be present, but the
  2204  // value will be replaced with "sensitive".
  2205  func (s ProjectDetails) String() string {
  2206  	return awsutil.Prettify(s)
  2207  }
  2208  
  2209  // GoString returns the string representation.
  2210  //
  2211  // API parameter values that are decorated as "sensitive" in the API will not
  2212  // be included in the string output. The member name will be present, but the
  2213  // value will be replaced with "sensitive".
  2214  func (s ProjectDetails) GoString() string {
  2215  	return s.String()
  2216  }
  2217  
  2218  // SetConsoleUrl sets the ConsoleUrl field's value.
  2219  func (s *ProjectDetails) SetConsoleUrl(v string) *ProjectDetails {
  2220  	s.ConsoleUrl = &v
  2221  	return s
  2222  }
  2223  
  2224  // SetCreatedDate sets the CreatedDate field's value.
  2225  func (s *ProjectDetails) SetCreatedDate(v time.Time) *ProjectDetails {
  2226  	s.CreatedDate = &v
  2227  	return s
  2228  }
  2229  
  2230  // SetLastUpdatedDate sets the LastUpdatedDate field's value.
  2231  func (s *ProjectDetails) SetLastUpdatedDate(v time.Time) *ProjectDetails {
  2232  	s.LastUpdatedDate = &v
  2233  	return s
  2234  }
  2235  
  2236  // SetName sets the Name field's value.
  2237  func (s *ProjectDetails) SetName(v string) *ProjectDetails {
  2238  	s.Name = &v
  2239  	return s
  2240  }
  2241  
  2242  // SetProjectId sets the ProjectId field's value.
  2243  func (s *ProjectDetails) SetProjectId(v string) *ProjectDetails {
  2244  	s.ProjectId = &v
  2245  	return s
  2246  }
  2247  
  2248  // SetRegion sets the Region field's value.
  2249  func (s *ProjectDetails) SetRegion(v string) *ProjectDetails {
  2250  	s.Region = &v
  2251  	return s
  2252  }
  2253  
  2254  // SetResources sets the Resources field's value.
  2255  func (s *ProjectDetails) SetResources(v []*Resource) *ProjectDetails {
  2256  	s.Resources = v
  2257  	return s
  2258  }
  2259  
  2260  // SetState sets the State field's value.
  2261  func (s *ProjectDetails) SetState(v string) *ProjectDetails {
  2262  	s.State = &v
  2263  	return s
  2264  }
  2265  
  2266  // Summary information about an AWS Mobile Hub project.
  2267  type ProjectSummary struct {
  2268  	_ struct{} `type:"structure"`
  2269  
  2270  	// Name of the project.
  2271  	Name *string `locationName:"name" type:"string"`
  2272  
  2273  	// Unique project identifier.
  2274  	ProjectId *string `locationName:"projectId" type:"string"`
  2275  }
  2276  
  2277  // String returns the string representation.
  2278  //
  2279  // API parameter values that are decorated as "sensitive" in the API will not
  2280  // be included in the string output. The member name will be present, but the
  2281  // value will be replaced with "sensitive".
  2282  func (s ProjectSummary) String() string {
  2283  	return awsutil.Prettify(s)
  2284  }
  2285  
  2286  // GoString returns the string representation.
  2287  //
  2288  // API parameter values that are decorated as "sensitive" in the API will not
  2289  // be included in the string output. The member name will be present, but the
  2290  // value will be replaced with "sensitive".
  2291  func (s ProjectSummary) GoString() string {
  2292  	return s.String()
  2293  }
  2294  
  2295  // SetName sets the Name field's value.
  2296  func (s *ProjectSummary) SetName(v string) *ProjectSummary {
  2297  	s.Name = &v
  2298  	return s
  2299  }
  2300  
  2301  // SetProjectId sets the ProjectId field's value.
  2302  func (s *ProjectSummary) SetProjectId(v string) *ProjectSummary {
  2303  	s.ProjectId = &v
  2304  	return s
  2305  }
  2306  
  2307  // Information about an instance of an AWS resource associated with a project.
  2308  type Resource struct {
  2309  	_ struct{} `type:"structure"`
  2310  
  2311  	// AWS resource name which uniquely identifies the resource in AWS systems.
  2312  	Arn *string `locationName:"arn" type:"string"`
  2313  
  2314  	// Key-value attribute pairs.
  2315  	Attributes map[string]*string `locationName:"attributes" type:"map"`
  2316  
  2317  	// Identifies which feature in AWS Mobile Hub is associated with this AWS resource.
  2318  	Feature *string `locationName:"feature" type:"string"`
  2319  
  2320  	// Name of the AWS resource (e.g., for an Amazon S3 bucket this is the name
  2321  	// of the bucket).
  2322  	Name *string `locationName:"name" type:"string"`
  2323  
  2324  	// Simplified name for type of AWS resource (e.g., bucket is an Amazon S3 bucket).
  2325  	Type *string `locationName:"type" type:"string"`
  2326  }
  2327  
  2328  // String returns the string representation.
  2329  //
  2330  // API parameter values that are decorated as "sensitive" in the API will not
  2331  // be included in the string output. The member name will be present, but the
  2332  // value will be replaced with "sensitive".
  2333  func (s Resource) String() string {
  2334  	return awsutil.Prettify(s)
  2335  }
  2336  
  2337  // GoString returns the string representation.
  2338  //
  2339  // API parameter values that are decorated as "sensitive" in the API will not
  2340  // be included in the string output. The member name will be present, but the
  2341  // value will be replaced with "sensitive".
  2342  func (s Resource) GoString() string {
  2343  	return s.String()
  2344  }
  2345  
  2346  // SetArn sets the Arn field's value.
  2347  func (s *Resource) SetArn(v string) *Resource {
  2348  	s.Arn = &v
  2349  	return s
  2350  }
  2351  
  2352  // SetAttributes sets the Attributes field's value.
  2353  func (s *Resource) SetAttributes(v map[string]*string) *Resource {
  2354  	s.Attributes = v
  2355  	return s
  2356  }
  2357  
  2358  // SetFeature sets the Feature field's value.
  2359  func (s *Resource) SetFeature(v string) *Resource {
  2360  	s.Feature = &v
  2361  	return s
  2362  }
  2363  
  2364  // SetName sets the Name field's value.
  2365  func (s *Resource) SetName(v string) *Resource {
  2366  	s.Name = &v
  2367  	return s
  2368  }
  2369  
  2370  // SetType sets the Type field's value.
  2371  func (s *Resource) SetType(v string) *Resource {
  2372  	s.Type = &v
  2373  	return s
  2374  }
  2375  
  2376  // The service is temporarily unavailable. The request should be retried after
  2377  // some time delay.
  2378  type ServiceUnavailableException struct {
  2379  	_            struct{}                  `type:"structure"`
  2380  	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
  2381  
  2382  	// The Exception Error Message.
  2383  	Message_ *string `locationName:"message" type:"string"`
  2384  
  2385  	// The Exception Error Message.
  2386  	RetryAfterSeconds *string `location:"header" locationName:"Retry-After" type:"string"`
  2387  }
  2388  
  2389  // String returns the string representation.
  2390  //
  2391  // API parameter values that are decorated as "sensitive" in the API will not
  2392  // be included in the string output. The member name will be present, but the
  2393  // value will be replaced with "sensitive".
  2394  func (s ServiceUnavailableException) String() string {
  2395  	return awsutil.Prettify(s)
  2396  }
  2397  
  2398  // GoString returns the string representation.
  2399  //
  2400  // API parameter values that are decorated as "sensitive" in the API will not
  2401  // be included in the string output. The member name will be present, but the
  2402  // value will be replaced with "sensitive".
  2403  func (s ServiceUnavailableException) GoString() string {
  2404  	return s.String()
  2405  }
  2406  
  2407  func newErrorServiceUnavailableException(v protocol.ResponseMetadata) error {
  2408  	return &ServiceUnavailableException{
  2409  		RespMetadata: v,
  2410  	}
  2411  }
  2412  
  2413  // Code returns the exception type name.
  2414  func (s *ServiceUnavailableException) Code() string {
  2415  	return "ServiceUnavailableException"
  2416  }
  2417  
  2418  // Message returns the exception's message.
  2419  func (s *ServiceUnavailableException) Message() string {
  2420  	if s.Message_ != nil {
  2421  		return *s.Message_
  2422  	}
  2423  	return ""
  2424  }
  2425  
  2426  // OrigErr always returns nil, satisfies awserr.Error interface.
  2427  func (s *ServiceUnavailableException) OrigErr() error {
  2428  	return nil
  2429  }
  2430  
  2431  func (s *ServiceUnavailableException) Error() string {
  2432  	return fmt.Sprintf("%s: %s\n%s", s.Code(), s.Message(), s.String())
  2433  }
  2434  
  2435  // Status code returns the HTTP status code for the request's response error.
  2436  func (s *ServiceUnavailableException) StatusCode() int {
  2437  	return s.RespMetadata.StatusCode
  2438  }
  2439  
  2440  // RequestID returns the service's response RequestID for request.
  2441  func (s *ServiceUnavailableException) RequestID() string {
  2442  	return s.RespMetadata.RequestID
  2443  }
  2444  
  2445  // Too many requests have been received for this AWS account in too short a
  2446  // time. The request should be retried after some time delay.
  2447  type TooManyRequestsException struct {
  2448  	_            struct{}                  `type:"structure"`
  2449  	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
  2450  
  2451  	// The Exception Error Message.
  2452  	Message_ *string `locationName:"message" type:"string"`
  2453  
  2454  	// The Exception Error Message.
  2455  	RetryAfterSeconds *string `location:"header" locationName:"Retry-After" type:"string"`
  2456  }
  2457  
  2458  // String returns the string representation.
  2459  //
  2460  // API parameter values that are decorated as "sensitive" in the API will not
  2461  // be included in the string output. The member name will be present, but the
  2462  // value will be replaced with "sensitive".
  2463  func (s TooManyRequestsException) String() string {
  2464  	return awsutil.Prettify(s)
  2465  }
  2466  
  2467  // GoString returns the string representation.
  2468  //
  2469  // API parameter values that are decorated as "sensitive" in the API will not
  2470  // be included in the string output. The member name will be present, but the
  2471  // value will be replaced with "sensitive".
  2472  func (s TooManyRequestsException) GoString() string {
  2473  	return s.String()
  2474  }
  2475  
  2476  func newErrorTooManyRequestsException(v protocol.ResponseMetadata) error {
  2477  	return &TooManyRequestsException{
  2478  		RespMetadata: v,
  2479  	}
  2480  }
  2481  
  2482  // Code returns the exception type name.
  2483  func (s *TooManyRequestsException) Code() string {
  2484  	return "TooManyRequestsException"
  2485  }
  2486  
  2487  // Message returns the exception's message.
  2488  func (s *TooManyRequestsException) Message() string {
  2489  	if s.Message_ != nil {
  2490  		return *s.Message_
  2491  	}
  2492  	return ""
  2493  }
  2494  
  2495  // OrigErr always returns nil, satisfies awserr.Error interface.
  2496  func (s *TooManyRequestsException) OrigErr() error {
  2497  	return nil
  2498  }
  2499  
  2500  func (s *TooManyRequestsException) Error() string {
  2501  	return fmt.Sprintf("%s: %s\n%s", s.Code(), s.Message(), s.String())
  2502  }
  2503  
  2504  // Status code returns the HTTP status code for the request's response error.
  2505  func (s *TooManyRequestsException) StatusCode() int {
  2506  	return s.RespMetadata.StatusCode
  2507  }
  2508  
  2509  // RequestID returns the service's response RequestID for request.
  2510  func (s *TooManyRequestsException) RequestID() string {
  2511  	return s.RespMetadata.RequestID
  2512  }
  2513  
  2514  // Credentials of the caller are insufficient to authorize the request.
  2515  type UnauthorizedException struct {
  2516  	_            struct{}                  `type:"structure"`
  2517  	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
  2518  
  2519  	// The Exception Error Message.
  2520  	Message_ *string `locationName:"message" type:"string"`
  2521  }
  2522  
  2523  // String returns the string representation.
  2524  //
  2525  // API parameter values that are decorated as "sensitive" in the API will not
  2526  // be included in the string output. The member name will be present, but the
  2527  // value will be replaced with "sensitive".
  2528  func (s UnauthorizedException) String() string {
  2529  	return awsutil.Prettify(s)
  2530  }
  2531  
  2532  // GoString returns the string representation.
  2533  //
  2534  // API parameter values that are decorated as "sensitive" in the API will not
  2535  // be included in the string output. The member name will be present, but the
  2536  // value will be replaced with "sensitive".
  2537  func (s UnauthorizedException) GoString() string {
  2538  	return s.String()
  2539  }
  2540  
  2541  func newErrorUnauthorizedException(v protocol.ResponseMetadata) error {
  2542  	return &UnauthorizedException{
  2543  		RespMetadata: v,
  2544  	}
  2545  }
  2546  
  2547  // Code returns the exception type name.
  2548  func (s *UnauthorizedException) Code() string {
  2549  	return "UnauthorizedException"
  2550  }
  2551  
  2552  // Message returns the exception's message.
  2553  func (s *UnauthorizedException) Message() string {
  2554  	if s.Message_ != nil {
  2555  		return *s.Message_
  2556  	}
  2557  	return ""
  2558  }
  2559  
  2560  // OrigErr always returns nil, satisfies awserr.Error interface.
  2561  func (s *UnauthorizedException) OrigErr() error {
  2562  	return nil
  2563  }
  2564  
  2565  func (s *UnauthorizedException) Error() string {
  2566  	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
  2567  }
  2568  
  2569  // Status code returns the HTTP status code for the request's response error.
  2570  func (s *UnauthorizedException) StatusCode() int {
  2571  	return s.RespMetadata.StatusCode
  2572  }
  2573  
  2574  // RequestID returns the service's response RequestID for request.
  2575  func (s *UnauthorizedException) RequestID() string {
  2576  	return s.RespMetadata.RequestID
  2577  }
  2578  
  2579  // Request structure used for requests to update project configuration.
  2580  type UpdateProjectInput struct {
  2581  	_ struct{} `type:"structure" payload:"Contents"`
  2582  
  2583  	// ZIP or YAML file which contains project configuration to be updated. This
  2584  	// should be the contents of the file downloaded from the URL provided in an
  2585  	// export project operation.
  2586  	Contents []byte `locationName:"contents" type:"blob"`
  2587  
  2588  	// Unique project identifier.
  2589  	//
  2590  	// ProjectId is a required field
  2591  	ProjectId *string `location:"querystring" locationName:"projectId" type:"string" required:"true"`
  2592  }
  2593  
  2594  // String returns the string representation.
  2595  //
  2596  // API parameter values that are decorated as "sensitive" in the API will not
  2597  // be included in the string output. The member name will be present, but the
  2598  // value will be replaced with "sensitive".
  2599  func (s UpdateProjectInput) String() string {
  2600  	return awsutil.Prettify(s)
  2601  }
  2602  
  2603  // GoString returns the string representation.
  2604  //
  2605  // API parameter values that are decorated as "sensitive" in the API will not
  2606  // be included in the string output. The member name will be present, but the
  2607  // value will be replaced with "sensitive".
  2608  func (s UpdateProjectInput) GoString() string {
  2609  	return s.String()
  2610  }
  2611  
  2612  // Validate inspects the fields of the type to determine if they are valid.
  2613  func (s *UpdateProjectInput) Validate() error {
  2614  	invalidParams := request.ErrInvalidParams{Context: "UpdateProjectInput"}
  2615  	if s.ProjectId == nil {
  2616  		invalidParams.Add(request.NewErrParamRequired("ProjectId"))
  2617  	}
  2618  
  2619  	if invalidParams.Len() > 0 {
  2620  		return invalidParams
  2621  	}
  2622  	return nil
  2623  }
  2624  
  2625  // SetContents sets the Contents field's value.
  2626  func (s *UpdateProjectInput) SetContents(v []byte) *UpdateProjectInput {
  2627  	s.Contents = v
  2628  	return s
  2629  }
  2630  
  2631  // SetProjectId sets the ProjectId field's value.
  2632  func (s *UpdateProjectInput) SetProjectId(v string) *UpdateProjectInput {
  2633  	s.ProjectId = &v
  2634  	return s
  2635  }
  2636  
  2637  // Result structure used for requests to updated project configuration.
  2638  type UpdateProjectOutput struct {
  2639  	_ struct{} `type:"structure"`
  2640  
  2641  	// Detailed information about the updated AWS Mobile Hub project.
  2642  	Details *ProjectDetails `locationName:"details" type:"structure"`
  2643  }
  2644  
  2645  // String returns the string representation.
  2646  //
  2647  // API parameter values that are decorated as "sensitive" in the API will not
  2648  // be included in the string output. The member name will be present, but the
  2649  // value will be replaced with "sensitive".
  2650  func (s UpdateProjectOutput) String() string {
  2651  	return awsutil.Prettify(s)
  2652  }
  2653  
  2654  // GoString returns the string representation.
  2655  //
  2656  // API parameter values that are decorated as "sensitive" in the API will not
  2657  // be included in the string output. The member name will be present, but the
  2658  // value will be replaced with "sensitive".
  2659  func (s UpdateProjectOutput) GoString() string {
  2660  	return s.String()
  2661  }
  2662  
  2663  // SetDetails sets the Details field's value.
  2664  func (s *UpdateProjectOutput) SetDetails(v *ProjectDetails) *UpdateProjectOutput {
  2665  	s.Details = v
  2666  	return s
  2667  }
  2668  
  2669  // Developer desktop or target mobile app or website platform.
  2670  const (
  2671  	// PlatformOsx is a Platform enum value
  2672  	PlatformOsx = "OSX"
  2673  
  2674  	// PlatformWindows is a Platform enum value
  2675  	PlatformWindows = "WINDOWS"
  2676  
  2677  	// PlatformLinux is a Platform enum value
  2678  	PlatformLinux = "LINUX"
  2679  
  2680  	// PlatformObjc is a Platform enum value
  2681  	PlatformObjc = "OBJC"
  2682  
  2683  	// PlatformSwift is a Platform enum value
  2684  	PlatformSwift = "SWIFT"
  2685  
  2686  	// PlatformAndroid is a Platform enum value
  2687  	PlatformAndroid = "ANDROID"
  2688  
  2689  	// PlatformJavascript is a Platform enum value
  2690  	PlatformJavascript = "JAVASCRIPT"
  2691  )
  2692  
  2693  // Platform_Values returns all elements of the Platform enum
  2694  func Platform_Values() []string {
  2695  	return []string{
  2696  		PlatformOsx,
  2697  		PlatformWindows,
  2698  		PlatformLinux,
  2699  		PlatformObjc,
  2700  		PlatformSwift,
  2701  		PlatformAndroid,
  2702  		PlatformJavascript,
  2703  	}
  2704  }
  2705  
  2706  // Synchronization state for a project.
  2707  const (
  2708  	// ProjectStateNormal is a ProjectState enum value
  2709  	ProjectStateNormal = "NORMAL"
  2710  
  2711  	// ProjectStateSyncing is a ProjectState enum value
  2712  	ProjectStateSyncing = "SYNCING"
  2713  
  2714  	// ProjectStateImporting is a ProjectState enum value
  2715  	ProjectStateImporting = "IMPORTING"
  2716  )
  2717  
  2718  // ProjectState_Values returns all elements of the ProjectState enum
  2719  func ProjectState_Values() []string {
  2720  	return []string{
  2721  		ProjectStateNormal,
  2722  		ProjectStateSyncing,
  2723  		ProjectStateImporting,
  2724  	}
  2725  }