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

     1  // Code generated by private/model/cli/gen-api/main.go. DO NOT EDIT.
     2  
     3  package groundstation
     4  
     5  import (
     6  	"fmt"
     7  	"time"
     8  
     9  	"github.com/aavshr/aws-sdk-go/aws"
    10  	"github.com/aavshr/aws-sdk-go/aws/awsutil"
    11  	"github.com/aavshr/aws-sdk-go/aws/request"
    12  	"github.com/aavshr/aws-sdk-go/private/protocol"
    13  	"github.com/aavshr/aws-sdk-go/private/protocol/restjson"
    14  )
    15  
    16  const opCancelContact = "CancelContact"
    17  
    18  // CancelContactRequest generates a "aws/request.Request" representing the
    19  // client's request for the CancelContact operation. The "output" return
    20  // value will be populated with the request's response once the request completes
    21  // successfully.
    22  //
    23  // Use "Send" method on the returned Request to send the API call to the service.
    24  // the "output" return value is not valid until after Send returns without error.
    25  //
    26  // See CancelContact for more information on using the CancelContact
    27  // API call, and error handling.
    28  //
    29  // This method is useful when you want to inject custom logic or configuration
    30  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
    31  //
    32  //
    33  //    // Example sending a request using the CancelContactRequest method.
    34  //    req, resp := client.CancelContactRequest(params)
    35  //
    36  //    err := req.Send()
    37  //    if err == nil { // resp is now filled
    38  //        fmt.Println(resp)
    39  //    }
    40  //
    41  // See also, https://docs.aws.amazon.com/goto/WebAPI/groundstation-2019-05-23/CancelContact
    42  func (c *GroundStation) CancelContactRequest(input *CancelContactInput) (req *request.Request, output *CancelContactOutput) {
    43  	op := &request.Operation{
    44  		Name:       opCancelContact,
    45  		HTTPMethod: "DELETE",
    46  		HTTPPath:   "/contact/{contactId}",
    47  	}
    48  
    49  	if input == nil {
    50  		input = &CancelContactInput{}
    51  	}
    52  
    53  	output = &CancelContactOutput{}
    54  	req = c.newRequest(op, input, output)
    55  	return
    56  }
    57  
    58  // CancelContact API operation for AWS Ground Station.
    59  //
    60  // Cancels a contact with a specified contact ID.
    61  //
    62  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
    63  // with awserr.Error's Code and Message methods to get detailed information about
    64  // the error.
    65  //
    66  // See the AWS API reference guide for AWS Ground Station's
    67  // API operation CancelContact for usage and error information.
    68  //
    69  // Returned Error Types:
    70  //   * InvalidParameterException
    71  //   One or more parameters are not valid.
    72  //
    73  //   * DependencyException
    74  //   Dependency encountered an error.
    75  //
    76  //   * ResourceNotFoundException
    77  //   Resource was not found.
    78  //
    79  // See also, https://docs.aws.amazon.com/goto/WebAPI/groundstation-2019-05-23/CancelContact
    80  func (c *GroundStation) CancelContact(input *CancelContactInput) (*CancelContactOutput, error) {
    81  	req, out := c.CancelContactRequest(input)
    82  	return out, req.Send()
    83  }
    84  
    85  // CancelContactWithContext is the same as CancelContact with the addition of
    86  // the ability to pass a context and additional request options.
    87  //
    88  // See CancelContact for details on how to use this API operation.
    89  //
    90  // The context must be non-nil and will be used for request cancellation. If
    91  // the context is nil a panic will occur. In the future the SDK may create
    92  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
    93  // for more information on using Contexts.
    94  func (c *GroundStation) CancelContactWithContext(ctx aws.Context, input *CancelContactInput, opts ...request.Option) (*CancelContactOutput, error) {
    95  	req, out := c.CancelContactRequest(input)
    96  	req.SetContext(ctx)
    97  	req.ApplyOptions(opts...)
    98  	return out, req.Send()
    99  }
   100  
   101  const opCreateConfig = "CreateConfig"
   102  
   103  // CreateConfigRequest generates a "aws/request.Request" representing the
   104  // client's request for the CreateConfig operation. The "output" return
   105  // value will be populated with the request's response once the request completes
   106  // successfully.
   107  //
   108  // Use "Send" method on the returned Request to send the API call to the service.
   109  // the "output" return value is not valid until after Send returns without error.
   110  //
   111  // See CreateConfig for more information on using the CreateConfig
   112  // API call, and error handling.
   113  //
   114  // This method is useful when you want to inject custom logic or configuration
   115  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
   116  //
   117  //
   118  //    // Example sending a request using the CreateConfigRequest method.
   119  //    req, resp := client.CreateConfigRequest(params)
   120  //
   121  //    err := req.Send()
   122  //    if err == nil { // resp is now filled
   123  //        fmt.Println(resp)
   124  //    }
   125  //
   126  // See also, https://docs.aws.amazon.com/goto/WebAPI/groundstation-2019-05-23/CreateConfig
   127  func (c *GroundStation) CreateConfigRequest(input *CreateConfigInput) (req *request.Request, output *CreateConfigOutput) {
   128  	op := &request.Operation{
   129  		Name:       opCreateConfig,
   130  		HTTPMethod: "POST",
   131  		HTTPPath:   "/config",
   132  	}
   133  
   134  	if input == nil {
   135  		input = &CreateConfigInput{}
   136  	}
   137  
   138  	output = &CreateConfigOutput{}
   139  	req = c.newRequest(op, input, output)
   140  	return
   141  }
   142  
   143  // CreateConfig API operation for AWS Ground Station.
   144  //
   145  // Creates a Config with the specified configData parameters.
   146  //
   147  // Only one type of configData can be specified.
   148  //
   149  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
   150  // with awserr.Error's Code and Message methods to get detailed information about
   151  // the error.
   152  //
   153  // See the AWS API reference guide for AWS Ground Station's
   154  // API operation CreateConfig for usage and error information.
   155  //
   156  // Returned Error Types:
   157  //   * InvalidParameterException
   158  //   One or more parameters are not valid.
   159  //
   160  //   * DependencyException
   161  //   Dependency encountered an error.
   162  //
   163  //   * ResourceLimitExceededException
   164  //   Account limits for this resource have been exceeded.
   165  //
   166  //   * ResourceNotFoundException
   167  //   Resource was not found.
   168  //
   169  // See also, https://docs.aws.amazon.com/goto/WebAPI/groundstation-2019-05-23/CreateConfig
   170  func (c *GroundStation) CreateConfig(input *CreateConfigInput) (*CreateConfigOutput, error) {
   171  	req, out := c.CreateConfigRequest(input)
   172  	return out, req.Send()
   173  }
   174  
   175  // CreateConfigWithContext is the same as CreateConfig with the addition of
   176  // the ability to pass a context and additional request options.
   177  //
   178  // See CreateConfig for details on how to use this API operation.
   179  //
   180  // The context must be non-nil and will be used for request cancellation. If
   181  // the context is nil a panic will occur. In the future the SDK may create
   182  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
   183  // for more information on using Contexts.
   184  func (c *GroundStation) CreateConfigWithContext(ctx aws.Context, input *CreateConfigInput, opts ...request.Option) (*CreateConfigOutput, error) {
   185  	req, out := c.CreateConfigRequest(input)
   186  	req.SetContext(ctx)
   187  	req.ApplyOptions(opts...)
   188  	return out, req.Send()
   189  }
   190  
   191  const opCreateDataflowEndpointGroup = "CreateDataflowEndpointGroup"
   192  
   193  // CreateDataflowEndpointGroupRequest generates a "aws/request.Request" representing the
   194  // client's request for the CreateDataflowEndpointGroup operation. The "output" return
   195  // value will be populated with the request's response once the request completes
   196  // successfully.
   197  //
   198  // Use "Send" method on the returned Request to send the API call to the service.
   199  // the "output" return value is not valid until after Send returns without error.
   200  //
   201  // See CreateDataflowEndpointGroup for more information on using the CreateDataflowEndpointGroup
   202  // API call, and error handling.
   203  //
   204  // This method is useful when you want to inject custom logic or configuration
   205  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
   206  //
   207  //
   208  //    // Example sending a request using the CreateDataflowEndpointGroupRequest method.
   209  //    req, resp := client.CreateDataflowEndpointGroupRequest(params)
   210  //
   211  //    err := req.Send()
   212  //    if err == nil { // resp is now filled
   213  //        fmt.Println(resp)
   214  //    }
   215  //
   216  // See also, https://docs.aws.amazon.com/goto/WebAPI/groundstation-2019-05-23/CreateDataflowEndpointGroup
   217  func (c *GroundStation) CreateDataflowEndpointGroupRequest(input *CreateDataflowEndpointGroupInput) (req *request.Request, output *CreateDataflowEndpointGroupOutput) {
   218  	op := &request.Operation{
   219  		Name:       opCreateDataflowEndpointGroup,
   220  		HTTPMethod: "POST",
   221  		HTTPPath:   "/dataflowEndpointGroup",
   222  	}
   223  
   224  	if input == nil {
   225  		input = &CreateDataflowEndpointGroupInput{}
   226  	}
   227  
   228  	output = &CreateDataflowEndpointGroupOutput{}
   229  	req = c.newRequest(op, input, output)
   230  	return
   231  }
   232  
   233  // CreateDataflowEndpointGroup API operation for AWS Ground Station.
   234  //
   235  // Creates a DataflowEndpoint group containing the specified list of DataflowEndpoint
   236  // objects.
   237  //
   238  // The name field in each endpoint is used in your mission profile DataflowEndpointConfig
   239  // to specify which endpoints to use during a contact.
   240  //
   241  // When a contact uses multiple DataflowEndpointConfig objects, each Config
   242  // must match a DataflowEndpoint in the same group.
   243  //
   244  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
   245  // with awserr.Error's Code and Message methods to get detailed information about
   246  // the error.
   247  //
   248  // See the AWS API reference guide for AWS Ground Station's
   249  // API operation CreateDataflowEndpointGroup for usage and error information.
   250  //
   251  // Returned Error Types:
   252  //   * InvalidParameterException
   253  //   One or more parameters are not valid.
   254  //
   255  //   * DependencyException
   256  //   Dependency encountered an error.
   257  //
   258  //   * ResourceNotFoundException
   259  //   Resource was not found.
   260  //
   261  // See also, https://docs.aws.amazon.com/goto/WebAPI/groundstation-2019-05-23/CreateDataflowEndpointGroup
   262  func (c *GroundStation) CreateDataflowEndpointGroup(input *CreateDataflowEndpointGroupInput) (*CreateDataflowEndpointGroupOutput, error) {
   263  	req, out := c.CreateDataflowEndpointGroupRequest(input)
   264  	return out, req.Send()
   265  }
   266  
   267  // CreateDataflowEndpointGroupWithContext is the same as CreateDataflowEndpointGroup with the addition of
   268  // the ability to pass a context and additional request options.
   269  //
   270  // See CreateDataflowEndpointGroup for details on how to use this API operation.
   271  //
   272  // The context must be non-nil and will be used for request cancellation. If
   273  // the context is nil a panic will occur. In the future the SDK may create
   274  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
   275  // for more information on using Contexts.
   276  func (c *GroundStation) CreateDataflowEndpointGroupWithContext(ctx aws.Context, input *CreateDataflowEndpointGroupInput, opts ...request.Option) (*CreateDataflowEndpointGroupOutput, error) {
   277  	req, out := c.CreateDataflowEndpointGroupRequest(input)
   278  	req.SetContext(ctx)
   279  	req.ApplyOptions(opts...)
   280  	return out, req.Send()
   281  }
   282  
   283  const opCreateMissionProfile = "CreateMissionProfile"
   284  
   285  // CreateMissionProfileRequest generates a "aws/request.Request" representing the
   286  // client's request for the CreateMissionProfile operation. The "output" return
   287  // value will be populated with the request's response once the request completes
   288  // successfully.
   289  //
   290  // Use "Send" method on the returned Request to send the API call to the service.
   291  // the "output" return value is not valid until after Send returns without error.
   292  //
   293  // See CreateMissionProfile for more information on using the CreateMissionProfile
   294  // API call, and error handling.
   295  //
   296  // This method is useful when you want to inject custom logic or configuration
   297  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
   298  //
   299  //
   300  //    // Example sending a request using the CreateMissionProfileRequest method.
   301  //    req, resp := client.CreateMissionProfileRequest(params)
   302  //
   303  //    err := req.Send()
   304  //    if err == nil { // resp is now filled
   305  //        fmt.Println(resp)
   306  //    }
   307  //
   308  // See also, https://docs.aws.amazon.com/goto/WebAPI/groundstation-2019-05-23/CreateMissionProfile
   309  func (c *GroundStation) CreateMissionProfileRequest(input *CreateMissionProfileInput) (req *request.Request, output *CreateMissionProfileOutput) {
   310  	op := &request.Operation{
   311  		Name:       opCreateMissionProfile,
   312  		HTTPMethod: "POST",
   313  		HTTPPath:   "/missionprofile",
   314  	}
   315  
   316  	if input == nil {
   317  		input = &CreateMissionProfileInput{}
   318  	}
   319  
   320  	output = &CreateMissionProfileOutput{}
   321  	req = c.newRequest(op, input, output)
   322  	return
   323  }
   324  
   325  // CreateMissionProfile API operation for AWS Ground Station.
   326  //
   327  // Creates a mission profile.
   328  //
   329  // dataflowEdges is a list of lists of strings. Each lower level list of strings
   330  // has two elements: a from ARN and a to ARN.
   331  //
   332  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
   333  // with awserr.Error's Code and Message methods to get detailed information about
   334  // the error.
   335  //
   336  // See the AWS API reference guide for AWS Ground Station's
   337  // API operation CreateMissionProfile for usage and error information.
   338  //
   339  // Returned Error Types:
   340  //   * InvalidParameterException
   341  //   One or more parameters are not valid.
   342  //
   343  //   * DependencyException
   344  //   Dependency encountered an error.
   345  //
   346  //   * ResourceNotFoundException
   347  //   Resource was not found.
   348  //
   349  // See also, https://docs.aws.amazon.com/goto/WebAPI/groundstation-2019-05-23/CreateMissionProfile
   350  func (c *GroundStation) CreateMissionProfile(input *CreateMissionProfileInput) (*CreateMissionProfileOutput, error) {
   351  	req, out := c.CreateMissionProfileRequest(input)
   352  	return out, req.Send()
   353  }
   354  
   355  // CreateMissionProfileWithContext is the same as CreateMissionProfile with the addition of
   356  // the ability to pass a context and additional request options.
   357  //
   358  // See CreateMissionProfile for details on how to use this API operation.
   359  //
   360  // The context must be non-nil and will be used for request cancellation. If
   361  // the context is nil a panic will occur. In the future the SDK may create
   362  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
   363  // for more information on using Contexts.
   364  func (c *GroundStation) CreateMissionProfileWithContext(ctx aws.Context, input *CreateMissionProfileInput, opts ...request.Option) (*CreateMissionProfileOutput, error) {
   365  	req, out := c.CreateMissionProfileRequest(input)
   366  	req.SetContext(ctx)
   367  	req.ApplyOptions(opts...)
   368  	return out, req.Send()
   369  }
   370  
   371  const opDeleteConfig = "DeleteConfig"
   372  
   373  // DeleteConfigRequest generates a "aws/request.Request" representing the
   374  // client's request for the DeleteConfig operation. The "output" return
   375  // value will be populated with the request's response once the request completes
   376  // successfully.
   377  //
   378  // Use "Send" method on the returned Request to send the API call to the service.
   379  // the "output" return value is not valid until after Send returns without error.
   380  //
   381  // See DeleteConfig for more information on using the DeleteConfig
   382  // API call, and error handling.
   383  //
   384  // This method is useful when you want to inject custom logic or configuration
   385  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
   386  //
   387  //
   388  //    // Example sending a request using the DeleteConfigRequest method.
   389  //    req, resp := client.DeleteConfigRequest(params)
   390  //
   391  //    err := req.Send()
   392  //    if err == nil { // resp is now filled
   393  //        fmt.Println(resp)
   394  //    }
   395  //
   396  // See also, https://docs.aws.amazon.com/goto/WebAPI/groundstation-2019-05-23/DeleteConfig
   397  func (c *GroundStation) DeleteConfigRequest(input *DeleteConfigInput) (req *request.Request, output *DeleteConfigOutput) {
   398  	op := &request.Operation{
   399  		Name:       opDeleteConfig,
   400  		HTTPMethod: "DELETE",
   401  		HTTPPath:   "/config/{configType}/{configId}",
   402  	}
   403  
   404  	if input == nil {
   405  		input = &DeleteConfigInput{}
   406  	}
   407  
   408  	output = &DeleteConfigOutput{}
   409  	req = c.newRequest(op, input, output)
   410  	return
   411  }
   412  
   413  // DeleteConfig API operation for AWS Ground Station.
   414  //
   415  // Deletes a Config.
   416  //
   417  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
   418  // with awserr.Error's Code and Message methods to get detailed information about
   419  // the error.
   420  //
   421  // See the AWS API reference guide for AWS Ground Station's
   422  // API operation DeleteConfig for usage and error information.
   423  //
   424  // Returned Error Types:
   425  //   * InvalidParameterException
   426  //   One or more parameters are not valid.
   427  //
   428  //   * DependencyException
   429  //   Dependency encountered an error.
   430  //
   431  //   * ResourceNotFoundException
   432  //   Resource was not found.
   433  //
   434  // See also, https://docs.aws.amazon.com/goto/WebAPI/groundstation-2019-05-23/DeleteConfig
   435  func (c *GroundStation) DeleteConfig(input *DeleteConfigInput) (*DeleteConfigOutput, error) {
   436  	req, out := c.DeleteConfigRequest(input)
   437  	return out, req.Send()
   438  }
   439  
   440  // DeleteConfigWithContext is the same as DeleteConfig with the addition of
   441  // the ability to pass a context and additional request options.
   442  //
   443  // See DeleteConfig for details on how to use this API operation.
   444  //
   445  // The context must be non-nil and will be used for request cancellation. If
   446  // the context is nil a panic will occur. In the future the SDK may create
   447  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
   448  // for more information on using Contexts.
   449  func (c *GroundStation) DeleteConfigWithContext(ctx aws.Context, input *DeleteConfigInput, opts ...request.Option) (*DeleteConfigOutput, error) {
   450  	req, out := c.DeleteConfigRequest(input)
   451  	req.SetContext(ctx)
   452  	req.ApplyOptions(opts...)
   453  	return out, req.Send()
   454  }
   455  
   456  const opDeleteDataflowEndpointGroup = "DeleteDataflowEndpointGroup"
   457  
   458  // DeleteDataflowEndpointGroupRequest generates a "aws/request.Request" representing the
   459  // client's request for the DeleteDataflowEndpointGroup operation. The "output" return
   460  // value will be populated with the request's response once the request completes
   461  // successfully.
   462  //
   463  // Use "Send" method on the returned Request to send the API call to the service.
   464  // the "output" return value is not valid until after Send returns without error.
   465  //
   466  // See DeleteDataflowEndpointGroup for more information on using the DeleteDataflowEndpointGroup
   467  // API call, and error handling.
   468  //
   469  // This method is useful when you want to inject custom logic or configuration
   470  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
   471  //
   472  //
   473  //    // Example sending a request using the DeleteDataflowEndpointGroupRequest method.
   474  //    req, resp := client.DeleteDataflowEndpointGroupRequest(params)
   475  //
   476  //    err := req.Send()
   477  //    if err == nil { // resp is now filled
   478  //        fmt.Println(resp)
   479  //    }
   480  //
   481  // See also, https://docs.aws.amazon.com/goto/WebAPI/groundstation-2019-05-23/DeleteDataflowEndpointGroup
   482  func (c *GroundStation) DeleteDataflowEndpointGroupRequest(input *DeleteDataflowEndpointGroupInput) (req *request.Request, output *DeleteDataflowEndpointGroupOutput) {
   483  	op := &request.Operation{
   484  		Name:       opDeleteDataflowEndpointGroup,
   485  		HTTPMethod: "DELETE",
   486  		HTTPPath:   "/dataflowEndpointGroup/{dataflowEndpointGroupId}",
   487  	}
   488  
   489  	if input == nil {
   490  		input = &DeleteDataflowEndpointGroupInput{}
   491  	}
   492  
   493  	output = &DeleteDataflowEndpointGroupOutput{}
   494  	req = c.newRequest(op, input, output)
   495  	return
   496  }
   497  
   498  // DeleteDataflowEndpointGroup API operation for AWS Ground Station.
   499  //
   500  // Deletes a dataflow endpoint group.
   501  //
   502  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
   503  // with awserr.Error's Code and Message methods to get detailed information about
   504  // the error.
   505  //
   506  // See the AWS API reference guide for AWS Ground Station's
   507  // API operation DeleteDataflowEndpointGroup for usage and error information.
   508  //
   509  // Returned Error Types:
   510  //   * InvalidParameterException
   511  //   One or more parameters are not valid.
   512  //
   513  //   * DependencyException
   514  //   Dependency encountered an error.
   515  //
   516  //   * ResourceNotFoundException
   517  //   Resource was not found.
   518  //
   519  // See also, https://docs.aws.amazon.com/goto/WebAPI/groundstation-2019-05-23/DeleteDataflowEndpointGroup
   520  func (c *GroundStation) DeleteDataflowEndpointGroup(input *DeleteDataflowEndpointGroupInput) (*DeleteDataflowEndpointGroupOutput, error) {
   521  	req, out := c.DeleteDataflowEndpointGroupRequest(input)
   522  	return out, req.Send()
   523  }
   524  
   525  // DeleteDataflowEndpointGroupWithContext is the same as DeleteDataflowEndpointGroup with the addition of
   526  // the ability to pass a context and additional request options.
   527  //
   528  // See DeleteDataflowEndpointGroup for details on how to use this API operation.
   529  //
   530  // The context must be non-nil and will be used for request cancellation. If
   531  // the context is nil a panic will occur. In the future the SDK may create
   532  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
   533  // for more information on using Contexts.
   534  func (c *GroundStation) DeleteDataflowEndpointGroupWithContext(ctx aws.Context, input *DeleteDataflowEndpointGroupInput, opts ...request.Option) (*DeleteDataflowEndpointGroupOutput, error) {
   535  	req, out := c.DeleteDataflowEndpointGroupRequest(input)
   536  	req.SetContext(ctx)
   537  	req.ApplyOptions(opts...)
   538  	return out, req.Send()
   539  }
   540  
   541  const opDeleteMissionProfile = "DeleteMissionProfile"
   542  
   543  // DeleteMissionProfileRequest generates a "aws/request.Request" representing the
   544  // client's request for the DeleteMissionProfile operation. The "output" return
   545  // value will be populated with the request's response once the request completes
   546  // successfully.
   547  //
   548  // Use "Send" method on the returned Request to send the API call to the service.
   549  // the "output" return value is not valid until after Send returns without error.
   550  //
   551  // See DeleteMissionProfile for more information on using the DeleteMissionProfile
   552  // API call, and error handling.
   553  //
   554  // This method is useful when you want to inject custom logic or configuration
   555  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
   556  //
   557  //
   558  //    // Example sending a request using the DeleteMissionProfileRequest method.
   559  //    req, resp := client.DeleteMissionProfileRequest(params)
   560  //
   561  //    err := req.Send()
   562  //    if err == nil { // resp is now filled
   563  //        fmt.Println(resp)
   564  //    }
   565  //
   566  // See also, https://docs.aws.amazon.com/goto/WebAPI/groundstation-2019-05-23/DeleteMissionProfile
   567  func (c *GroundStation) DeleteMissionProfileRequest(input *DeleteMissionProfileInput) (req *request.Request, output *DeleteMissionProfileOutput) {
   568  	op := &request.Operation{
   569  		Name:       opDeleteMissionProfile,
   570  		HTTPMethod: "DELETE",
   571  		HTTPPath:   "/missionprofile/{missionProfileId}",
   572  	}
   573  
   574  	if input == nil {
   575  		input = &DeleteMissionProfileInput{}
   576  	}
   577  
   578  	output = &DeleteMissionProfileOutput{}
   579  	req = c.newRequest(op, input, output)
   580  	return
   581  }
   582  
   583  // DeleteMissionProfile API operation for AWS Ground Station.
   584  //
   585  // Deletes a mission profile.
   586  //
   587  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
   588  // with awserr.Error's Code and Message methods to get detailed information about
   589  // the error.
   590  //
   591  // See the AWS API reference guide for AWS Ground Station's
   592  // API operation DeleteMissionProfile for usage and error information.
   593  //
   594  // Returned Error Types:
   595  //   * InvalidParameterException
   596  //   One or more parameters are not valid.
   597  //
   598  //   * DependencyException
   599  //   Dependency encountered an error.
   600  //
   601  //   * ResourceNotFoundException
   602  //   Resource was not found.
   603  //
   604  // See also, https://docs.aws.amazon.com/goto/WebAPI/groundstation-2019-05-23/DeleteMissionProfile
   605  func (c *GroundStation) DeleteMissionProfile(input *DeleteMissionProfileInput) (*DeleteMissionProfileOutput, error) {
   606  	req, out := c.DeleteMissionProfileRequest(input)
   607  	return out, req.Send()
   608  }
   609  
   610  // DeleteMissionProfileWithContext is the same as DeleteMissionProfile with the addition of
   611  // the ability to pass a context and additional request options.
   612  //
   613  // See DeleteMissionProfile for details on how to use this API operation.
   614  //
   615  // The context must be non-nil and will be used for request cancellation. If
   616  // the context is nil a panic will occur. In the future the SDK may create
   617  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
   618  // for more information on using Contexts.
   619  func (c *GroundStation) DeleteMissionProfileWithContext(ctx aws.Context, input *DeleteMissionProfileInput, opts ...request.Option) (*DeleteMissionProfileOutput, error) {
   620  	req, out := c.DeleteMissionProfileRequest(input)
   621  	req.SetContext(ctx)
   622  	req.ApplyOptions(opts...)
   623  	return out, req.Send()
   624  }
   625  
   626  const opDescribeContact = "DescribeContact"
   627  
   628  // DescribeContactRequest generates a "aws/request.Request" representing the
   629  // client's request for the DescribeContact operation. The "output" return
   630  // value will be populated with the request's response once the request completes
   631  // successfully.
   632  //
   633  // Use "Send" method on the returned Request to send the API call to the service.
   634  // the "output" return value is not valid until after Send returns without error.
   635  //
   636  // See DescribeContact for more information on using the DescribeContact
   637  // API call, and error handling.
   638  //
   639  // This method is useful when you want to inject custom logic or configuration
   640  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
   641  //
   642  //
   643  //    // Example sending a request using the DescribeContactRequest method.
   644  //    req, resp := client.DescribeContactRequest(params)
   645  //
   646  //    err := req.Send()
   647  //    if err == nil { // resp is now filled
   648  //        fmt.Println(resp)
   649  //    }
   650  //
   651  // See also, https://docs.aws.amazon.com/goto/WebAPI/groundstation-2019-05-23/DescribeContact
   652  func (c *GroundStation) DescribeContactRequest(input *DescribeContactInput) (req *request.Request, output *DescribeContactOutput) {
   653  	op := &request.Operation{
   654  		Name:       opDescribeContact,
   655  		HTTPMethod: "GET",
   656  		HTTPPath:   "/contact/{contactId}",
   657  	}
   658  
   659  	if input == nil {
   660  		input = &DescribeContactInput{}
   661  	}
   662  
   663  	output = &DescribeContactOutput{}
   664  	req = c.newRequest(op, input, output)
   665  	return
   666  }
   667  
   668  // DescribeContact API operation for AWS Ground Station.
   669  //
   670  // Describes an existing contact.
   671  //
   672  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
   673  // with awserr.Error's Code and Message methods to get detailed information about
   674  // the error.
   675  //
   676  // See the AWS API reference guide for AWS Ground Station's
   677  // API operation DescribeContact for usage and error information.
   678  //
   679  // Returned Error Types:
   680  //   * InvalidParameterException
   681  //   One or more parameters are not valid.
   682  //
   683  //   * DependencyException
   684  //   Dependency encountered an error.
   685  //
   686  //   * ResourceNotFoundException
   687  //   Resource was not found.
   688  //
   689  // See also, https://docs.aws.amazon.com/goto/WebAPI/groundstation-2019-05-23/DescribeContact
   690  func (c *GroundStation) DescribeContact(input *DescribeContactInput) (*DescribeContactOutput, error) {
   691  	req, out := c.DescribeContactRequest(input)
   692  	return out, req.Send()
   693  }
   694  
   695  // DescribeContactWithContext is the same as DescribeContact with the addition of
   696  // the ability to pass a context and additional request options.
   697  //
   698  // See DescribeContact for details on how to use this API operation.
   699  //
   700  // The context must be non-nil and will be used for request cancellation. If
   701  // the context is nil a panic will occur. In the future the SDK may create
   702  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
   703  // for more information on using Contexts.
   704  func (c *GroundStation) DescribeContactWithContext(ctx aws.Context, input *DescribeContactInput, opts ...request.Option) (*DescribeContactOutput, error) {
   705  	req, out := c.DescribeContactRequest(input)
   706  	req.SetContext(ctx)
   707  	req.ApplyOptions(opts...)
   708  	return out, req.Send()
   709  }
   710  
   711  const opGetConfig = "GetConfig"
   712  
   713  // GetConfigRequest generates a "aws/request.Request" representing the
   714  // client's request for the GetConfig operation. The "output" return
   715  // value will be populated with the request's response once the request completes
   716  // successfully.
   717  //
   718  // Use "Send" method on the returned Request to send the API call to the service.
   719  // the "output" return value is not valid until after Send returns without error.
   720  //
   721  // See GetConfig for more information on using the GetConfig
   722  // API call, and error handling.
   723  //
   724  // This method is useful when you want to inject custom logic or configuration
   725  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
   726  //
   727  //
   728  //    // Example sending a request using the GetConfigRequest method.
   729  //    req, resp := client.GetConfigRequest(params)
   730  //
   731  //    err := req.Send()
   732  //    if err == nil { // resp is now filled
   733  //        fmt.Println(resp)
   734  //    }
   735  //
   736  // See also, https://docs.aws.amazon.com/goto/WebAPI/groundstation-2019-05-23/GetConfig
   737  func (c *GroundStation) GetConfigRequest(input *GetConfigInput) (req *request.Request, output *GetConfigOutput) {
   738  	op := &request.Operation{
   739  		Name:       opGetConfig,
   740  		HTTPMethod: "GET",
   741  		HTTPPath:   "/config/{configType}/{configId}",
   742  	}
   743  
   744  	if input == nil {
   745  		input = &GetConfigInput{}
   746  	}
   747  
   748  	output = &GetConfigOutput{}
   749  	req = c.newRequest(op, input, output)
   750  	return
   751  }
   752  
   753  // GetConfig API operation for AWS Ground Station.
   754  //
   755  // Returns Config information.
   756  //
   757  // Only one Config response can be returned.
   758  //
   759  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
   760  // with awserr.Error's Code and Message methods to get detailed information about
   761  // the error.
   762  //
   763  // See the AWS API reference guide for AWS Ground Station's
   764  // API operation GetConfig for usage and error information.
   765  //
   766  // Returned Error Types:
   767  //   * InvalidParameterException
   768  //   One or more parameters are not valid.
   769  //
   770  //   * DependencyException
   771  //   Dependency encountered an error.
   772  //
   773  //   * ResourceNotFoundException
   774  //   Resource was not found.
   775  //
   776  // See also, https://docs.aws.amazon.com/goto/WebAPI/groundstation-2019-05-23/GetConfig
   777  func (c *GroundStation) GetConfig(input *GetConfigInput) (*GetConfigOutput, error) {
   778  	req, out := c.GetConfigRequest(input)
   779  	return out, req.Send()
   780  }
   781  
   782  // GetConfigWithContext is the same as GetConfig with the addition of
   783  // the ability to pass a context and additional request options.
   784  //
   785  // See GetConfig for details on how to use this API operation.
   786  //
   787  // The context must be non-nil and will be used for request cancellation. If
   788  // the context is nil a panic will occur. In the future the SDK may create
   789  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
   790  // for more information on using Contexts.
   791  func (c *GroundStation) GetConfigWithContext(ctx aws.Context, input *GetConfigInput, opts ...request.Option) (*GetConfigOutput, error) {
   792  	req, out := c.GetConfigRequest(input)
   793  	req.SetContext(ctx)
   794  	req.ApplyOptions(opts...)
   795  	return out, req.Send()
   796  }
   797  
   798  const opGetDataflowEndpointGroup = "GetDataflowEndpointGroup"
   799  
   800  // GetDataflowEndpointGroupRequest generates a "aws/request.Request" representing the
   801  // client's request for the GetDataflowEndpointGroup operation. The "output" return
   802  // value will be populated with the request's response once the request completes
   803  // successfully.
   804  //
   805  // Use "Send" method on the returned Request to send the API call to the service.
   806  // the "output" return value is not valid until after Send returns without error.
   807  //
   808  // See GetDataflowEndpointGroup for more information on using the GetDataflowEndpointGroup
   809  // API call, and error handling.
   810  //
   811  // This method is useful when you want to inject custom logic or configuration
   812  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
   813  //
   814  //
   815  //    // Example sending a request using the GetDataflowEndpointGroupRequest method.
   816  //    req, resp := client.GetDataflowEndpointGroupRequest(params)
   817  //
   818  //    err := req.Send()
   819  //    if err == nil { // resp is now filled
   820  //        fmt.Println(resp)
   821  //    }
   822  //
   823  // See also, https://docs.aws.amazon.com/goto/WebAPI/groundstation-2019-05-23/GetDataflowEndpointGroup
   824  func (c *GroundStation) GetDataflowEndpointGroupRequest(input *GetDataflowEndpointGroupInput) (req *request.Request, output *GetDataflowEndpointGroupOutput) {
   825  	op := &request.Operation{
   826  		Name:       opGetDataflowEndpointGroup,
   827  		HTTPMethod: "GET",
   828  		HTTPPath:   "/dataflowEndpointGroup/{dataflowEndpointGroupId}",
   829  	}
   830  
   831  	if input == nil {
   832  		input = &GetDataflowEndpointGroupInput{}
   833  	}
   834  
   835  	output = &GetDataflowEndpointGroupOutput{}
   836  	req = c.newRequest(op, input, output)
   837  	return
   838  }
   839  
   840  // GetDataflowEndpointGroup API operation for AWS Ground Station.
   841  //
   842  // Returns the dataflow endpoint group.
   843  //
   844  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
   845  // with awserr.Error's Code and Message methods to get detailed information about
   846  // the error.
   847  //
   848  // See the AWS API reference guide for AWS Ground Station's
   849  // API operation GetDataflowEndpointGroup for usage and error information.
   850  //
   851  // Returned Error Types:
   852  //   * InvalidParameterException
   853  //   One or more parameters are not valid.
   854  //
   855  //   * DependencyException
   856  //   Dependency encountered an error.
   857  //
   858  //   * ResourceNotFoundException
   859  //   Resource was not found.
   860  //
   861  // See also, https://docs.aws.amazon.com/goto/WebAPI/groundstation-2019-05-23/GetDataflowEndpointGroup
   862  func (c *GroundStation) GetDataflowEndpointGroup(input *GetDataflowEndpointGroupInput) (*GetDataflowEndpointGroupOutput, error) {
   863  	req, out := c.GetDataflowEndpointGroupRequest(input)
   864  	return out, req.Send()
   865  }
   866  
   867  // GetDataflowEndpointGroupWithContext is the same as GetDataflowEndpointGroup with the addition of
   868  // the ability to pass a context and additional request options.
   869  //
   870  // See GetDataflowEndpointGroup for details on how to use this API operation.
   871  //
   872  // The context must be non-nil and will be used for request cancellation. If
   873  // the context is nil a panic will occur. In the future the SDK may create
   874  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
   875  // for more information on using Contexts.
   876  func (c *GroundStation) GetDataflowEndpointGroupWithContext(ctx aws.Context, input *GetDataflowEndpointGroupInput, opts ...request.Option) (*GetDataflowEndpointGroupOutput, error) {
   877  	req, out := c.GetDataflowEndpointGroupRequest(input)
   878  	req.SetContext(ctx)
   879  	req.ApplyOptions(opts...)
   880  	return out, req.Send()
   881  }
   882  
   883  const opGetMinuteUsage = "GetMinuteUsage"
   884  
   885  // GetMinuteUsageRequest generates a "aws/request.Request" representing the
   886  // client's request for the GetMinuteUsage operation. The "output" return
   887  // value will be populated with the request's response once the request completes
   888  // successfully.
   889  //
   890  // Use "Send" method on the returned Request to send the API call to the service.
   891  // the "output" return value is not valid until after Send returns without error.
   892  //
   893  // See GetMinuteUsage for more information on using the GetMinuteUsage
   894  // API call, and error handling.
   895  //
   896  // This method is useful when you want to inject custom logic or configuration
   897  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
   898  //
   899  //
   900  //    // Example sending a request using the GetMinuteUsageRequest method.
   901  //    req, resp := client.GetMinuteUsageRequest(params)
   902  //
   903  //    err := req.Send()
   904  //    if err == nil { // resp is now filled
   905  //        fmt.Println(resp)
   906  //    }
   907  //
   908  // See also, https://docs.aws.amazon.com/goto/WebAPI/groundstation-2019-05-23/GetMinuteUsage
   909  func (c *GroundStation) GetMinuteUsageRequest(input *GetMinuteUsageInput) (req *request.Request, output *GetMinuteUsageOutput) {
   910  	op := &request.Operation{
   911  		Name:       opGetMinuteUsage,
   912  		HTTPMethod: "POST",
   913  		HTTPPath:   "/minute-usage",
   914  	}
   915  
   916  	if input == nil {
   917  		input = &GetMinuteUsageInput{}
   918  	}
   919  
   920  	output = &GetMinuteUsageOutput{}
   921  	req = c.newRequest(op, input, output)
   922  	return
   923  }
   924  
   925  // GetMinuteUsage API operation for AWS Ground Station.
   926  //
   927  // Returns the number of minutes used by account.
   928  //
   929  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
   930  // with awserr.Error's Code and Message methods to get detailed information about
   931  // the error.
   932  //
   933  // See the AWS API reference guide for AWS Ground Station's
   934  // API operation GetMinuteUsage for usage and error information.
   935  //
   936  // Returned Error Types:
   937  //   * InvalidParameterException
   938  //   One or more parameters are not valid.
   939  //
   940  //   * DependencyException
   941  //   Dependency encountered an error.
   942  //
   943  //   * ResourceNotFoundException
   944  //   Resource was not found.
   945  //
   946  // See also, https://docs.aws.amazon.com/goto/WebAPI/groundstation-2019-05-23/GetMinuteUsage
   947  func (c *GroundStation) GetMinuteUsage(input *GetMinuteUsageInput) (*GetMinuteUsageOutput, error) {
   948  	req, out := c.GetMinuteUsageRequest(input)
   949  	return out, req.Send()
   950  }
   951  
   952  // GetMinuteUsageWithContext is the same as GetMinuteUsage with the addition of
   953  // the ability to pass a context and additional request options.
   954  //
   955  // See GetMinuteUsage for details on how to use this API operation.
   956  //
   957  // The context must be non-nil and will be used for request cancellation. If
   958  // the context is nil a panic will occur. In the future the SDK may create
   959  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
   960  // for more information on using Contexts.
   961  func (c *GroundStation) GetMinuteUsageWithContext(ctx aws.Context, input *GetMinuteUsageInput, opts ...request.Option) (*GetMinuteUsageOutput, error) {
   962  	req, out := c.GetMinuteUsageRequest(input)
   963  	req.SetContext(ctx)
   964  	req.ApplyOptions(opts...)
   965  	return out, req.Send()
   966  }
   967  
   968  const opGetMissionProfile = "GetMissionProfile"
   969  
   970  // GetMissionProfileRequest generates a "aws/request.Request" representing the
   971  // client's request for the GetMissionProfile operation. The "output" return
   972  // value will be populated with the request's response once the request completes
   973  // successfully.
   974  //
   975  // Use "Send" method on the returned Request to send the API call to the service.
   976  // the "output" return value is not valid until after Send returns without error.
   977  //
   978  // See GetMissionProfile for more information on using the GetMissionProfile
   979  // API call, and error handling.
   980  //
   981  // This method is useful when you want to inject custom logic or configuration
   982  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
   983  //
   984  //
   985  //    // Example sending a request using the GetMissionProfileRequest method.
   986  //    req, resp := client.GetMissionProfileRequest(params)
   987  //
   988  //    err := req.Send()
   989  //    if err == nil { // resp is now filled
   990  //        fmt.Println(resp)
   991  //    }
   992  //
   993  // See also, https://docs.aws.amazon.com/goto/WebAPI/groundstation-2019-05-23/GetMissionProfile
   994  func (c *GroundStation) GetMissionProfileRequest(input *GetMissionProfileInput) (req *request.Request, output *GetMissionProfileOutput) {
   995  	op := &request.Operation{
   996  		Name:       opGetMissionProfile,
   997  		HTTPMethod: "GET",
   998  		HTTPPath:   "/missionprofile/{missionProfileId}",
   999  	}
  1000  
  1001  	if input == nil {
  1002  		input = &GetMissionProfileInput{}
  1003  	}
  1004  
  1005  	output = &GetMissionProfileOutput{}
  1006  	req = c.newRequest(op, input, output)
  1007  	return
  1008  }
  1009  
  1010  // GetMissionProfile API operation for AWS Ground Station.
  1011  //
  1012  // Returns a mission profile.
  1013  //
  1014  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  1015  // with awserr.Error's Code and Message methods to get detailed information about
  1016  // the error.
  1017  //
  1018  // See the AWS API reference guide for AWS Ground Station's
  1019  // API operation GetMissionProfile for usage and error information.
  1020  //
  1021  // Returned Error Types:
  1022  //   * InvalidParameterException
  1023  //   One or more parameters are not valid.
  1024  //
  1025  //   * DependencyException
  1026  //   Dependency encountered an error.
  1027  //
  1028  //   * ResourceNotFoundException
  1029  //   Resource was not found.
  1030  //
  1031  // See also, https://docs.aws.amazon.com/goto/WebAPI/groundstation-2019-05-23/GetMissionProfile
  1032  func (c *GroundStation) GetMissionProfile(input *GetMissionProfileInput) (*GetMissionProfileOutput, error) {
  1033  	req, out := c.GetMissionProfileRequest(input)
  1034  	return out, req.Send()
  1035  }
  1036  
  1037  // GetMissionProfileWithContext is the same as GetMissionProfile with the addition of
  1038  // the ability to pass a context and additional request options.
  1039  //
  1040  // See GetMissionProfile for details on how to use this API operation.
  1041  //
  1042  // The context must be non-nil and will be used for request cancellation. If
  1043  // the context is nil a panic will occur. In the future the SDK may create
  1044  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  1045  // for more information on using Contexts.
  1046  func (c *GroundStation) GetMissionProfileWithContext(ctx aws.Context, input *GetMissionProfileInput, opts ...request.Option) (*GetMissionProfileOutput, error) {
  1047  	req, out := c.GetMissionProfileRequest(input)
  1048  	req.SetContext(ctx)
  1049  	req.ApplyOptions(opts...)
  1050  	return out, req.Send()
  1051  }
  1052  
  1053  const opGetSatellite = "GetSatellite"
  1054  
  1055  // GetSatelliteRequest generates a "aws/request.Request" representing the
  1056  // client's request for the GetSatellite operation. The "output" return
  1057  // value will be populated with the request's response once the request completes
  1058  // successfully.
  1059  //
  1060  // Use "Send" method on the returned Request to send the API call to the service.
  1061  // the "output" return value is not valid until after Send returns without error.
  1062  //
  1063  // See GetSatellite for more information on using the GetSatellite
  1064  // API call, and error handling.
  1065  //
  1066  // This method is useful when you want to inject custom logic or configuration
  1067  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  1068  //
  1069  //
  1070  //    // Example sending a request using the GetSatelliteRequest method.
  1071  //    req, resp := client.GetSatelliteRequest(params)
  1072  //
  1073  //    err := req.Send()
  1074  //    if err == nil { // resp is now filled
  1075  //        fmt.Println(resp)
  1076  //    }
  1077  //
  1078  // See also, https://docs.aws.amazon.com/goto/WebAPI/groundstation-2019-05-23/GetSatellite
  1079  func (c *GroundStation) GetSatelliteRequest(input *GetSatelliteInput) (req *request.Request, output *GetSatelliteOutput) {
  1080  	op := &request.Operation{
  1081  		Name:       opGetSatellite,
  1082  		HTTPMethod: "GET",
  1083  		HTTPPath:   "/satellite/{satelliteId}",
  1084  	}
  1085  
  1086  	if input == nil {
  1087  		input = &GetSatelliteInput{}
  1088  	}
  1089  
  1090  	output = &GetSatelliteOutput{}
  1091  	req = c.newRequest(op, input, output)
  1092  	return
  1093  }
  1094  
  1095  // GetSatellite API operation for AWS Ground Station.
  1096  //
  1097  // Returns a satellite.
  1098  //
  1099  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  1100  // with awserr.Error's Code and Message methods to get detailed information about
  1101  // the error.
  1102  //
  1103  // See the AWS API reference guide for AWS Ground Station's
  1104  // API operation GetSatellite for usage and error information.
  1105  //
  1106  // Returned Error Types:
  1107  //   * InvalidParameterException
  1108  //   One or more parameters are not valid.
  1109  //
  1110  //   * DependencyException
  1111  //   Dependency encountered an error.
  1112  //
  1113  //   * ResourceNotFoundException
  1114  //   Resource was not found.
  1115  //
  1116  // See also, https://docs.aws.amazon.com/goto/WebAPI/groundstation-2019-05-23/GetSatellite
  1117  func (c *GroundStation) GetSatellite(input *GetSatelliteInput) (*GetSatelliteOutput, error) {
  1118  	req, out := c.GetSatelliteRequest(input)
  1119  	return out, req.Send()
  1120  }
  1121  
  1122  // GetSatelliteWithContext is the same as GetSatellite with the addition of
  1123  // the ability to pass a context and additional request options.
  1124  //
  1125  // See GetSatellite for details on how to use this API operation.
  1126  //
  1127  // The context must be non-nil and will be used for request cancellation. If
  1128  // the context is nil a panic will occur. In the future the SDK may create
  1129  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  1130  // for more information on using Contexts.
  1131  func (c *GroundStation) GetSatelliteWithContext(ctx aws.Context, input *GetSatelliteInput, opts ...request.Option) (*GetSatelliteOutput, error) {
  1132  	req, out := c.GetSatelliteRequest(input)
  1133  	req.SetContext(ctx)
  1134  	req.ApplyOptions(opts...)
  1135  	return out, req.Send()
  1136  }
  1137  
  1138  const opListConfigs = "ListConfigs"
  1139  
  1140  // ListConfigsRequest generates a "aws/request.Request" representing the
  1141  // client's request for the ListConfigs operation. The "output" return
  1142  // value will be populated with the request's response once the request completes
  1143  // successfully.
  1144  //
  1145  // Use "Send" method on the returned Request to send the API call to the service.
  1146  // the "output" return value is not valid until after Send returns without error.
  1147  //
  1148  // See ListConfigs for more information on using the ListConfigs
  1149  // API call, and error handling.
  1150  //
  1151  // This method is useful when you want to inject custom logic or configuration
  1152  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  1153  //
  1154  //
  1155  //    // Example sending a request using the ListConfigsRequest method.
  1156  //    req, resp := client.ListConfigsRequest(params)
  1157  //
  1158  //    err := req.Send()
  1159  //    if err == nil { // resp is now filled
  1160  //        fmt.Println(resp)
  1161  //    }
  1162  //
  1163  // See also, https://docs.aws.amazon.com/goto/WebAPI/groundstation-2019-05-23/ListConfigs
  1164  func (c *GroundStation) ListConfigsRequest(input *ListConfigsInput) (req *request.Request, output *ListConfigsOutput) {
  1165  	op := &request.Operation{
  1166  		Name:       opListConfigs,
  1167  		HTTPMethod: "GET",
  1168  		HTTPPath:   "/config",
  1169  		Paginator: &request.Paginator{
  1170  			InputTokens:     []string{"nextToken"},
  1171  			OutputTokens:    []string{"nextToken"},
  1172  			LimitToken:      "maxResults",
  1173  			TruncationToken: "",
  1174  		},
  1175  	}
  1176  
  1177  	if input == nil {
  1178  		input = &ListConfigsInput{}
  1179  	}
  1180  
  1181  	output = &ListConfigsOutput{}
  1182  	req = c.newRequest(op, input, output)
  1183  	return
  1184  }
  1185  
  1186  // ListConfigs API operation for AWS Ground Station.
  1187  //
  1188  // Returns a list of Config objects.
  1189  //
  1190  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  1191  // with awserr.Error's Code and Message methods to get detailed information about
  1192  // the error.
  1193  //
  1194  // See the AWS API reference guide for AWS Ground Station's
  1195  // API operation ListConfigs for usage and error information.
  1196  //
  1197  // Returned Error Types:
  1198  //   * InvalidParameterException
  1199  //   One or more parameters are not valid.
  1200  //
  1201  //   * DependencyException
  1202  //   Dependency encountered an error.
  1203  //
  1204  //   * ResourceNotFoundException
  1205  //   Resource was not found.
  1206  //
  1207  // See also, https://docs.aws.amazon.com/goto/WebAPI/groundstation-2019-05-23/ListConfigs
  1208  func (c *GroundStation) ListConfigs(input *ListConfigsInput) (*ListConfigsOutput, error) {
  1209  	req, out := c.ListConfigsRequest(input)
  1210  	return out, req.Send()
  1211  }
  1212  
  1213  // ListConfigsWithContext is the same as ListConfigs with the addition of
  1214  // the ability to pass a context and additional request options.
  1215  //
  1216  // See ListConfigs for details on how to use this API operation.
  1217  //
  1218  // The context must be non-nil and will be used for request cancellation. If
  1219  // the context is nil a panic will occur. In the future the SDK may create
  1220  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  1221  // for more information on using Contexts.
  1222  func (c *GroundStation) ListConfigsWithContext(ctx aws.Context, input *ListConfigsInput, opts ...request.Option) (*ListConfigsOutput, error) {
  1223  	req, out := c.ListConfigsRequest(input)
  1224  	req.SetContext(ctx)
  1225  	req.ApplyOptions(opts...)
  1226  	return out, req.Send()
  1227  }
  1228  
  1229  // ListConfigsPages iterates over the pages of a ListConfigs operation,
  1230  // calling the "fn" function with the response data for each page. To stop
  1231  // iterating, return false from the fn function.
  1232  //
  1233  // See ListConfigs method for more information on how to use this operation.
  1234  //
  1235  // Note: This operation can generate multiple requests to a service.
  1236  //
  1237  //    // Example iterating over at most 3 pages of a ListConfigs operation.
  1238  //    pageNum := 0
  1239  //    err := client.ListConfigsPages(params,
  1240  //        func(page *groundstation.ListConfigsOutput, lastPage bool) bool {
  1241  //            pageNum++
  1242  //            fmt.Println(page)
  1243  //            return pageNum <= 3
  1244  //        })
  1245  //
  1246  func (c *GroundStation) ListConfigsPages(input *ListConfigsInput, fn func(*ListConfigsOutput, bool) bool) error {
  1247  	return c.ListConfigsPagesWithContext(aws.BackgroundContext(), input, fn)
  1248  }
  1249  
  1250  // ListConfigsPagesWithContext same as ListConfigsPages except
  1251  // it takes a Context and allows setting request options on the pages.
  1252  //
  1253  // The context must be non-nil and will be used for request cancellation. If
  1254  // the context is nil a panic will occur. In the future the SDK may create
  1255  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  1256  // for more information on using Contexts.
  1257  func (c *GroundStation) ListConfigsPagesWithContext(ctx aws.Context, input *ListConfigsInput, fn func(*ListConfigsOutput, bool) bool, opts ...request.Option) error {
  1258  	p := request.Pagination{
  1259  		NewRequest: func() (*request.Request, error) {
  1260  			var inCpy *ListConfigsInput
  1261  			if input != nil {
  1262  				tmp := *input
  1263  				inCpy = &tmp
  1264  			}
  1265  			req, _ := c.ListConfigsRequest(inCpy)
  1266  			req.SetContext(ctx)
  1267  			req.ApplyOptions(opts...)
  1268  			return req, nil
  1269  		},
  1270  	}
  1271  
  1272  	for p.Next() {
  1273  		if !fn(p.Page().(*ListConfigsOutput), !p.HasNextPage()) {
  1274  			break
  1275  		}
  1276  	}
  1277  
  1278  	return p.Err()
  1279  }
  1280  
  1281  const opListContacts = "ListContacts"
  1282  
  1283  // ListContactsRequest generates a "aws/request.Request" representing the
  1284  // client's request for the ListContacts operation. The "output" return
  1285  // value will be populated with the request's response once the request completes
  1286  // successfully.
  1287  //
  1288  // Use "Send" method on the returned Request to send the API call to the service.
  1289  // the "output" return value is not valid until after Send returns without error.
  1290  //
  1291  // See ListContacts for more information on using the ListContacts
  1292  // API call, and error handling.
  1293  //
  1294  // This method is useful when you want to inject custom logic or configuration
  1295  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  1296  //
  1297  //
  1298  //    // Example sending a request using the ListContactsRequest method.
  1299  //    req, resp := client.ListContactsRequest(params)
  1300  //
  1301  //    err := req.Send()
  1302  //    if err == nil { // resp is now filled
  1303  //        fmt.Println(resp)
  1304  //    }
  1305  //
  1306  // See also, https://docs.aws.amazon.com/goto/WebAPI/groundstation-2019-05-23/ListContacts
  1307  func (c *GroundStation) ListContactsRequest(input *ListContactsInput) (req *request.Request, output *ListContactsOutput) {
  1308  	op := &request.Operation{
  1309  		Name:       opListContacts,
  1310  		HTTPMethod: "POST",
  1311  		HTTPPath:   "/contacts",
  1312  		Paginator: &request.Paginator{
  1313  			InputTokens:     []string{"nextToken"},
  1314  			OutputTokens:    []string{"nextToken"},
  1315  			LimitToken:      "maxResults",
  1316  			TruncationToken: "",
  1317  		},
  1318  	}
  1319  
  1320  	if input == nil {
  1321  		input = &ListContactsInput{}
  1322  	}
  1323  
  1324  	output = &ListContactsOutput{}
  1325  	req = c.newRequest(op, input, output)
  1326  	return
  1327  }
  1328  
  1329  // ListContacts API operation for AWS Ground Station.
  1330  //
  1331  // Returns a list of contacts.
  1332  //
  1333  // If statusList contains AVAILABLE, the request must include groundStation,
  1334  // missionprofileArn, and satelliteArn.
  1335  //
  1336  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  1337  // with awserr.Error's Code and Message methods to get detailed information about
  1338  // the error.
  1339  //
  1340  // See the AWS API reference guide for AWS Ground Station's
  1341  // API operation ListContacts for usage and error information.
  1342  //
  1343  // Returned Error Types:
  1344  //   * InvalidParameterException
  1345  //   One or more parameters are not valid.
  1346  //
  1347  //   * DependencyException
  1348  //   Dependency encountered an error.
  1349  //
  1350  //   * ResourceNotFoundException
  1351  //   Resource was not found.
  1352  //
  1353  // See also, https://docs.aws.amazon.com/goto/WebAPI/groundstation-2019-05-23/ListContacts
  1354  func (c *GroundStation) ListContacts(input *ListContactsInput) (*ListContactsOutput, error) {
  1355  	req, out := c.ListContactsRequest(input)
  1356  	return out, req.Send()
  1357  }
  1358  
  1359  // ListContactsWithContext is the same as ListContacts with the addition of
  1360  // the ability to pass a context and additional request options.
  1361  //
  1362  // See ListContacts for details on how to use this API operation.
  1363  //
  1364  // The context must be non-nil and will be used for request cancellation. If
  1365  // the context is nil a panic will occur. In the future the SDK may create
  1366  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  1367  // for more information on using Contexts.
  1368  func (c *GroundStation) ListContactsWithContext(ctx aws.Context, input *ListContactsInput, opts ...request.Option) (*ListContactsOutput, error) {
  1369  	req, out := c.ListContactsRequest(input)
  1370  	req.SetContext(ctx)
  1371  	req.ApplyOptions(opts...)
  1372  	return out, req.Send()
  1373  }
  1374  
  1375  // ListContactsPages iterates over the pages of a ListContacts operation,
  1376  // calling the "fn" function with the response data for each page. To stop
  1377  // iterating, return false from the fn function.
  1378  //
  1379  // See ListContacts method for more information on how to use this operation.
  1380  //
  1381  // Note: This operation can generate multiple requests to a service.
  1382  //
  1383  //    // Example iterating over at most 3 pages of a ListContacts operation.
  1384  //    pageNum := 0
  1385  //    err := client.ListContactsPages(params,
  1386  //        func(page *groundstation.ListContactsOutput, lastPage bool) bool {
  1387  //            pageNum++
  1388  //            fmt.Println(page)
  1389  //            return pageNum <= 3
  1390  //        })
  1391  //
  1392  func (c *GroundStation) ListContactsPages(input *ListContactsInput, fn func(*ListContactsOutput, bool) bool) error {
  1393  	return c.ListContactsPagesWithContext(aws.BackgroundContext(), input, fn)
  1394  }
  1395  
  1396  // ListContactsPagesWithContext same as ListContactsPages except
  1397  // it takes a Context and allows setting request options on the pages.
  1398  //
  1399  // The context must be non-nil and will be used for request cancellation. If
  1400  // the context is nil a panic will occur. In the future the SDK may create
  1401  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  1402  // for more information on using Contexts.
  1403  func (c *GroundStation) ListContactsPagesWithContext(ctx aws.Context, input *ListContactsInput, fn func(*ListContactsOutput, bool) bool, opts ...request.Option) error {
  1404  	p := request.Pagination{
  1405  		NewRequest: func() (*request.Request, error) {
  1406  			var inCpy *ListContactsInput
  1407  			if input != nil {
  1408  				tmp := *input
  1409  				inCpy = &tmp
  1410  			}
  1411  			req, _ := c.ListContactsRequest(inCpy)
  1412  			req.SetContext(ctx)
  1413  			req.ApplyOptions(opts...)
  1414  			return req, nil
  1415  		},
  1416  	}
  1417  
  1418  	for p.Next() {
  1419  		if !fn(p.Page().(*ListContactsOutput), !p.HasNextPage()) {
  1420  			break
  1421  		}
  1422  	}
  1423  
  1424  	return p.Err()
  1425  }
  1426  
  1427  const opListDataflowEndpointGroups = "ListDataflowEndpointGroups"
  1428  
  1429  // ListDataflowEndpointGroupsRequest generates a "aws/request.Request" representing the
  1430  // client's request for the ListDataflowEndpointGroups operation. The "output" return
  1431  // value will be populated with the request's response once the request completes
  1432  // successfully.
  1433  //
  1434  // Use "Send" method on the returned Request to send the API call to the service.
  1435  // the "output" return value is not valid until after Send returns without error.
  1436  //
  1437  // See ListDataflowEndpointGroups for more information on using the ListDataflowEndpointGroups
  1438  // API call, and error handling.
  1439  //
  1440  // This method is useful when you want to inject custom logic or configuration
  1441  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  1442  //
  1443  //
  1444  //    // Example sending a request using the ListDataflowEndpointGroupsRequest method.
  1445  //    req, resp := client.ListDataflowEndpointGroupsRequest(params)
  1446  //
  1447  //    err := req.Send()
  1448  //    if err == nil { // resp is now filled
  1449  //        fmt.Println(resp)
  1450  //    }
  1451  //
  1452  // See also, https://docs.aws.amazon.com/goto/WebAPI/groundstation-2019-05-23/ListDataflowEndpointGroups
  1453  func (c *GroundStation) ListDataflowEndpointGroupsRequest(input *ListDataflowEndpointGroupsInput) (req *request.Request, output *ListDataflowEndpointGroupsOutput) {
  1454  	op := &request.Operation{
  1455  		Name:       opListDataflowEndpointGroups,
  1456  		HTTPMethod: "GET",
  1457  		HTTPPath:   "/dataflowEndpointGroup",
  1458  		Paginator: &request.Paginator{
  1459  			InputTokens:     []string{"nextToken"},
  1460  			OutputTokens:    []string{"nextToken"},
  1461  			LimitToken:      "maxResults",
  1462  			TruncationToken: "",
  1463  		},
  1464  	}
  1465  
  1466  	if input == nil {
  1467  		input = &ListDataflowEndpointGroupsInput{}
  1468  	}
  1469  
  1470  	output = &ListDataflowEndpointGroupsOutput{}
  1471  	req = c.newRequest(op, input, output)
  1472  	return
  1473  }
  1474  
  1475  // ListDataflowEndpointGroups API operation for AWS Ground Station.
  1476  //
  1477  // Returns a list of DataflowEndpoint groups.
  1478  //
  1479  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  1480  // with awserr.Error's Code and Message methods to get detailed information about
  1481  // the error.
  1482  //
  1483  // See the AWS API reference guide for AWS Ground Station's
  1484  // API operation ListDataflowEndpointGroups for usage and error information.
  1485  //
  1486  // Returned Error Types:
  1487  //   * InvalidParameterException
  1488  //   One or more parameters are not valid.
  1489  //
  1490  //   * DependencyException
  1491  //   Dependency encountered an error.
  1492  //
  1493  //   * ResourceNotFoundException
  1494  //   Resource was not found.
  1495  //
  1496  // See also, https://docs.aws.amazon.com/goto/WebAPI/groundstation-2019-05-23/ListDataflowEndpointGroups
  1497  func (c *GroundStation) ListDataflowEndpointGroups(input *ListDataflowEndpointGroupsInput) (*ListDataflowEndpointGroupsOutput, error) {
  1498  	req, out := c.ListDataflowEndpointGroupsRequest(input)
  1499  	return out, req.Send()
  1500  }
  1501  
  1502  // ListDataflowEndpointGroupsWithContext is the same as ListDataflowEndpointGroups with the addition of
  1503  // the ability to pass a context and additional request options.
  1504  //
  1505  // See ListDataflowEndpointGroups for details on how to use this API operation.
  1506  //
  1507  // The context must be non-nil and will be used for request cancellation. If
  1508  // the context is nil a panic will occur. In the future the SDK may create
  1509  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  1510  // for more information on using Contexts.
  1511  func (c *GroundStation) ListDataflowEndpointGroupsWithContext(ctx aws.Context, input *ListDataflowEndpointGroupsInput, opts ...request.Option) (*ListDataflowEndpointGroupsOutput, error) {
  1512  	req, out := c.ListDataflowEndpointGroupsRequest(input)
  1513  	req.SetContext(ctx)
  1514  	req.ApplyOptions(opts...)
  1515  	return out, req.Send()
  1516  }
  1517  
  1518  // ListDataflowEndpointGroupsPages iterates over the pages of a ListDataflowEndpointGroups operation,
  1519  // calling the "fn" function with the response data for each page. To stop
  1520  // iterating, return false from the fn function.
  1521  //
  1522  // See ListDataflowEndpointGroups method for more information on how to use this operation.
  1523  //
  1524  // Note: This operation can generate multiple requests to a service.
  1525  //
  1526  //    // Example iterating over at most 3 pages of a ListDataflowEndpointGroups operation.
  1527  //    pageNum := 0
  1528  //    err := client.ListDataflowEndpointGroupsPages(params,
  1529  //        func(page *groundstation.ListDataflowEndpointGroupsOutput, lastPage bool) bool {
  1530  //            pageNum++
  1531  //            fmt.Println(page)
  1532  //            return pageNum <= 3
  1533  //        })
  1534  //
  1535  func (c *GroundStation) ListDataflowEndpointGroupsPages(input *ListDataflowEndpointGroupsInput, fn func(*ListDataflowEndpointGroupsOutput, bool) bool) error {
  1536  	return c.ListDataflowEndpointGroupsPagesWithContext(aws.BackgroundContext(), input, fn)
  1537  }
  1538  
  1539  // ListDataflowEndpointGroupsPagesWithContext same as ListDataflowEndpointGroupsPages except
  1540  // it takes a Context and allows setting request options on the pages.
  1541  //
  1542  // The context must be non-nil and will be used for request cancellation. If
  1543  // the context is nil a panic will occur. In the future the SDK may create
  1544  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  1545  // for more information on using Contexts.
  1546  func (c *GroundStation) ListDataflowEndpointGroupsPagesWithContext(ctx aws.Context, input *ListDataflowEndpointGroupsInput, fn func(*ListDataflowEndpointGroupsOutput, bool) bool, opts ...request.Option) error {
  1547  	p := request.Pagination{
  1548  		NewRequest: func() (*request.Request, error) {
  1549  			var inCpy *ListDataflowEndpointGroupsInput
  1550  			if input != nil {
  1551  				tmp := *input
  1552  				inCpy = &tmp
  1553  			}
  1554  			req, _ := c.ListDataflowEndpointGroupsRequest(inCpy)
  1555  			req.SetContext(ctx)
  1556  			req.ApplyOptions(opts...)
  1557  			return req, nil
  1558  		},
  1559  	}
  1560  
  1561  	for p.Next() {
  1562  		if !fn(p.Page().(*ListDataflowEndpointGroupsOutput), !p.HasNextPage()) {
  1563  			break
  1564  		}
  1565  	}
  1566  
  1567  	return p.Err()
  1568  }
  1569  
  1570  const opListGroundStations = "ListGroundStations"
  1571  
  1572  // ListGroundStationsRequest generates a "aws/request.Request" representing the
  1573  // client's request for the ListGroundStations operation. The "output" return
  1574  // value will be populated with the request's response once the request completes
  1575  // successfully.
  1576  //
  1577  // Use "Send" method on the returned Request to send the API call to the service.
  1578  // the "output" return value is not valid until after Send returns without error.
  1579  //
  1580  // See ListGroundStations for more information on using the ListGroundStations
  1581  // API call, and error handling.
  1582  //
  1583  // This method is useful when you want to inject custom logic or configuration
  1584  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  1585  //
  1586  //
  1587  //    // Example sending a request using the ListGroundStationsRequest method.
  1588  //    req, resp := client.ListGroundStationsRequest(params)
  1589  //
  1590  //    err := req.Send()
  1591  //    if err == nil { // resp is now filled
  1592  //        fmt.Println(resp)
  1593  //    }
  1594  //
  1595  // See also, https://docs.aws.amazon.com/goto/WebAPI/groundstation-2019-05-23/ListGroundStations
  1596  func (c *GroundStation) ListGroundStationsRequest(input *ListGroundStationsInput) (req *request.Request, output *ListGroundStationsOutput) {
  1597  	op := &request.Operation{
  1598  		Name:       opListGroundStations,
  1599  		HTTPMethod: "GET",
  1600  		HTTPPath:   "/groundstation",
  1601  		Paginator: &request.Paginator{
  1602  			InputTokens:     []string{"nextToken"},
  1603  			OutputTokens:    []string{"nextToken"},
  1604  			LimitToken:      "maxResults",
  1605  			TruncationToken: "",
  1606  		},
  1607  	}
  1608  
  1609  	if input == nil {
  1610  		input = &ListGroundStationsInput{}
  1611  	}
  1612  
  1613  	output = &ListGroundStationsOutput{}
  1614  	req = c.newRequest(op, input, output)
  1615  	return
  1616  }
  1617  
  1618  // ListGroundStations API operation for AWS Ground Station.
  1619  //
  1620  // Returns a list of ground stations.
  1621  //
  1622  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  1623  // with awserr.Error's Code and Message methods to get detailed information about
  1624  // the error.
  1625  //
  1626  // See the AWS API reference guide for AWS Ground Station's
  1627  // API operation ListGroundStations for usage and error information.
  1628  //
  1629  // Returned Error Types:
  1630  //   * InvalidParameterException
  1631  //   One or more parameters are not valid.
  1632  //
  1633  //   * DependencyException
  1634  //   Dependency encountered an error.
  1635  //
  1636  //   * ResourceNotFoundException
  1637  //   Resource was not found.
  1638  //
  1639  // See also, https://docs.aws.amazon.com/goto/WebAPI/groundstation-2019-05-23/ListGroundStations
  1640  func (c *GroundStation) ListGroundStations(input *ListGroundStationsInput) (*ListGroundStationsOutput, error) {
  1641  	req, out := c.ListGroundStationsRequest(input)
  1642  	return out, req.Send()
  1643  }
  1644  
  1645  // ListGroundStationsWithContext is the same as ListGroundStations with the addition of
  1646  // the ability to pass a context and additional request options.
  1647  //
  1648  // See ListGroundStations for details on how to use this API operation.
  1649  //
  1650  // The context must be non-nil and will be used for request cancellation. If
  1651  // the context is nil a panic will occur. In the future the SDK may create
  1652  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  1653  // for more information on using Contexts.
  1654  func (c *GroundStation) ListGroundStationsWithContext(ctx aws.Context, input *ListGroundStationsInput, opts ...request.Option) (*ListGroundStationsOutput, error) {
  1655  	req, out := c.ListGroundStationsRequest(input)
  1656  	req.SetContext(ctx)
  1657  	req.ApplyOptions(opts...)
  1658  	return out, req.Send()
  1659  }
  1660  
  1661  // ListGroundStationsPages iterates over the pages of a ListGroundStations operation,
  1662  // calling the "fn" function with the response data for each page. To stop
  1663  // iterating, return false from the fn function.
  1664  //
  1665  // See ListGroundStations method for more information on how to use this operation.
  1666  //
  1667  // Note: This operation can generate multiple requests to a service.
  1668  //
  1669  //    // Example iterating over at most 3 pages of a ListGroundStations operation.
  1670  //    pageNum := 0
  1671  //    err := client.ListGroundStationsPages(params,
  1672  //        func(page *groundstation.ListGroundStationsOutput, lastPage bool) bool {
  1673  //            pageNum++
  1674  //            fmt.Println(page)
  1675  //            return pageNum <= 3
  1676  //        })
  1677  //
  1678  func (c *GroundStation) ListGroundStationsPages(input *ListGroundStationsInput, fn func(*ListGroundStationsOutput, bool) bool) error {
  1679  	return c.ListGroundStationsPagesWithContext(aws.BackgroundContext(), input, fn)
  1680  }
  1681  
  1682  // ListGroundStationsPagesWithContext same as ListGroundStationsPages except
  1683  // it takes a Context and allows setting request options on the pages.
  1684  //
  1685  // The context must be non-nil and will be used for request cancellation. If
  1686  // the context is nil a panic will occur. In the future the SDK may create
  1687  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  1688  // for more information on using Contexts.
  1689  func (c *GroundStation) ListGroundStationsPagesWithContext(ctx aws.Context, input *ListGroundStationsInput, fn func(*ListGroundStationsOutput, bool) bool, opts ...request.Option) error {
  1690  	p := request.Pagination{
  1691  		NewRequest: func() (*request.Request, error) {
  1692  			var inCpy *ListGroundStationsInput
  1693  			if input != nil {
  1694  				tmp := *input
  1695  				inCpy = &tmp
  1696  			}
  1697  			req, _ := c.ListGroundStationsRequest(inCpy)
  1698  			req.SetContext(ctx)
  1699  			req.ApplyOptions(opts...)
  1700  			return req, nil
  1701  		},
  1702  	}
  1703  
  1704  	for p.Next() {
  1705  		if !fn(p.Page().(*ListGroundStationsOutput), !p.HasNextPage()) {
  1706  			break
  1707  		}
  1708  	}
  1709  
  1710  	return p.Err()
  1711  }
  1712  
  1713  const opListMissionProfiles = "ListMissionProfiles"
  1714  
  1715  // ListMissionProfilesRequest generates a "aws/request.Request" representing the
  1716  // client's request for the ListMissionProfiles operation. The "output" return
  1717  // value will be populated with the request's response once the request completes
  1718  // successfully.
  1719  //
  1720  // Use "Send" method on the returned Request to send the API call to the service.
  1721  // the "output" return value is not valid until after Send returns without error.
  1722  //
  1723  // See ListMissionProfiles for more information on using the ListMissionProfiles
  1724  // API call, and error handling.
  1725  //
  1726  // This method is useful when you want to inject custom logic or configuration
  1727  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  1728  //
  1729  //
  1730  //    // Example sending a request using the ListMissionProfilesRequest method.
  1731  //    req, resp := client.ListMissionProfilesRequest(params)
  1732  //
  1733  //    err := req.Send()
  1734  //    if err == nil { // resp is now filled
  1735  //        fmt.Println(resp)
  1736  //    }
  1737  //
  1738  // See also, https://docs.aws.amazon.com/goto/WebAPI/groundstation-2019-05-23/ListMissionProfiles
  1739  func (c *GroundStation) ListMissionProfilesRequest(input *ListMissionProfilesInput) (req *request.Request, output *ListMissionProfilesOutput) {
  1740  	op := &request.Operation{
  1741  		Name:       opListMissionProfiles,
  1742  		HTTPMethod: "GET",
  1743  		HTTPPath:   "/missionprofile",
  1744  		Paginator: &request.Paginator{
  1745  			InputTokens:     []string{"nextToken"},
  1746  			OutputTokens:    []string{"nextToken"},
  1747  			LimitToken:      "maxResults",
  1748  			TruncationToken: "",
  1749  		},
  1750  	}
  1751  
  1752  	if input == nil {
  1753  		input = &ListMissionProfilesInput{}
  1754  	}
  1755  
  1756  	output = &ListMissionProfilesOutput{}
  1757  	req = c.newRequest(op, input, output)
  1758  	return
  1759  }
  1760  
  1761  // ListMissionProfiles API operation for AWS Ground Station.
  1762  //
  1763  // Returns a list of mission profiles.
  1764  //
  1765  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  1766  // with awserr.Error's Code and Message methods to get detailed information about
  1767  // the error.
  1768  //
  1769  // See the AWS API reference guide for AWS Ground Station's
  1770  // API operation ListMissionProfiles for usage and error information.
  1771  //
  1772  // Returned Error Types:
  1773  //   * InvalidParameterException
  1774  //   One or more parameters are not valid.
  1775  //
  1776  //   * DependencyException
  1777  //   Dependency encountered an error.
  1778  //
  1779  //   * ResourceNotFoundException
  1780  //   Resource was not found.
  1781  //
  1782  // See also, https://docs.aws.amazon.com/goto/WebAPI/groundstation-2019-05-23/ListMissionProfiles
  1783  func (c *GroundStation) ListMissionProfiles(input *ListMissionProfilesInput) (*ListMissionProfilesOutput, error) {
  1784  	req, out := c.ListMissionProfilesRequest(input)
  1785  	return out, req.Send()
  1786  }
  1787  
  1788  // ListMissionProfilesWithContext is the same as ListMissionProfiles with the addition of
  1789  // the ability to pass a context and additional request options.
  1790  //
  1791  // See ListMissionProfiles for details on how to use this API operation.
  1792  //
  1793  // The context must be non-nil and will be used for request cancellation. If
  1794  // the context is nil a panic will occur. In the future the SDK may create
  1795  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  1796  // for more information on using Contexts.
  1797  func (c *GroundStation) ListMissionProfilesWithContext(ctx aws.Context, input *ListMissionProfilesInput, opts ...request.Option) (*ListMissionProfilesOutput, error) {
  1798  	req, out := c.ListMissionProfilesRequest(input)
  1799  	req.SetContext(ctx)
  1800  	req.ApplyOptions(opts...)
  1801  	return out, req.Send()
  1802  }
  1803  
  1804  // ListMissionProfilesPages iterates over the pages of a ListMissionProfiles operation,
  1805  // calling the "fn" function with the response data for each page. To stop
  1806  // iterating, return false from the fn function.
  1807  //
  1808  // See ListMissionProfiles method for more information on how to use this operation.
  1809  //
  1810  // Note: This operation can generate multiple requests to a service.
  1811  //
  1812  //    // Example iterating over at most 3 pages of a ListMissionProfiles operation.
  1813  //    pageNum := 0
  1814  //    err := client.ListMissionProfilesPages(params,
  1815  //        func(page *groundstation.ListMissionProfilesOutput, lastPage bool) bool {
  1816  //            pageNum++
  1817  //            fmt.Println(page)
  1818  //            return pageNum <= 3
  1819  //        })
  1820  //
  1821  func (c *GroundStation) ListMissionProfilesPages(input *ListMissionProfilesInput, fn func(*ListMissionProfilesOutput, bool) bool) error {
  1822  	return c.ListMissionProfilesPagesWithContext(aws.BackgroundContext(), input, fn)
  1823  }
  1824  
  1825  // ListMissionProfilesPagesWithContext same as ListMissionProfilesPages except
  1826  // it takes a Context and allows setting request options on the pages.
  1827  //
  1828  // The context must be non-nil and will be used for request cancellation. If
  1829  // the context is nil a panic will occur. In the future the SDK may create
  1830  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  1831  // for more information on using Contexts.
  1832  func (c *GroundStation) ListMissionProfilesPagesWithContext(ctx aws.Context, input *ListMissionProfilesInput, fn func(*ListMissionProfilesOutput, bool) bool, opts ...request.Option) error {
  1833  	p := request.Pagination{
  1834  		NewRequest: func() (*request.Request, error) {
  1835  			var inCpy *ListMissionProfilesInput
  1836  			if input != nil {
  1837  				tmp := *input
  1838  				inCpy = &tmp
  1839  			}
  1840  			req, _ := c.ListMissionProfilesRequest(inCpy)
  1841  			req.SetContext(ctx)
  1842  			req.ApplyOptions(opts...)
  1843  			return req, nil
  1844  		},
  1845  	}
  1846  
  1847  	for p.Next() {
  1848  		if !fn(p.Page().(*ListMissionProfilesOutput), !p.HasNextPage()) {
  1849  			break
  1850  		}
  1851  	}
  1852  
  1853  	return p.Err()
  1854  }
  1855  
  1856  const opListSatellites = "ListSatellites"
  1857  
  1858  // ListSatellitesRequest generates a "aws/request.Request" representing the
  1859  // client's request for the ListSatellites operation. The "output" return
  1860  // value will be populated with the request's response once the request completes
  1861  // successfully.
  1862  //
  1863  // Use "Send" method on the returned Request to send the API call to the service.
  1864  // the "output" return value is not valid until after Send returns without error.
  1865  //
  1866  // See ListSatellites for more information on using the ListSatellites
  1867  // API call, and error handling.
  1868  //
  1869  // This method is useful when you want to inject custom logic or configuration
  1870  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  1871  //
  1872  //
  1873  //    // Example sending a request using the ListSatellitesRequest method.
  1874  //    req, resp := client.ListSatellitesRequest(params)
  1875  //
  1876  //    err := req.Send()
  1877  //    if err == nil { // resp is now filled
  1878  //        fmt.Println(resp)
  1879  //    }
  1880  //
  1881  // See also, https://docs.aws.amazon.com/goto/WebAPI/groundstation-2019-05-23/ListSatellites
  1882  func (c *GroundStation) ListSatellitesRequest(input *ListSatellitesInput) (req *request.Request, output *ListSatellitesOutput) {
  1883  	op := &request.Operation{
  1884  		Name:       opListSatellites,
  1885  		HTTPMethod: "GET",
  1886  		HTTPPath:   "/satellite",
  1887  		Paginator: &request.Paginator{
  1888  			InputTokens:     []string{"nextToken"},
  1889  			OutputTokens:    []string{"nextToken"},
  1890  			LimitToken:      "maxResults",
  1891  			TruncationToken: "",
  1892  		},
  1893  	}
  1894  
  1895  	if input == nil {
  1896  		input = &ListSatellitesInput{}
  1897  	}
  1898  
  1899  	output = &ListSatellitesOutput{}
  1900  	req = c.newRequest(op, input, output)
  1901  	return
  1902  }
  1903  
  1904  // ListSatellites API operation for AWS Ground Station.
  1905  //
  1906  // Returns a list of satellites.
  1907  //
  1908  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  1909  // with awserr.Error's Code and Message methods to get detailed information about
  1910  // the error.
  1911  //
  1912  // See the AWS API reference guide for AWS Ground Station's
  1913  // API operation ListSatellites for usage and error information.
  1914  //
  1915  // Returned Error Types:
  1916  //   * InvalidParameterException
  1917  //   One or more parameters are not valid.
  1918  //
  1919  //   * DependencyException
  1920  //   Dependency encountered an error.
  1921  //
  1922  //   * ResourceNotFoundException
  1923  //   Resource was not found.
  1924  //
  1925  // See also, https://docs.aws.amazon.com/goto/WebAPI/groundstation-2019-05-23/ListSatellites
  1926  func (c *GroundStation) ListSatellites(input *ListSatellitesInput) (*ListSatellitesOutput, error) {
  1927  	req, out := c.ListSatellitesRequest(input)
  1928  	return out, req.Send()
  1929  }
  1930  
  1931  // ListSatellitesWithContext is the same as ListSatellites with the addition of
  1932  // the ability to pass a context and additional request options.
  1933  //
  1934  // See ListSatellites for details on how to use this API operation.
  1935  //
  1936  // The context must be non-nil and will be used for request cancellation. If
  1937  // the context is nil a panic will occur. In the future the SDK may create
  1938  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  1939  // for more information on using Contexts.
  1940  func (c *GroundStation) ListSatellitesWithContext(ctx aws.Context, input *ListSatellitesInput, opts ...request.Option) (*ListSatellitesOutput, error) {
  1941  	req, out := c.ListSatellitesRequest(input)
  1942  	req.SetContext(ctx)
  1943  	req.ApplyOptions(opts...)
  1944  	return out, req.Send()
  1945  }
  1946  
  1947  // ListSatellitesPages iterates over the pages of a ListSatellites operation,
  1948  // calling the "fn" function with the response data for each page. To stop
  1949  // iterating, return false from the fn function.
  1950  //
  1951  // See ListSatellites method for more information on how to use this operation.
  1952  //
  1953  // Note: This operation can generate multiple requests to a service.
  1954  //
  1955  //    // Example iterating over at most 3 pages of a ListSatellites operation.
  1956  //    pageNum := 0
  1957  //    err := client.ListSatellitesPages(params,
  1958  //        func(page *groundstation.ListSatellitesOutput, lastPage bool) bool {
  1959  //            pageNum++
  1960  //            fmt.Println(page)
  1961  //            return pageNum <= 3
  1962  //        })
  1963  //
  1964  func (c *GroundStation) ListSatellitesPages(input *ListSatellitesInput, fn func(*ListSatellitesOutput, bool) bool) error {
  1965  	return c.ListSatellitesPagesWithContext(aws.BackgroundContext(), input, fn)
  1966  }
  1967  
  1968  // ListSatellitesPagesWithContext same as ListSatellitesPages except
  1969  // it takes a Context and allows setting request options on the pages.
  1970  //
  1971  // The context must be non-nil and will be used for request cancellation. If
  1972  // the context is nil a panic will occur. In the future the SDK may create
  1973  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  1974  // for more information on using Contexts.
  1975  func (c *GroundStation) ListSatellitesPagesWithContext(ctx aws.Context, input *ListSatellitesInput, fn func(*ListSatellitesOutput, bool) bool, opts ...request.Option) error {
  1976  	p := request.Pagination{
  1977  		NewRequest: func() (*request.Request, error) {
  1978  			var inCpy *ListSatellitesInput
  1979  			if input != nil {
  1980  				tmp := *input
  1981  				inCpy = &tmp
  1982  			}
  1983  			req, _ := c.ListSatellitesRequest(inCpy)
  1984  			req.SetContext(ctx)
  1985  			req.ApplyOptions(opts...)
  1986  			return req, nil
  1987  		},
  1988  	}
  1989  
  1990  	for p.Next() {
  1991  		if !fn(p.Page().(*ListSatellitesOutput), !p.HasNextPage()) {
  1992  			break
  1993  		}
  1994  	}
  1995  
  1996  	return p.Err()
  1997  }
  1998  
  1999  const opListTagsForResource = "ListTagsForResource"
  2000  
  2001  // ListTagsForResourceRequest generates a "aws/request.Request" representing the
  2002  // client's request for the ListTagsForResource operation. The "output" return
  2003  // value will be populated with the request's response once the request completes
  2004  // successfully.
  2005  //
  2006  // Use "Send" method on the returned Request to send the API call to the service.
  2007  // the "output" return value is not valid until after Send returns without error.
  2008  //
  2009  // See ListTagsForResource for more information on using the ListTagsForResource
  2010  // API call, and error handling.
  2011  //
  2012  // This method is useful when you want to inject custom logic or configuration
  2013  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  2014  //
  2015  //
  2016  //    // Example sending a request using the ListTagsForResourceRequest method.
  2017  //    req, resp := client.ListTagsForResourceRequest(params)
  2018  //
  2019  //    err := req.Send()
  2020  //    if err == nil { // resp is now filled
  2021  //        fmt.Println(resp)
  2022  //    }
  2023  //
  2024  // See also, https://docs.aws.amazon.com/goto/WebAPI/groundstation-2019-05-23/ListTagsForResource
  2025  func (c *GroundStation) ListTagsForResourceRequest(input *ListTagsForResourceInput) (req *request.Request, output *ListTagsForResourceOutput) {
  2026  	op := &request.Operation{
  2027  		Name:       opListTagsForResource,
  2028  		HTTPMethod: "GET",
  2029  		HTTPPath:   "/tags/{resourceArn}",
  2030  	}
  2031  
  2032  	if input == nil {
  2033  		input = &ListTagsForResourceInput{}
  2034  	}
  2035  
  2036  	output = &ListTagsForResourceOutput{}
  2037  	req = c.newRequest(op, input, output)
  2038  	return
  2039  }
  2040  
  2041  // ListTagsForResource API operation for AWS Ground Station.
  2042  //
  2043  // Returns a list of tags for a specified resource.
  2044  //
  2045  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  2046  // with awserr.Error's Code and Message methods to get detailed information about
  2047  // the error.
  2048  //
  2049  // See the AWS API reference guide for AWS Ground Station's
  2050  // API operation ListTagsForResource for usage and error information.
  2051  //
  2052  // Returned Error Types:
  2053  //   * InvalidParameterException
  2054  //   One or more parameters are not valid.
  2055  //
  2056  //   * DependencyException
  2057  //   Dependency encountered an error.
  2058  //
  2059  //   * ResourceNotFoundException
  2060  //   Resource was not found.
  2061  //
  2062  // See also, https://docs.aws.amazon.com/goto/WebAPI/groundstation-2019-05-23/ListTagsForResource
  2063  func (c *GroundStation) ListTagsForResource(input *ListTagsForResourceInput) (*ListTagsForResourceOutput, error) {
  2064  	req, out := c.ListTagsForResourceRequest(input)
  2065  	return out, req.Send()
  2066  }
  2067  
  2068  // ListTagsForResourceWithContext is the same as ListTagsForResource with the addition of
  2069  // the ability to pass a context and additional request options.
  2070  //
  2071  // See ListTagsForResource for details on how to use this API operation.
  2072  //
  2073  // The context must be non-nil and will be used for request cancellation. If
  2074  // the context is nil a panic will occur. In the future the SDK may create
  2075  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  2076  // for more information on using Contexts.
  2077  func (c *GroundStation) ListTagsForResourceWithContext(ctx aws.Context, input *ListTagsForResourceInput, opts ...request.Option) (*ListTagsForResourceOutput, error) {
  2078  	req, out := c.ListTagsForResourceRequest(input)
  2079  	req.SetContext(ctx)
  2080  	req.ApplyOptions(opts...)
  2081  	return out, req.Send()
  2082  }
  2083  
  2084  const opReserveContact = "ReserveContact"
  2085  
  2086  // ReserveContactRequest generates a "aws/request.Request" representing the
  2087  // client's request for the ReserveContact operation. The "output" return
  2088  // value will be populated with the request's response once the request completes
  2089  // successfully.
  2090  //
  2091  // Use "Send" method on the returned Request to send the API call to the service.
  2092  // the "output" return value is not valid until after Send returns without error.
  2093  //
  2094  // See ReserveContact for more information on using the ReserveContact
  2095  // API call, and error handling.
  2096  //
  2097  // This method is useful when you want to inject custom logic or configuration
  2098  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  2099  //
  2100  //
  2101  //    // Example sending a request using the ReserveContactRequest method.
  2102  //    req, resp := client.ReserveContactRequest(params)
  2103  //
  2104  //    err := req.Send()
  2105  //    if err == nil { // resp is now filled
  2106  //        fmt.Println(resp)
  2107  //    }
  2108  //
  2109  // See also, https://docs.aws.amazon.com/goto/WebAPI/groundstation-2019-05-23/ReserveContact
  2110  func (c *GroundStation) ReserveContactRequest(input *ReserveContactInput) (req *request.Request, output *ReserveContactOutput) {
  2111  	op := &request.Operation{
  2112  		Name:       opReserveContact,
  2113  		HTTPMethod: "POST",
  2114  		HTTPPath:   "/contact",
  2115  	}
  2116  
  2117  	if input == nil {
  2118  		input = &ReserveContactInput{}
  2119  	}
  2120  
  2121  	output = &ReserveContactOutput{}
  2122  	req = c.newRequest(op, input, output)
  2123  	return
  2124  }
  2125  
  2126  // ReserveContact API operation for AWS Ground Station.
  2127  //
  2128  // Reserves a contact using specified parameters.
  2129  //
  2130  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  2131  // with awserr.Error's Code and Message methods to get detailed information about
  2132  // the error.
  2133  //
  2134  // See the AWS API reference guide for AWS Ground Station's
  2135  // API operation ReserveContact for usage and error information.
  2136  //
  2137  // Returned Error Types:
  2138  //   * InvalidParameterException
  2139  //   One or more parameters are not valid.
  2140  //
  2141  //   * DependencyException
  2142  //   Dependency encountered an error.
  2143  //
  2144  //   * ResourceNotFoundException
  2145  //   Resource was not found.
  2146  //
  2147  // See also, https://docs.aws.amazon.com/goto/WebAPI/groundstation-2019-05-23/ReserveContact
  2148  func (c *GroundStation) ReserveContact(input *ReserveContactInput) (*ReserveContactOutput, error) {
  2149  	req, out := c.ReserveContactRequest(input)
  2150  	return out, req.Send()
  2151  }
  2152  
  2153  // ReserveContactWithContext is the same as ReserveContact with the addition of
  2154  // the ability to pass a context and additional request options.
  2155  //
  2156  // See ReserveContact for details on how to use this API operation.
  2157  //
  2158  // The context must be non-nil and will be used for request cancellation. If
  2159  // the context is nil a panic will occur. In the future the SDK may create
  2160  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  2161  // for more information on using Contexts.
  2162  func (c *GroundStation) ReserveContactWithContext(ctx aws.Context, input *ReserveContactInput, opts ...request.Option) (*ReserveContactOutput, error) {
  2163  	req, out := c.ReserveContactRequest(input)
  2164  	req.SetContext(ctx)
  2165  	req.ApplyOptions(opts...)
  2166  	return out, req.Send()
  2167  }
  2168  
  2169  const opTagResource = "TagResource"
  2170  
  2171  // TagResourceRequest generates a "aws/request.Request" representing the
  2172  // client's request for the TagResource operation. The "output" return
  2173  // value will be populated with the request's response once the request completes
  2174  // successfully.
  2175  //
  2176  // Use "Send" method on the returned Request to send the API call to the service.
  2177  // the "output" return value is not valid until after Send returns without error.
  2178  //
  2179  // See TagResource for more information on using the TagResource
  2180  // API call, and error handling.
  2181  //
  2182  // This method is useful when you want to inject custom logic or configuration
  2183  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  2184  //
  2185  //
  2186  //    // Example sending a request using the TagResourceRequest method.
  2187  //    req, resp := client.TagResourceRequest(params)
  2188  //
  2189  //    err := req.Send()
  2190  //    if err == nil { // resp is now filled
  2191  //        fmt.Println(resp)
  2192  //    }
  2193  //
  2194  // See also, https://docs.aws.amazon.com/goto/WebAPI/groundstation-2019-05-23/TagResource
  2195  func (c *GroundStation) TagResourceRequest(input *TagResourceInput) (req *request.Request, output *TagResourceOutput) {
  2196  	op := &request.Operation{
  2197  		Name:       opTagResource,
  2198  		HTTPMethod: "POST",
  2199  		HTTPPath:   "/tags/{resourceArn}",
  2200  	}
  2201  
  2202  	if input == nil {
  2203  		input = &TagResourceInput{}
  2204  	}
  2205  
  2206  	output = &TagResourceOutput{}
  2207  	req = c.newRequest(op, input, output)
  2208  	req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
  2209  	return
  2210  }
  2211  
  2212  // TagResource API operation for AWS Ground Station.
  2213  //
  2214  // Assigns a tag to a resource.
  2215  //
  2216  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  2217  // with awserr.Error's Code and Message methods to get detailed information about
  2218  // the error.
  2219  //
  2220  // See the AWS API reference guide for AWS Ground Station's
  2221  // API operation TagResource for usage and error information.
  2222  //
  2223  // Returned Error Types:
  2224  //   * InvalidParameterException
  2225  //   One or more parameters are not valid.
  2226  //
  2227  //   * DependencyException
  2228  //   Dependency encountered an error.
  2229  //
  2230  //   * ResourceNotFoundException
  2231  //   Resource was not found.
  2232  //
  2233  // See also, https://docs.aws.amazon.com/goto/WebAPI/groundstation-2019-05-23/TagResource
  2234  func (c *GroundStation) TagResource(input *TagResourceInput) (*TagResourceOutput, error) {
  2235  	req, out := c.TagResourceRequest(input)
  2236  	return out, req.Send()
  2237  }
  2238  
  2239  // TagResourceWithContext is the same as TagResource with the addition of
  2240  // the ability to pass a context and additional request options.
  2241  //
  2242  // See TagResource for details on how to use this API operation.
  2243  //
  2244  // The context must be non-nil and will be used for request cancellation. If
  2245  // the context is nil a panic will occur. In the future the SDK may create
  2246  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  2247  // for more information on using Contexts.
  2248  func (c *GroundStation) TagResourceWithContext(ctx aws.Context, input *TagResourceInput, opts ...request.Option) (*TagResourceOutput, error) {
  2249  	req, out := c.TagResourceRequest(input)
  2250  	req.SetContext(ctx)
  2251  	req.ApplyOptions(opts...)
  2252  	return out, req.Send()
  2253  }
  2254  
  2255  const opUntagResource = "UntagResource"
  2256  
  2257  // UntagResourceRequest generates a "aws/request.Request" representing the
  2258  // client's request for the UntagResource operation. The "output" return
  2259  // value will be populated with the request's response once the request completes
  2260  // successfully.
  2261  //
  2262  // Use "Send" method on the returned Request to send the API call to the service.
  2263  // the "output" return value is not valid until after Send returns without error.
  2264  //
  2265  // See UntagResource for more information on using the UntagResource
  2266  // API call, and error handling.
  2267  //
  2268  // This method is useful when you want to inject custom logic or configuration
  2269  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  2270  //
  2271  //
  2272  //    // Example sending a request using the UntagResourceRequest method.
  2273  //    req, resp := client.UntagResourceRequest(params)
  2274  //
  2275  //    err := req.Send()
  2276  //    if err == nil { // resp is now filled
  2277  //        fmt.Println(resp)
  2278  //    }
  2279  //
  2280  // See also, https://docs.aws.amazon.com/goto/WebAPI/groundstation-2019-05-23/UntagResource
  2281  func (c *GroundStation) UntagResourceRequest(input *UntagResourceInput) (req *request.Request, output *UntagResourceOutput) {
  2282  	op := &request.Operation{
  2283  		Name:       opUntagResource,
  2284  		HTTPMethod: "DELETE",
  2285  		HTTPPath:   "/tags/{resourceArn}",
  2286  	}
  2287  
  2288  	if input == nil {
  2289  		input = &UntagResourceInput{}
  2290  	}
  2291  
  2292  	output = &UntagResourceOutput{}
  2293  	req = c.newRequest(op, input, output)
  2294  	req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
  2295  	return
  2296  }
  2297  
  2298  // UntagResource API operation for AWS Ground Station.
  2299  //
  2300  // Deassigns a resource tag.
  2301  //
  2302  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  2303  // with awserr.Error's Code and Message methods to get detailed information about
  2304  // the error.
  2305  //
  2306  // See the AWS API reference guide for AWS Ground Station's
  2307  // API operation UntagResource for usage and error information.
  2308  //
  2309  // Returned Error Types:
  2310  //   * InvalidParameterException
  2311  //   One or more parameters are not valid.
  2312  //
  2313  //   * DependencyException
  2314  //   Dependency encountered an error.
  2315  //
  2316  //   * ResourceNotFoundException
  2317  //   Resource was not found.
  2318  //
  2319  // See also, https://docs.aws.amazon.com/goto/WebAPI/groundstation-2019-05-23/UntagResource
  2320  func (c *GroundStation) UntagResource(input *UntagResourceInput) (*UntagResourceOutput, error) {
  2321  	req, out := c.UntagResourceRequest(input)
  2322  	return out, req.Send()
  2323  }
  2324  
  2325  // UntagResourceWithContext is the same as UntagResource with the addition of
  2326  // the ability to pass a context and additional request options.
  2327  //
  2328  // See UntagResource for details on how to use this API operation.
  2329  //
  2330  // The context must be non-nil and will be used for request cancellation. If
  2331  // the context is nil a panic will occur. In the future the SDK may create
  2332  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  2333  // for more information on using Contexts.
  2334  func (c *GroundStation) UntagResourceWithContext(ctx aws.Context, input *UntagResourceInput, opts ...request.Option) (*UntagResourceOutput, error) {
  2335  	req, out := c.UntagResourceRequest(input)
  2336  	req.SetContext(ctx)
  2337  	req.ApplyOptions(opts...)
  2338  	return out, req.Send()
  2339  }
  2340  
  2341  const opUpdateConfig = "UpdateConfig"
  2342  
  2343  // UpdateConfigRequest generates a "aws/request.Request" representing the
  2344  // client's request for the UpdateConfig operation. The "output" return
  2345  // value will be populated with the request's response once the request completes
  2346  // successfully.
  2347  //
  2348  // Use "Send" method on the returned Request to send the API call to the service.
  2349  // the "output" return value is not valid until after Send returns without error.
  2350  //
  2351  // See UpdateConfig for more information on using the UpdateConfig
  2352  // API call, and error handling.
  2353  //
  2354  // This method is useful when you want to inject custom logic or configuration
  2355  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  2356  //
  2357  //
  2358  //    // Example sending a request using the UpdateConfigRequest method.
  2359  //    req, resp := client.UpdateConfigRequest(params)
  2360  //
  2361  //    err := req.Send()
  2362  //    if err == nil { // resp is now filled
  2363  //        fmt.Println(resp)
  2364  //    }
  2365  //
  2366  // See also, https://docs.aws.amazon.com/goto/WebAPI/groundstation-2019-05-23/UpdateConfig
  2367  func (c *GroundStation) UpdateConfigRequest(input *UpdateConfigInput) (req *request.Request, output *UpdateConfigOutput) {
  2368  	op := &request.Operation{
  2369  		Name:       opUpdateConfig,
  2370  		HTTPMethod: "PUT",
  2371  		HTTPPath:   "/config/{configType}/{configId}",
  2372  	}
  2373  
  2374  	if input == nil {
  2375  		input = &UpdateConfigInput{}
  2376  	}
  2377  
  2378  	output = &UpdateConfigOutput{}
  2379  	req = c.newRequest(op, input, output)
  2380  	return
  2381  }
  2382  
  2383  // UpdateConfig API operation for AWS Ground Station.
  2384  //
  2385  // Updates the Config used when scheduling contacts.
  2386  //
  2387  // Updating a Config will not update the execution parameters for existing future
  2388  // contacts scheduled with this Config.
  2389  //
  2390  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  2391  // with awserr.Error's Code and Message methods to get detailed information about
  2392  // the error.
  2393  //
  2394  // See the AWS API reference guide for AWS Ground Station's
  2395  // API operation UpdateConfig for usage and error information.
  2396  //
  2397  // Returned Error Types:
  2398  //   * InvalidParameterException
  2399  //   One or more parameters are not valid.
  2400  //
  2401  //   * DependencyException
  2402  //   Dependency encountered an error.
  2403  //
  2404  //   * ResourceNotFoundException
  2405  //   Resource was not found.
  2406  //
  2407  // See also, https://docs.aws.amazon.com/goto/WebAPI/groundstation-2019-05-23/UpdateConfig
  2408  func (c *GroundStation) UpdateConfig(input *UpdateConfigInput) (*UpdateConfigOutput, error) {
  2409  	req, out := c.UpdateConfigRequest(input)
  2410  	return out, req.Send()
  2411  }
  2412  
  2413  // UpdateConfigWithContext is the same as UpdateConfig with the addition of
  2414  // the ability to pass a context and additional request options.
  2415  //
  2416  // See UpdateConfig for details on how to use this API operation.
  2417  //
  2418  // The context must be non-nil and will be used for request cancellation. If
  2419  // the context is nil a panic will occur. In the future the SDK may create
  2420  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  2421  // for more information on using Contexts.
  2422  func (c *GroundStation) UpdateConfigWithContext(ctx aws.Context, input *UpdateConfigInput, opts ...request.Option) (*UpdateConfigOutput, error) {
  2423  	req, out := c.UpdateConfigRequest(input)
  2424  	req.SetContext(ctx)
  2425  	req.ApplyOptions(opts...)
  2426  	return out, req.Send()
  2427  }
  2428  
  2429  const opUpdateMissionProfile = "UpdateMissionProfile"
  2430  
  2431  // UpdateMissionProfileRequest generates a "aws/request.Request" representing the
  2432  // client's request for the UpdateMissionProfile operation. The "output" return
  2433  // value will be populated with the request's response once the request completes
  2434  // successfully.
  2435  //
  2436  // Use "Send" method on the returned Request to send the API call to the service.
  2437  // the "output" return value is not valid until after Send returns without error.
  2438  //
  2439  // See UpdateMissionProfile for more information on using the UpdateMissionProfile
  2440  // API call, and error handling.
  2441  //
  2442  // This method is useful when you want to inject custom logic or configuration
  2443  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  2444  //
  2445  //
  2446  //    // Example sending a request using the UpdateMissionProfileRequest method.
  2447  //    req, resp := client.UpdateMissionProfileRequest(params)
  2448  //
  2449  //    err := req.Send()
  2450  //    if err == nil { // resp is now filled
  2451  //        fmt.Println(resp)
  2452  //    }
  2453  //
  2454  // See also, https://docs.aws.amazon.com/goto/WebAPI/groundstation-2019-05-23/UpdateMissionProfile
  2455  func (c *GroundStation) UpdateMissionProfileRequest(input *UpdateMissionProfileInput) (req *request.Request, output *UpdateMissionProfileOutput) {
  2456  	op := &request.Operation{
  2457  		Name:       opUpdateMissionProfile,
  2458  		HTTPMethod: "PUT",
  2459  		HTTPPath:   "/missionprofile/{missionProfileId}",
  2460  	}
  2461  
  2462  	if input == nil {
  2463  		input = &UpdateMissionProfileInput{}
  2464  	}
  2465  
  2466  	output = &UpdateMissionProfileOutput{}
  2467  	req = c.newRequest(op, input, output)
  2468  	return
  2469  }
  2470  
  2471  // UpdateMissionProfile API operation for AWS Ground Station.
  2472  //
  2473  // Updates a mission profile.
  2474  //
  2475  // Updating a mission profile will not update the execution parameters for existing
  2476  // future contacts.
  2477  //
  2478  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  2479  // with awserr.Error's Code and Message methods to get detailed information about
  2480  // the error.
  2481  //
  2482  // See the AWS API reference guide for AWS Ground Station's
  2483  // API operation UpdateMissionProfile for usage and error information.
  2484  //
  2485  // Returned Error Types:
  2486  //   * InvalidParameterException
  2487  //   One or more parameters are not valid.
  2488  //
  2489  //   * DependencyException
  2490  //   Dependency encountered an error.
  2491  //
  2492  //   * ResourceNotFoundException
  2493  //   Resource was not found.
  2494  //
  2495  // See also, https://docs.aws.amazon.com/goto/WebAPI/groundstation-2019-05-23/UpdateMissionProfile
  2496  func (c *GroundStation) UpdateMissionProfile(input *UpdateMissionProfileInput) (*UpdateMissionProfileOutput, error) {
  2497  	req, out := c.UpdateMissionProfileRequest(input)
  2498  	return out, req.Send()
  2499  }
  2500  
  2501  // UpdateMissionProfileWithContext is the same as UpdateMissionProfile with the addition of
  2502  // the ability to pass a context and additional request options.
  2503  //
  2504  // See UpdateMissionProfile for details on how to use this API operation.
  2505  //
  2506  // The context must be non-nil and will be used for request cancellation. If
  2507  // the context is nil a panic will occur. In the future the SDK may create
  2508  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  2509  // for more information on using Contexts.
  2510  func (c *GroundStation) UpdateMissionProfileWithContext(ctx aws.Context, input *UpdateMissionProfileInput, opts ...request.Option) (*UpdateMissionProfileOutput, error) {
  2511  	req, out := c.UpdateMissionProfileRequest(input)
  2512  	req.SetContext(ctx)
  2513  	req.ApplyOptions(opts...)
  2514  	return out, req.Send()
  2515  }
  2516  
  2517  // Details about an antenna demod decode Config used in a contact.
  2518  type AntennaDemodDecodeDetails struct {
  2519  	_ struct{} `type:"structure"`
  2520  
  2521  	// Name of an antenna demod decode output node used in a contact.
  2522  	OutputNode *string `locationName:"outputNode" type:"string"`
  2523  }
  2524  
  2525  // String returns the string representation.
  2526  //
  2527  // API parameter values that are decorated as "sensitive" in the API will not
  2528  // be included in the string output. The member name will be present, but the
  2529  // value will be replaced with "sensitive".
  2530  func (s AntennaDemodDecodeDetails) String() string {
  2531  	return awsutil.Prettify(s)
  2532  }
  2533  
  2534  // GoString returns the string representation.
  2535  //
  2536  // API parameter values that are decorated as "sensitive" in the API will not
  2537  // be included in the string output. The member name will be present, but the
  2538  // value will be replaced with "sensitive".
  2539  func (s AntennaDemodDecodeDetails) GoString() string {
  2540  	return s.String()
  2541  }
  2542  
  2543  // SetOutputNode sets the OutputNode field's value.
  2544  func (s *AntennaDemodDecodeDetails) SetOutputNode(v string) *AntennaDemodDecodeDetails {
  2545  	s.OutputNode = &v
  2546  	return s
  2547  }
  2548  
  2549  // Information about how AWS Ground Station should configure an antenna for
  2550  // downlink during a contact.
  2551  type AntennaDownlinkConfig struct {
  2552  	_ struct{} `type:"structure"`
  2553  
  2554  	// Object that describes a spectral Config.
  2555  	//
  2556  	// SpectrumConfig is a required field
  2557  	SpectrumConfig *SpectrumConfig `locationName:"spectrumConfig" type:"structure" required:"true"`
  2558  }
  2559  
  2560  // String returns the string representation.
  2561  //
  2562  // API parameter values that are decorated as "sensitive" in the API will not
  2563  // be included in the string output. The member name will be present, but the
  2564  // value will be replaced with "sensitive".
  2565  func (s AntennaDownlinkConfig) String() string {
  2566  	return awsutil.Prettify(s)
  2567  }
  2568  
  2569  // GoString returns the string representation.
  2570  //
  2571  // API parameter values that are decorated as "sensitive" in the API will not
  2572  // be included in the string output. The member name will be present, but the
  2573  // value will be replaced with "sensitive".
  2574  func (s AntennaDownlinkConfig) GoString() string {
  2575  	return s.String()
  2576  }
  2577  
  2578  // Validate inspects the fields of the type to determine if they are valid.
  2579  func (s *AntennaDownlinkConfig) Validate() error {
  2580  	invalidParams := request.ErrInvalidParams{Context: "AntennaDownlinkConfig"}
  2581  	if s.SpectrumConfig == nil {
  2582  		invalidParams.Add(request.NewErrParamRequired("SpectrumConfig"))
  2583  	}
  2584  	if s.SpectrumConfig != nil {
  2585  		if err := s.SpectrumConfig.Validate(); err != nil {
  2586  			invalidParams.AddNested("SpectrumConfig", err.(request.ErrInvalidParams))
  2587  		}
  2588  	}
  2589  
  2590  	if invalidParams.Len() > 0 {
  2591  		return invalidParams
  2592  	}
  2593  	return nil
  2594  }
  2595  
  2596  // SetSpectrumConfig sets the SpectrumConfig field's value.
  2597  func (s *AntennaDownlinkConfig) SetSpectrumConfig(v *SpectrumConfig) *AntennaDownlinkConfig {
  2598  	s.SpectrumConfig = v
  2599  	return s
  2600  }
  2601  
  2602  // Information about how AWS Ground Station should configure an antenna for
  2603  // downlink demod decode during a contact.
  2604  type AntennaDownlinkDemodDecodeConfig struct {
  2605  	_ struct{} `type:"structure"`
  2606  
  2607  	// Information about the decode Config.
  2608  	//
  2609  	// DecodeConfig is a required field
  2610  	DecodeConfig *DecodeConfig `locationName:"decodeConfig" type:"structure" required:"true"`
  2611  
  2612  	// Information about the demodulation Config.
  2613  	//
  2614  	// DemodulationConfig is a required field
  2615  	DemodulationConfig *DemodulationConfig `locationName:"demodulationConfig" type:"structure" required:"true"`
  2616  
  2617  	// Information about the spectral Config.
  2618  	//
  2619  	// SpectrumConfig is a required field
  2620  	SpectrumConfig *SpectrumConfig `locationName:"spectrumConfig" type:"structure" required:"true"`
  2621  }
  2622  
  2623  // String returns the string representation.
  2624  //
  2625  // API parameter values that are decorated as "sensitive" in the API will not
  2626  // be included in the string output. The member name will be present, but the
  2627  // value will be replaced with "sensitive".
  2628  func (s AntennaDownlinkDemodDecodeConfig) String() string {
  2629  	return awsutil.Prettify(s)
  2630  }
  2631  
  2632  // GoString returns the string representation.
  2633  //
  2634  // API parameter values that are decorated as "sensitive" in the API will not
  2635  // be included in the string output. The member name will be present, but the
  2636  // value will be replaced with "sensitive".
  2637  func (s AntennaDownlinkDemodDecodeConfig) GoString() string {
  2638  	return s.String()
  2639  }
  2640  
  2641  // Validate inspects the fields of the type to determine if they are valid.
  2642  func (s *AntennaDownlinkDemodDecodeConfig) Validate() error {
  2643  	invalidParams := request.ErrInvalidParams{Context: "AntennaDownlinkDemodDecodeConfig"}
  2644  	if s.DecodeConfig == nil {
  2645  		invalidParams.Add(request.NewErrParamRequired("DecodeConfig"))
  2646  	}
  2647  	if s.DemodulationConfig == nil {
  2648  		invalidParams.Add(request.NewErrParamRequired("DemodulationConfig"))
  2649  	}
  2650  	if s.SpectrumConfig == nil {
  2651  		invalidParams.Add(request.NewErrParamRequired("SpectrumConfig"))
  2652  	}
  2653  	if s.DecodeConfig != nil {
  2654  		if err := s.DecodeConfig.Validate(); err != nil {
  2655  			invalidParams.AddNested("DecodeConfig", err.(request.ErrInvalidParams))
  2656  		}
  2657  	}
  2658  	if s.DemodulationConfig != nil {
  2659  		if err := s.DemodulationConfig.Validate(); err != nil {
  2660  			invalidParams.AddNested("DemodulationConfig", err.(request.ErrInvalidParams))
  2661  		}
  2662  	}
  2663  	if s.SpectrumConfig != nil {
  2664  		if err := s.SpectrumConfig.Validate(); err != nil {
  2665  			invalidParams.AddNested("SpectrumConfig", err.(request.ErrInvalidParams))
  2666  		}
  2667  	}
  2668  
  2669  	if invalidParams.Len() > 0 {
  2670  		return invalidParams
  2671  	}
  2672  	return nil
  2673  }
  2674  
  2675  // SetDecodeConfig sets the DecodeConfig field's value.
  2676  func (s *AntennaDownlinkDemodDecodeConfig) SetDecodeConfig(v *DecodeConfig) *AntennaDownlinkDemodDecodeConfig {
  2677  	s.DecodeConfig = v
  2678  	return s
  2679  }
  2680  
  2681  // SetDemodulationConfig sets the DemodulationConfig field's value.
  2682  func (s *AntennaDownlinkDemodDecodeConfig) SetDemodulationConfig(v *DemodulationConfig) *AntennaDownlinkDemodDecodeConfig {
  2683  	s.DemodulationConfig = v
  2684  	return s
  2685  }
  2686  
  2687  // SetSpectrumConfig sets the SpectrumConfig field's value.
  2688  func (s *AntennaDownlinkDemodDecodeConfig) SetSpectrumConfig(v *SpectrumConfig) *AntennaDownlinkDemodDecodeConfig {
  2689  	s.SpectrumConfig = v
  2690  	return s
  2691  }
  2692  
  2693  // Information about the uplink Config of an antenna.
  2694  type AntennaUplinkConfig struct {
  2695  	_ struct{} `type:"structure"`
  2696  
  2697  	// Information about the uplink spectral Config.
  2698  	//
  2699  	// SpectrumConfig is a required field
  2700  	SpectrumConfig *UplinkSpectrumConfig `locationName:"spectrumConfig" type:"structure" required:"true"`
  2701  
  2702  	// EIRP of the target.
  2703  	//
  2704  	// TargetEirp is a required field
  2705  	TargetEirp *Eirp `locationName:"targetEirp" type:"structure" required:"true"`
  2706  
  2707  	// Whether or not uplink transmit is disabled.
  2708  	TransmitDisabled *bool `locationName:"transmitDisabled" type:"boolean"`
  2709  }
  2710  
  2711  // String returns the string representation.
  2712  //
  2713  // API parameter values that are decorated as "sensitive" in the API will not
  2714  // be included in the string output. The member name will be present, but the
  2715  // value will be replaced with "sensitive".
  2716  func (s AntennaUplinkConfig) String() string {
  2717  	return awsutil.Prettify(s)
  2718  }
  2719  
  2720  // GoString returns the string representation.
  2721  //
  2722  // API parameter values that are decorated as "sensitive" in the API will not
  2723  // be included in the string output. The member name will be present, but the
  2724  // value will be replaced with "sensitive".
  2725  func (s AntennaUplinkConfig) GoString() string {
  2726  	return s.String()
  2727  }
  2728  
  2729  // Validate inspects the fields of the type to determine if they are valid.
  2730  func (s *AntennaUplinkConfig) Validate() error {
  2731  	invalidParams := request.ErrInvalidParams{Context: "AntennaUplinkConfig"}
  2732  	if s.SpectrumConfig == nil {
  2733  		invalidParams.Add(request.NewErrParamRequired("SpectrumConfig"))
  2734  	}
  2735  	if s.TargetEirp == nil {
  2736  		invalidParams.Add(request.NewErrParamRequired("TargetEirp"))
  2737  	}
  2738  	if s.SpectrumConfig != nil {
  2739  		if err := s.SpectrumConfig.Validate(); err != nil {
  2740  			invalidParams.AddNested("SpectrumConfig", err.(request.ErrInvalidParams))
  2741  		}
  2742  	}
  2743  	if s.TargetEirp != nil {
  2744  		if err := s.TargetEirp.Validate(); err != nil {
  2745  			invalidParams.AddNested("TargetEirp", err.(request.ErrInvalidParams))
  2746  		}
  2747  	}
  2748  
  2749  	if invalidParams.Len() > 0 {
  2750  		return invalidParams
  2751  	}
  2752  	return nil
  2753  }
  2754  
  2755  // SetSpectrumConfig sets the SpectrumConfig field's value.
  2756  func (s *AntennaUplinkConfig) SetSpectrumConfig(v *UplinkSpectrumConfig) *AntennaUplinkConfig {
  2757  	s.SpectrumConfig = v
  2758  	return s
  2759  }
  2760  
  2761  // SetTargetEirp sets the TargetEirp field's value.
  2762  func (s *AntennaUplinkConfig) SetTargetEirp(v *Eirp) *AntennaUplinkConfig {
  2763  	s.TargetEirp = v
  2764  	return s
  2765  }
  2766  
  2767  // SetTransmitDisabled sets the TransmitDisabled field's value.
  2768  func (s *AntennaUplinkConfig) SetTransmitDisabled(v bool) *AntennaUplinkConfig {
  2769  	s.TransmitDisabled = &v
  2770  	return s
  2771  }
  2772  
  2773  type CancelContactInput struct {
  2774  	_ struct{} `type:"structure" nopayload:"true"`
  2775  
  2776  	// UUID of a contact.
  2777  	//
  2778  	// ContactId is a required field
  2779  	ContactId *string `location:"uri" locationName:"contactId" type:"string" required:"true"`
  2780  }
  2781  
  2782  // String returns the string representation.
  2783  //
  2784  // API parameter values that are decorated as "sensitive" in the API will not
  2785  // be included in the string output. The member name will be present, but the
  2786  // value will be replaced with "sensitive".
  2787  func (s CancelContactInput) String() string {
  2788  	return awsutil.Prettify(s)
  2789  }
  2790  
  2791  // GoString returns the string representation.
  2792  //
  2793  // API parameter values that are decorated as "sensitive" in the API will not
  2794  // be included in the string output. The member name will be present, but the
  2795  // value will be replaced with "sensitive".
  2796  func (s CancelContactInput) GoString() string {
  2797  	return s.String()
  2798  }
  2799  
  2800  // Validate inspects the fields of the type to determine if they are valid.
  2801  func (s *CancelContactInput) Validate() error {
  2802  	invalidParams := request.ErrInvalidParams{Context: "CancelContactInput"}
  2803  	if s.ContactId == nil {
  2804  		invalidParams.Add(request.NewErrParamRequired("ContactId"))
  2805  	}
  2806  	if s.ContactId != nil && len(*s.ContactId) < 1 {
  2807  		invalidParams.Add(request.NewErrParamMinLen("ContactId", 1))
  2808  	}
  2809  
  2810  	if invalidParams.Len() > 0 {
  2811  		return invalidParams
  2812  	}
  2813  	return nil
  2814  }
  2815  
  2816  // SetContactId sets the ContactId field's value.
  2817  func (s *CancelContactInput) SetContactId(v string) *CancelContactInput {
  2818  	s.ContactId = &v
  2819  	return s
  2820  }
  2821  
  2822  type CancelContactOutput struct {
  2823  	_ struct{} `type:"structure"`
  2824  
  2825  	// UUID of a contact.
  2826  	ContactId *string `locationName:"contactId" type:"string"`
  2827  }
  2828  
  2829  // String returns the string representation.
  2830  //
  2831  // API parameter values that are decorated as "sensitive" in the API will not
  2832  // be included in the string output. The member name will be present, but the
  2833  // value will be replaced with "sensitive".
  2834  func (s CancelContactOutput) String() string {
  2835  	return awsutil.Prettify(s)
  2836  }
  2837  
  2838  // GoString returns the string representation.
  2839  //
  2840  // API parameter values that are decorated as "sensitive" in the API will not
  2841  // be included in the string output. The member name will be present, but the
  2842  // value will be replaced with "sensitive".
  2843  func (s CancelContactOutput) GoString() string {
  2844  	return s.String()
  2845  }
  2846  
  2847  // SetContactId sets the ContactId field's value.
  2848  func (s *CancelContactOutput) SetContactId(v string) *CancelContactOutput {
  2849  	s.ContactId = &v
  2850  	return s
  2851  }
  2852  
  2853  // Details for certain Config object types in a contact.
  2854  type ConfigDetails struct {
  2855  	_ struct{} `type:"structure"`
  2856  
  2857  	// Details for antenna demod decode Config in a contact.
  2858  	AntennaDemodDecodeDetails *AntennaDemodDecodeDetails `locationName:"antennaDemodDecodeDetails" type:"structure"`
  2859  
  2860  	// Information about the endpoint details.
  2861  	EndpointDetails *EndpointDetails `locationName:"endpointDetails" type:"structure"`
  2862  
  2863  	// Details for an S3 recording Config in a contact.
  2864  	S3RecordingDetails *S3RecordingDetails `locationName:"s3RecordingDetails" type:"structure"`
  2865  }
  2866  
  2867  // String returns the string representation.
  2868  //
  2869  // API parameter values that are decorated as "sensitive" in the API will not
  2870  // be included in the string output. The member name will be present, but the
  2871  // value will be replaced with "sensitive".
  2872  func (s ConfigDetails) String() string {
  2873  	return awsutil.Prettify(s)
  2874  }
  2875  
  2876  // GoString returns the string representation.
  2877  //
  2878  // API parameter values that are decorated as "sensitive" in the API will not
  2879  // be included in the string output. The member name will be present, but the
  2880  // value will be replaced with "sensitive".
  2881  func (s ConfigDetails) GoString() string {
  2882  	return s.String()
  2883  }
  2884  
  2885  // SetAntennaDemodDecodeDetails sets the AntennaDemodDecodeDetails field's value.
  2886  func (s *ConfigDetails) SetAntennaDemodDecodeDetails(v *AntennaDemodDecodeDetails) *ConfigDetails {
  2887  	s.AntennaDemodDecodeDetails = v
  2888  	return s
  2889  }
  2890  
  2891  // SetEndpointDetails sets the EndpointDetails field's value.
  2892  func (s *ConfigDetails) SetEndpointDetails(v *EndpointDetails) *ConfigDetails {
  2893  	s.EndpointDetails = v
  2894  	return s
  2895  }
  2896  
  2897  // SetS3RecordingDetails sets the S3RecordingDetails field's value.
  2898  func (s *ConfigDetails) SetS3RecordingDetails(v *S3RecordingDetails) *ConfigDetails {
  2899  	s.S3RecordingDetails = v
  2900  	return s
  2901  }
  2902  
  2903  // An item in a list of Config objects.
  2904  type ConfigListItem struct {
  2905  	_ struct{} `type:"structure"`
  2906  
  2907  	// ARN of a Config.
  2908  	ConfigArn *string `locationName:"configArn" type:"string"`
  2909  
  2910  	// UUID of a Config.
  2911  	ConfigId *string `locationName:"configId" type:"string"`
  2912  
  2913  	// Type of a Config.
  2914  	ConfigType *string `locationName:"configType" type:"string" enum:"ConfigCapabilityType"`
  2915  
  2916  	// Name of a Config.
  2917  	Name *string `locationName:"name" type:"string"`
  2918  }
  2919  
  2920  // String returns the string representation.
  2921  //
  2922  // API parameter values that are decorated as "sensitive" in the API will not
  2923  // be included in the string output. The member name will be present, but the
  2924  // value will be replaced with "sensitive".
  2925  func (s ConfigListItem) String() string {
  2926  	return awsutil.Prettify(s)
  2927  }
  2928  
  2929  // GoString returns the string representation.
  2930  //
  2931  // API parameter values that are decorated as "sensitive" in the API will not
  2932  // be included in the string output. The member name will be present, but the
  2933  // value will be replaced with "sensitive".
  2934  func (s ConfigListItem) GoString() string {
  2935  	return s.String()
  2936  }
  2937  
  2938  // SetConfigArn sets the ConfigArn field's value.
  2939  func (s *ConfigListItem) SetConfigArn(v string) *ConfigListItem {
  2940  	s.ConfigArn = &v
  2941  	return s
  2942  }
  2943  
  2944  // SetConfigId sets the ConfigId field's value.
  2945  func (s *ConfigListItem) SetConfigId(v string) *ConfigListItem {
  2946  	s.ConfigId = &v
  2947  	return s
  2948  }
  2949  
  2950  // SetConfigType sets the ConfigType field's value.
  2951  func (s *ConfigListItem) SetConfigType(v string) *ConfigListItem {
  2952  	s.ConfigType = &v
  2953  	return s
  2954  }
  2955  
  2956  // SetName sets the Name field's value.
  2957  func (s *ConfigListItem) SetName(v string) *ConfigListItem {
  2958  	s.Name = &v
  2959  	return s
  2960  }
  2961  
  2962  // Object containing the parameters of a Config.
  2963  //
  2964  // See the subtype definitions for what each type of Config contains.
  2965  type ConfigTypeData struct {
  2966  	_ struct{} `type:"structure"`
  2967  
  2968  	// Information about how AWS Ground Station should configure an antenna for
  2969  	// downlink during a contact.
  2970  	AntennaDownlinkConfig *AntennaDownlinkConfig `locationName:"antennaDownlinkConfig" type:"structure"`
  2971  
  2972  	// Information about how AWS Ground Station should configure an antenna for
  2973  	// downlink demod decode during a contact.
  2974  	AntennaDownlinkDemodDecodeConfig *AntennaDownlinkDemodDecodeConfig `locationName:"antennaDownlinkDemodDecodeConfig" type:"structure"`
  2975  
  2976  	// Information about how AWS Ground Station should configure an antenna for
  2977  	// uplink during a contact.
  2978  	AntennaUplinkConfig *AntennaUplinkConfig `locationName:"antennaUplinkConfig" type:"structure"`
  2979  
  2980  	// Information about the dataflow endpoint Config.
  2981  	DataflowEndpointConfig *DataflowEndpointConfig `locationName:"dataflowEndpointConfig" type:"structure"`
  2982  
  2983  	// Information about an S3 recording Config.
  2984  	S3RecordingConfig *S3RecordingConfig `locationName:"s3RecordingConfig" type:"structure"`
  2985  
  2986  	// Object that determines whether tracking should be used during a contact executed
  2987  	// with this Config in the mission profile.
  2988  	TrackingConfig *TrackingConfig `locationName:"trackingConfig" type:"structure"`
  2989  
  2990  	// Information about an uplink echo Config.
  2991  	//
  2992  	// Parameters from the AntennaUplinkConfig, corresponding to the specified AntennaUplinkConfigArn,
  2993  	// are used when this UplinkEchoConfig is used in a contact.
  2994  	UplinkEchoConfig *UplinkEchoConfig `locationName:"uplinkEchoConfig" type:"structure"`
  2995  }
  2996  
  2997  // String returns the string representation.
  2998  //
  2999  // API parameter values that are decorated as "sensitive" in the API will not
  3000  // be included in the string output. The member name will be present, but the
  3001  // value will be replaced with "sensitive".
  3002  func (s ConfigTypeData) String() string {
  3003  	return awsutil.Prettify(s)
  3004  }
  3005  
  3006  // GoString returns the string representation.
  3007  //
  3008  // API parameter values that are decorated as "sensitive" in the API will not
  3009  // be included in the string output. The member name will be present, but the
  3010  // value will be replaced with "sensitive".
  3011  func (s ConfigTypeData) GoString() string {
  3012  	return s.String()
  3013  }
  3014  
  3015  // Validate inspects the fields of the type to determine if they are valid.
  3016  func (s *ConfigTypeData) Validate() error {
  3017  	invalidParams := request.ErrInvalidParams{Context: "ConfigTypeData"}
  3018  	if s.AntennaDownlinkConfig != nil {
  3019  		if err := s.AntennaDownlinkConfig.Validate(); err != nil {
  3020  			invalidParams.AddNested("AntennaDownlinkConfig", err.(request.ErrInvalidParams))
  3021  		}
  3022  	}
  3023  	if s.AntennaDownlinkDemodDecodeConfig != nil {
  3024  		if err := s.AntennaDownlinkDemodDecodeConfig.Validate(); err != nil {
  3025  			invalidParams.AddNested("AntennaDownlinkDemodDecodeConfig", err.(request.ErrInvalidParams))
  3026  		}
  3027  	}
  3028  	if s.AntennaUplinkConfig != nil {
  3029  		if err := s.AntennaUplinkConfig.Validate(); err != nil {
  3030  			invalidParams.AddNested("AntennaUplinkConfig", err.(request.ErrInvalidParams))
  3031  		}
  3032  	}
  3033  	if s.DataflowEndpointConfig != nil {
  3034  		if err := s.DataflowEndpointConfig.Validate(); err != nil {
  3035  			invalidParams.AddNested("DataflowEndpointConfig", err.(request.ErrInvalidParams))
  3036  		}
  3037  	}
  3038  	if s.S3RecordingConfig != nil {
  3039  		if err := s.S3RecordingConfig.Validate(); err != nil {
  3040  			invalidParams.AddNested("S3RecordingConfig", err.(request.ErrInvalidParams))
  3041  		}
  3042  	}
  3043  	if s.TrackingConfig != nil {
  3044  		if err := s.TrackingConfig.Validate(); err != nil {
  3045  			invalidParams.AddNested("TrackingConfig", err.(request.ErrInvalidParams))
  3046  		}
  3047  	}
  3048  	if s.UplinkEchoConfig != nil {
  3049  		if err := s.UplinkEchoConfig.Validate(); err != nil {
  3050  			invalidParams.AddNested("UplinkEchoConfig", err.(request.ErrInvalidParams))
  3051  		}
  3052  	}
  3053  
  3054  	if invalidParams.Len() > 0 {
  3055  		return invalidParams
  3056  	}
  3057  	return nil
  3058  }
  3059  
  3060  // SetAntennaDownlinkConfig sets the AntennaDownlinkConfig field's value.
  3061  func (s *ConfigTypeData) SetAntennaDownlinkConfig(v *AntennaDownlinkConfig) *ConfigTypeData {
  3062  	s.AntennaDownlinkConfig = v
  3063  	return s
  3064  }
  3065  
  3066  // SetAntennaDownlinkDemodDecodeConfig sets the AntennaDownlinkDemodDecodeConfig field's value.
  3067  func (s *ConfigTypeData) SetAntennaDownlinkDemodDecodeConfig(v *AntennaDownlinkDemodDecodeConfig) *ConfigTypeData {
  3068  	s.AntennaDownlinkDemodDecodeConfig = v
  3069  	return s
  3070  }
  3071  
  3072  // SetAntennaUplinkConfig sets the AntennaUplinkConfig field's value.
  3073  func (s *ConfigTypeData) SetAntennaUplinkConfig(v *AntennaUplinkConfig) *ConfigTypeData {
  3074  	s.AntennaUplinkConfig = v
  3075  	return s
  3076  }
  3077  
  3078  // SetDataflowEndpointConfig sets the DataflowEndpointConfig field's value.
  3079  func (s *ConfigTypeData) SetDataflowEndpointConfig(v *DataflowEndpointConfig) *ConfigTypeData {
  3080  	s.DataflowEndpointConfig = v
  3081  	return s
  3082  }
  3083  
  3084  // SetS3RecordingConfig sets the S3RecordingConfig field's value.
  3085  func (s *ConfigTypeData) SetS3RecordingConfig(v *S3RecordingConfig) *ConfigTypeData {
  3086  	s.S3RecordingConfig = v
  3087  	return s
  3088  }
  3089  
  3090  // SetTrackingConfig sets the TrackingConfig field's value.
  3091  func (s *ConfigTypeData) SetTrackingConfig(v *TrackingConfig) *ConfigTypeData {
  3092  	s.TrackingConfig = v
  3093  	return s
  3094  }
  3095  
  3096  // SetUplinkEchoConfig sets the UplinkEchoConfig field's value.
  3097  func (s *ConfigTypeData) SetUplinkEchoConfig(v *UplinkEchoConfig) *ConfigTypeData {
  3098  	s.UplinkEchoConfig = v
  3099  	return s
  3100  }
  3101  
  3102  // Data describing a contact.
  3103  type ContactData struct {
  3104  	_ struct{} `type:"structure"`
  3105  
  3106  	// UUID of a contact.
  3107  	ContactId *string `locationName:"contactId" type:"string"`
  3108  
  3109  	// Status of a contact.
  3110  	ContactStatus *string `locationName:"contactStatus" type:"string" enum:"ContactStatus"`
  3111  
  3112  	// End time of a contact.
  3113  	EndTime *time.Time `locationName:"endTime" type:"timestamp"`
  3114  
  3115  	// Error message of a contact.
  3116  	ErrorMessage *string `locationName:"errorMessage" type:"string"`
  3117  
  3118  	// Name of a ground station.
  3119  	GroundStation *string `locationName:"groundStation" type:"string"`
  3120  
  3121  	// Maximum elevation angle of a contact.
  3122  	MaximumElevation *Elevation `locationName:"maximumElevation" type:"structure"`
  3123  
  3124  	// ARN of a mission profile.
  3125  	MissionProfileArn *string `locationName:"missionProfileArn" type:"string"`
  3126  
  3127  	// Amount of time after a contact ends that you’d like to receive a CloudWatch
  3128  	// event indicating the pass has finished.
  3129  	PostPassEndTime *time.Time `locationName:"postPassEndTime" type:"timestamp"`
  3130  
  3131  	// Amount of time prior to contact start you’d like to receive a CloudWatch
  3132  	// event indicating an upcoming pass.
  3133  	PrePassStartTime *time.Time `locationName:"prePassStartTime" type:"timestamp"`
  3134  
  3135  	// Region of a contact.
  3136  	Region *string `locationName:"region" type:"string"`
  3137  
  3138  	// ARN of a satellite.
  3139  	SatelliteArn *string `locationName:"satelliteArn" type:"string"`
  3140  
  3141  	// Start time of a contact.
  3142  	StartTime *time.Time `locationName:"startTime" type:"timestamp"`
  3143  
  3144  	// Tags assigned to a contact.
  3145  	Tags map[string]*string `locationName:"tags" type:"map"`
  3146  }
  3147  
  3148  // String returns the string representation.
  3149  //
  3150  // API parameter values that are decorated as "sensitive" in the API will not
  3151  // be included in the string output. The member name will be present, but the
  3152  // value will be replaced with "sensitive".
  3153  func (s ContactData) String() string {
  3154  	return awsutil.Prettify(s)
  3155  }
  3156  
  3157  // GoString returns the string representation.
  3158  //
  3159  // API parameter values that are decorated as "sensitive" in the API will not
  3160  // be included in the string output. The member name will be present, but the
  3161  // value will be replaced with "sensitive".
  3162  func (s ContactData) GoString() string {
  3163  	return s.String()
  3164  }
  3165  
  3166  // SetContactId sets the ContactId field's value.
  3167  func (s *ContactData) SetContactId(v string) *ContactData {
  3168  	s.ContactId = &v
  3169  	return s
  3170  }
  3171  
  3172  // SetContactStatus sets the ContactStatus field's value.
  3173  func (s *ContactData) SetContactStatus(v string) *ContactData {
  3174  	s.ContactStatus = &v
  3175  	return s
  3176  }
  3177  
  3178  // SetEndTime sets the EndTime field's value.
  3179  func (s *ContactData) SetEndTime(v time.Time) *ContactData {
  3180  	s.EndTime = &v
  3181  	return s
  3182  }
  3183  
  3184  // SetErrorMessage sets the ErrorMessage field's value.
  3185  func (s *ContactData) SetErrorMessage(v string) *ContactData {
  3186  	s.ErrorMessage = &v
  3187  	return s
  3188  }
  3189  
  3190  // SetGroundStation sets the GroundStation field's value.
  3191  func (s *ContactData) SetGroundStation(v string) *ContactData {
  3192  	s.GroundStation = &v
  3193  	return s
  3194  }
  3195  
  3196  // SetMaximumElevation sets the MaximumElevation field's value.
  3197  func (s *ContactData) SetMaximumElevation(v *Elevation) *ContactData {
  3198  	s.MaximumElevation = v
  3199  	return s
  3200  }
  3201  
  3202  // SetMissionProfileArn sets the MissionProfileArn field's value.
  3203  func (s *ContactData) SetMissionProfileArn(v string) *ContactData {
  3204  	s.MissionProfileArn = &v
  3205  	return s
  3206  }
  3207  
  3208  // SetPostPassEndTime sets the PostPassEndTime field's value.
  3209  func (s *ContactData) SetPostPassEndTime(v time.Time) *ContactData {
  3210  	s.PostPassEndTime = &v
  3211  	return s
  3212  }
  3213  
  3214  // SetPrePassStartTime sets the PrePassStartTime field's value.
  3215  func (s *ContactData) SetPrePassStartTime(v time.Time) *ContactData {
  3216  	s.PrePassStartTime = &v
  3217  	return s
  3218  }
  3219  
  3220  // SetRegion sets the Region field's value.
  3221  func (s *ContactData) SetRegion(v string) *ContactData {
  3222  	s.Region = &v
  3223  	return s
  3224  }
  3225  
  3226  // SetSatelliteArn sets the SatelliteArn field's value.
  3227  func (s *ContactData) SetSatelliteArn(v string) *ContactData {
  3228  	s.SatelliteArn = &v
  3229  	return s
  3230  }
  3231  
  3232  // SetStartTime sets the StartTime field's value.
  3233  func (s *ContactData) SetStartTime(v time.Time) *ContactData {
  3234  	s.StartTime = &v
  3235  	return s
  3236  }
  3237  
  3238  // SetTags sets the Tags field's value.
  3239  func (s *ContactData) SetTags(v map[string]*string) *ContactData {
  3240  	s.Tags = v
  3241  	return s
  3242  }
  3243  
  3244  type CreateConfigInput struct {
  3245  	_ struct{} `type:"structure"`
  3246  
  3247  	// Parameters of a Config.
  3248  	//
  3249  	// ConfigData is a required field
  3250  	ConfigData *ConfigTypeData `locationName:"configData" type:"structure" required:"true"`
  3251  
  3252  	// Name of a Config.
  3253  	//
  3254  	// Name is a required field
  3255  	Name *string `locationName:"name" min:"1" type:"string" required:"true"`
  3256  
  3257  	// Tags assigned to a Config.
  3258  	Tags map[string]*string `locationName:"tags" type:"map"`
  3259  }
  3260  
  3261  // String returns the string representation.
  3262  //
  3263  // API parameter values that are decorated as "sensitive" in the API will not
  3264  // be included in the string output. The member name will be present, but the
  3265  // value will be replaced with "sensitive".
  3266  func (s CreateConfigInput) String() string {
  3267  	return awsutil.Prettify(s)
  3268  }
  3269  
  3270  // GoString returns the string representation.
  3271  //
  3272  // API parameter values that are decorated as "sensitive" in the API will not
  3273  // be included in the string output. The member name will be present, but the
  3274  // value will be replaced with "sensitive".
  3275  func (s CreateConfigInput) GoString() string {
  3276  	return s.String()
  3277  }
  3278  
  3279  // Validate inspects the fields of the type to determine if they are valid.
  3280  func (s *CreateConfigInput) Validate() error {
  3281  	invalidParams := request.ErrInvalidParams{Context: "CreateConfigInput"}
  3282  	if s.ConfigData == nil {
  3283  		invalidParams.Add(request.NewErrParamRequired("ConfigData"))
  3284  	}
  3285  	if s.Name == nil {
  3286  		invalidParams.Add(request.NewErrParamRequired("Name"))
  3287  	}
  3288  	if s.Name != nil && len(*s.Name) < 1 {
  3289  		invalidParams.Add(request.NewErrParamMinLen("Name", 1))
  3290  	}
  3291  	if s.ConfigData != nil {
  3292  		if err := s.ConfigData.Validate(); err != nil {
  3293  			invalidParams.AddNested("ConfigData", err.(request.ErrInvalidParams))
  3294  		}
  3295  	}
  3296  
  3297  	if invalidParams.Len() > 0 {
  3298  		return invalidParams
  3299  	}
  3300  	return nil
  3301  }
  3302  
  3303  // SetConfigData sets the ConfigData field's value.
  3304  func (s *CreateConfigInput) SetConfigData(v *ConfigTypeData) *CreateConfigInput {
  3305  	s.ConfigData = v
  3306  	return s
  3307  }
  3308  
  3309  // SetName sets the Name field's value.
  3310  func (s *CreateConfigInput) SetName(v string) *CreateConfigInput {
  3311  	s.Name = &v
  3312  	return s
  3313  }
  3314  
  3315  // SetTags sets the Tags field's value.
  3316  func (s *CreateConfigInput) SetTags(v map[string]*string) *CreateConfigInput {
  3317  	s.Tags = v
  3318  	return s
  3319  }
  3320  
  3321  type CreateConfigOutput struct {
  3322  	_ struct{} `type:"structure"`
  3323  
  3324  	// ARN of a Config.
  3325  	ConfigArn *string `locationName:"configArn" type:"string"`
  3326  
  3327  	// UUID of a Config.
  3328  	ConfigId *string `locationName:"configId" type:"string"`
  3329  
  3330  	// Type of a Config.
  3331  	ConfigType *string `locationName:"configType" type:"string" enum:"ConfigCapabilityType"`
  3332  }
  3333  
  3334  // String returns the string representation.
  3335  //
  3336  // API parameter values that are decorated as "sensitive" in the API will not
  3337  // be included in the string output. The member name will be present, but the
  3338  // value will be replaced with "sensitive".
  3339  func (s CreateConfigOutput) String() string {
  3340  	return awsutil.Prettify(s)
  3341  }
  3342  
  3343  // GoString returns the string representation.
  3344  //
  3345  // API parameter values that are decorated as "sensitive" in the API will not
  3346  // be included in the string output. The member name will be present, but the
  3347  // value will be replaced with "sensitive".
  3348  func (s CreateConfigOutput) GoString() string {
  3349  	return s.String()
  3350  }
  3351  
  3352  // SetConfigArn sets the ConfigArn field's value.
  3353  func (s *CreateConfigOutput) SetConfigArn(v string) *CreateConfigOutput {
  3354  	s.ConfigArn = &v
  3355  	return s
  3356  }
  3357  
  3358  // SetConfigId sets the ConfigId field's value.
  3359  func (s *CreateConfigOutput) SetConfigId(v string) *CreateConfigOutput {
  3360  	s.ConfigId = &v
  3361  	return s
  3362  }
  3363  
  3364  // SetConfigType sets the ConfigType field's value.
  3365  func (s *CreateConfigOutput) SetConfigType(v string) *CreateConfigOutput {
  3366  	s.ConfigType = &v
  3367  	return s
  3368  }
  3369  
  3370  type CreateDataflowEndpointGroupInput struct {
  3371  	_ struct{} `type:"structure"`
  3372  
  3373  	// Endpoint details of each endpoint in the dataflow endpoint group.
  3374  	//
  3375  	// EndpointDetails is a required field
  3376  	EndpointDetails []*EndpointDetails `locationName:"endpointDetails" type:"list" required:"true"`
  3377  
  3378  	// Tags of a dataflow endpoint group.
  3379  	Tags map[string]*string `locationName:"tags" type:"map"`
  3380  }
  3381  
  3382  // String returns the string representation.
  3383  //
  3384  // API parameter values that are decorated as "sensitive" in the API will not
  3385  // be included in the string output. The member name will be present, but the
  3386  // value will be replaced with "sensitive".
  3387  func (s CreateDataflowEndpointGroupInput) String() string {
  3388  	return awsutil.Prettify(s)
  3389  }
  3390  
  3391  // GoString returns the string representation.
  3392  //
  3393  // API parameter values that are decorated as "sensitive" in the API will not
  3394  // be included in the string output. The member name will be present, but the
  3395  // value will be replaced with "sensitive".
  3396  func (s CreateDataflowEndpointGroupInput) GoString() string {
  3397  	return s.String()
  3398  }
  3399  
  3400  // Validate inspects the fields of the type to determine if they are valid.
  3401  func (s *CreateDataflowEndpointGroupInput) Validate() error {
  3402  	invalidParams := request.ErrInvalidParams{Context: "CreateDataflowEndpointGroupInput"}
  3403  	if s.EndpointDetails == nil {
  3404  		invalidParams.Add(request.NewErrParamRequired("EndpointDetails"))
  3405  	}
  3406  	if s.EndpointDetails != nil {
  3407  		for i, v := range s.EndpointDetails {
  3408  			if v == nil {
  3409  				continue
  3410  			}
  3411  			if err := v.Validate(); err != nil {
  3412  				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "EndpointDetails", i), err.(request.ErrInvalidParams))
  3413  			}
  3414  		}
  3415  	}
  3416  
  3417  	if invalidParams.Len() > 0 {
  3418  		return invalidParams
  3419  	}
  3420  	return nil
  3421  }
  3422  
  3423  // SetEndpointDetails sets the EndpointDetails field's value.
  3424  func (s *CreateDataflowEndpointGroupInput) SetEndpointDetails(v []*EndpointDetails) *CreateDataflowEndpointGroupInput {
  3425  	s.EndpointDetails = v
  3426  	return s
  3427  }
  3428  
  3429  // SetTags sets the Tags field's value.
  3430  func (s *CreateDataflowEndpointGroupInput) SetTags(v map[string]*string) *CreateDataflowEndpointGroupInput {
  3431  	s.Tags = v
  3432  	return s
  3433  }
  3434  
  3435  type CreateDataflowEndpointGroupOutput struct {
  3436  	_ struct{} `type:"structure"`
  3437  
  3438  	// UUID of a dataflow endpoint group.
  3439  	DataflowEndpointGroupId *string `locationName:"dataflowEndpointGroupId" type:"string"`
  3440  }
  3441  
  3442  // String returns the string representation.
  3443  //
  3444  // API parameter values that are decorated as "sensitive" in the API will not
  3445  // be included in the string output. The member name will be present, but the
  3446  // value will be replaced with "sensitive".
  3447  func (s CreateDataflowEndpointGroupOutput) String() string {
  3448  	return awsutil.Prettify(s)
  3449  }
  3450  
  3451  // GoString returns the string representation.
  3452  //
  3453  // API parameter values that are decorated as "sensitive" in the API will not
  3454  // be included in the string output. The member name will be present, but the
  3455  // value will be replaced with "sensitive".
  3456  func (s CreateDataflowEndpointGroupOutput) GoString() string {
  3457  	return s.String()
  3458  }
  3459  
  3460  // SetDataflowEndpointGroupId sets the DataflowEndpointGroupId field's value.
  3461  func (s *CreateDataflowEndpointGroupOutput) SetDataflowEndpointGroupId(v string) *CreateDataflowEndpointGroupOutput {
  3462  	s.DataflowEndpointGroupId = &v
  3463  	return s
  3464  }
  3465  
  3466  type CreateMissionProfileInput struct {
  3467  	_ struct{} `type:"structure"`
  3468  
  3469  	// Amount of time after a contact ends that you’d like to receive a CloudWatch
  3470  	// event indicating the pass has finished.
  3471  	ContactPostPassDurationSeconds *int64 `locationName:"contactPostPassDurationSeconds" min:"1" type:"integer"`
  3472  
  3473  	// Amount of time prior to contact start you’d like to receive a CloudWatch
  3474  	// event indicating an upcoming pass.
  3475  	ContactPrePassDurationSeconds *int64 `locationName:"contactPrePassDurationSeconds" min:"1" type:"integer"`
  3476  
  3477  	// A list of lists of ARNs. Each list of ARNs is an edge, with a from Config
  3478  	// and a to Config.
  3479  	//
  3480  	// DataflowEdges is a required field
  3481  	DataflowEdges [][]*string `locationName:"dataflowEdges" type:"list" required:"true"`
  3482  
  3483  	// Smallest amount of time in seconds that you’d like to see for an available
  3484  	// contact. AWS Ground Station will not present you with contacts shorter than
  3485  	// this duration.
  3486  	//
  3487  	// MinimumViableContactDurationSeconds is a required field
  3488  	MinimumViableContactDurationSeconds *int64 `locationName:"minimumViableContactDurationSeconds" min:"1" type:"integer" required:"true"`
  3489  
  3490  	// Name of a mission profile.
  3491  	//
  3492  	// Name is a required field
  3493  	Name *string `locationName:"name" min:"1" type:"string" required:"true"`
  3494  
  3495  	// Tags assigned to a mission profile.
  3496  	Tags map[string]*string `locationName:"tags" type:"map"`
  3497  
  3498  	// ARN of a tracking Config.
  3499  	//
  3500  	// TrackingConfigArn is a required field
  3501  	TrackingConfigArn *string `locationName:"trackingConfigArn" type:"string" required:"true"`
  3502  }
  3503  
  3504  // String returns the string representation.
  3505  //
  3506  // API parameter values that are decorated as "sensitive" in the API will not
  3507  // be included in the string output. The member name will be present, but the
  3508  // value will be replaced with "sensitive".
  3509  func (s CreateMissionProfileInput) String() string {
  3510  	return awsutil.Prettify(s)
  3511  }
  3512  
  3513  // GoString returns the string representation.
  3514  //
  3515  // API parameter values that are decorated as "sensitive" in the API will not
  3516  // be included in the string output. The member name will be present, but the
  3517  // value will be replaced with "sensitive".
  3518  func (s CreateMissionProfileInput) GoString() string {
  3519  	return s.String()
  3520  }
  3521  
  3522  // Validate inspects the fields of the type to determine if they are valid.
  3523  func (s *CreateMissionProfileInput) Validate() error {
  3524  	invalidParams := request.ErrInvalidParams{Context: "CreateMissionProfileInput"}
  3525  	if s.ContactPostPassDurationSeconds != nil && *s.ContactPostPassDurationSeconds < 1 {
  3526  		invalidParams.Add(request.NewErrParamMinValue("ContactPostPassDurationSeconds", 1))
  3527  	}
  3528  	if s.ContactPrePassDurationSeconds != nil && *s.ContactPrePassDurationSeconds < 1 {
  3529  		invalidParams.Add(request.NewErrParamMinValue("ContactPrePassDurationSeconds", 1))
  3530  	}
  3531  	if s.DataflowEdges == nil {
  3532  		invalidParams.Add(request.NewErrParamRequired("DataflowEdges"))
  3533  	}
  3534  	if s.MinimumViableContactDurationSeconds == nil {
  3535  		invalidParams.Add(request.NewErrParamRequired("MinimumViableContactDurationSeconds"))
  3536  	}
  3537  	if s.MinimumViableContactDurationSeconds != nil && *s.MinimumViableContactDurationSeconds < 1 {
  3538  		invalidParams.Add(request.NewErrParamMinValue("MinimumViableContactDurationSeconds", 1))
  3539  	}
  3540  	if s.Name == nil {
  3541  		invalidParams.Add(request.NewErrParamRequired("Name"))
  3542  	}
  3543  	if s.Name != nil && len(*s.Name) < 1 {
  3544  		invalidParams.Add(request.NewErrParamMinLen("Name", 1))
  3545  	}
  3546  	if s.TrackingConfigArn == nil {
  3547  		invalidParams.Add(request.NewErrParamRequired("TrackingConfigArn"))
  3548  	}
  3549  
  3550  	if invalidParams.Len() > 0 {
  3551  		return invalidParams
  3552  	}
  3553  	return nil
  3554  }
  3555  
  3556  // SetContactPostPassDurationSeconds sets the ContactPostPassDurationSeconds field's value.
  3557  func (s *CreateMissionProfileInput) SetContactPostPassDurationSeconds(v int64) *CreateMissionProfileInput {
  3558  	s.ContactPostPassDurationSeconds = &v
  3559  	return s
  3560  }
  3561  
  3562  // SetContactPrePassDurationSeconds sets the ContactPrePassDurationSeconds field's value.
  3563  func (s *CreateMissionProfileInput) SetContactPrePassDurationSeconds(v int64) *CreateMissionProfileInput {
  3564  	s.ContactPrePassDurationSeconds = &v
  3565  	return s
  3566  }
  3567  
  3568  // SetDataflowEdges sets the DataflowEdges field's value.
  3569  func (s *CreateMissionProfileInput) SetDataflowEdges(v [][]*string) *CreateMissionProfileInput {
  3570  	s.DataflowEdges = v
  3571  	return s
  3572  }
  3573  
  3574  // SetMinimumViableContactDurationSeconds sets the MinimumViableContactDurationSeconds field's value.
  3575  func (s *CreateMissionProfileInput) SetMinimumViableContactDurationSeconds(v int64) *CreateMissionProfileInput {
  3576  	s.MinimumViableContactDurationSeconds = &v
  3577  	return s
  3578  }
  3579  
  3580  // SetName sets the Name field's value.
  3581  func (s *CreateMissionProfileInput) SetName(v string) *CreateMissionProfileInput {
  3582  	s.Name = &v
  3583  	return s
  3584  }
  3585  
  3586  // SetTags sets the Tags field's value.
  3587  func (s *CreateMissionProfileInput) SetTags(v map[string]*string) *CreateMissionProfileInput {
  3588  	s.Tags = v
  3589  	return s
  3590  }
  3591  
  3592  // SetTrackingConfigArn sets the TrackingConfigArn field's value.
  3593  func (s *CreateMissionProfileInput) SetTrackingConfigArn(v string) *CreateMissionProfileInput {
  3594  	s.TrackingConfigArn = &v
  3595  	return s
  3596  }
  3597  
  3598  type CreateMissionProfileOutput struct {
  3599  	_ struct{} `type:"structure"`
  3600  
  3601  	// UUID of a mission profile.
  3602  	MissionProfileId *string `locationName:"missionProfileId" type:"string"`
  3603  }
  3604  
  3605  // String returns the string representation.
  3606  //
  3607  // API parameter values that are decorated as "sensitive" in the API will not
  3608  // be included in the string output. The member name will be present, but the
  3609  // value will be replaced with "sensitive".
  3610  func (s CreateMissionProfileOutput) String() string {
  3611  	return awsutil.Prettify(s)
  3612  }
  3613  
  3614  // GoString returns the string representation.
  3615  //
  3616  // API parameter values that are decorated as "sensitive" in the API will not
  3617  // be included in the string output. The member name will be present, but the
  3618  // value will be replaced with "sensitive".
  3619  func (s CreateMissionProfileOutput) GoString() string {
  3620  	return s.String()
  3621  }
  3622  
  3623  // SetMissionProfileId sets the MissionProfileId field's value.
  3624  func (s *CreateMissionProfileOutput) SetMissionProfileId(v string) *CreateMissionProfileOutput {
  3625  	s.MissionProfileId = &v
  3626  	return s
  3627  }
  3628  
  3629  // Information about the ground station data.
  3630  type Data struct {
  3631  	_ struct{} `type:"structure"`
  3632  
  3633  	// UUID of a ground station.
  3634  	GroundStationId *string `locationName:"groundStationId" type:"string"`
  3635  
  3636  	// Name of a ground station.
  3637  	GroundStationName *string `locationName:"groundStationName" type:"string"`
  3638  
  3639  	// Ground station Region.
  3640  	Region *string `locationName:"region" type:"string"`
  3641  }
  3642  
  3643  // String returns the string representation.
  3644  //
  3645  // API parameter values that are decorated as "sensitive" in the API will not
  3646  // be included in the string output. The member name will be present, but the
  3647  // value will be replaced with "sensitive".
  3648  func (s Data) String() string {
  3649  	return awsutil.Prettify(s)
  3650  }
  3651  
  3652  // GoString returns the string representation.
  3653  //
  3654  // API parameter values that are decorated as "sensitive" in the API will not
  3655  // be included in the string output. The member name will be present, but the
  3656  // value will be replaced with "sensitive".
  3657  func (s Data) GoString() string {
  3658  	return s.String()
  3659  }
  3660  
  3661  // SetGroundStationId sets the GroundStationId field's value.
  3662  func (s *Data) SetGroundStationId(v string) *Data {
  3663  	s.GroundStationId = &v
  3664  	return s
  3665  }
  3666  
  3667  // SetGroundStationName sets the GroundStationName field's value.
  3668  func (s *Data) SetGroundStationName(v string) *Data {
  3669  	s.GroundStationName = &v
  3670  	return s
  3671  }
  3672  
  3673  // SetRegion sets the Region field's value.
  3674  func (s *Data) SetRegion(v string) *Data {
  3675  	s.Region = &v
  3676  	return s
  3677  }
  3678  
  3679  // Information about a dataflow edge used in a contact.
  3680  type DataflowDetail struct {
  3681  	_ struct{} `type:"structure"`
  3682  
  3683  	// Dataflow details for the destination side.
  3684  	Destination *Destination `locationName:"destination" type:"structure"`
  3685  
  3686  	// Error message for a dataflow.
  3687  	ErrorMessage *string `locationName:"errorMessage" type:"string"`
  3688  
  3689  	// Dataflow details for the source side.
  3690  	Source *Source `locationName:"source" type:"structure"`
  3691  }
  3692  
  3693  // String returns the string representation.
  3694  //
  3695  // API parameter values that are decorated as "sensitive" in the API will not
  3696  // be included in the string output. The member name will be present, but the
  3697  // value will be replaced with "sensitive".
  3698  func (s DataflowDetail) String() string {
  3699  	return awsutil.Prettify(s)
  3700  }
  3701  
  3702  // GoString returns the string representation.
  3703  //
  3704  // API parameter values that are decorated as "sensitive" in the API will not
  3705  // be included in the string output. The member name will be present, but the
  3706  // value will be replaced with "sensitive".
  3707  func (s DataflowDetail) GoString() string {
  3708  	return s.String()
  3709  }
  3710  
  3711  // SetDestination sets the Destination field's value.
  3712  func (s *DataflowDetail) SetDestination(v *Destination) *DataflowDetail {
  3713  	s.Destination = v
  3714  	return s
  3715  }
  3716  
  3717  // SetErrorMessage sets the ErrorMessage field's value.
  3718  func (s *DataflowDetail) SetErrorMessage(v string) *DataflowDetail {
  3719  	s.ErrorMessage = &v
  3720  	return s
  3721  }
  3722  
  3723  // SetSource sets the Source field's value.
  3724  func (s *DataflowDetail) SetSource(v *Source) *DataflowDetail {
  3725  	s.Source = v
  3726  	return s
  3727  }
  3728  
  3729  // Information about a dataflow endpoint.
  3730  type DataflowEndpoint struct {
  3731  	_ struct{} `type:"structure"`
  3732  
  3733  	// Socket address of a dataflow endpoint.
  3734  	Address *SocketAddress `locationName:"address" type:"structure"`
  3735  
  3736  	// Maximum transmission unit (MTU) size in bytes of a dataflow endpoint.
  3737  	Mtu *int64 `locationName:"mtu" min:"1400" type:"integer"`
  3738  
  3739  	// Name of a dataflow endpoint.
  3740  	Name *string `locationName:"name" min:"1" type:"string"`
  3741  
  3742  	// Status of a dataflow endpoint.
  3743  	Status *string `locationName:"status" type:"string" enum:"EndpointStatus"`
  3744  }
  3745  
  3746  // String returns the string representation.
  3747  //
  3748  // API parameter values that are decorated as "sensitive" in the API will not
  3749  // be included in the string output. The member name will be present, but the
  3750  // value will be replaced with "sensitive".
  3751  func (s DataflowEndpoint) String() string {
  3752  	return awsutil.Prettify(s)
  3753  }
  3754  
  3755  // GoString returns the string representation.
  3756  //
  3757  // API parameter values that are decorated as "sensitive" in the API will not
  3758  // be included in the string output. The member name will be present, but the
  3759  // value will be replaced with "sensitive".
  3760  func (s DataflowEndpoint) GoString() string {
  3761  	return s.String()
  3762  }
  3763  
  3764  // Validate inspects the fields of the type to determine if they are valid.
  3765  func (s *DataflowEndpoint) Validate() error {
  3766  	invalidParams := request.ErrInvalidParams{Context: "DataflowEndpoint"}
  3767  	if s.Mtu != nil && *s.Mtu < 1400 {
  3768  		invalidParams.Add(request.NewErrParamMinValue("Mtu", 1400))
  3769  	}
  3770  	if s.Name != nil && len(*s.Name) < 1 {
  3771  		invalidParams.Add(request.NewErrParamMinLen("Name", 1))
  3772  	}
  3773  	if s.Address != nil {
  3774  		if err := s.Address.Validate(); err != nil {
  3775  			invalidParams.AddNested("Address", err.(request.ErrInvalidParams))
  3776  		}
  3777  	}
  3778  
  3779  	if invalidParams.Len() > 0 {
  3780  		return invalidParams
  3781  	}
  3782  	return nil
  3783  }
  3784  
  3785  // SetAddress sets the Address field's value.
  3786  func (s *DataflowEndpoint) SetAddress(v *SocketAddress) *DataflowEndpoint {
  3787  	s.Address = v
  3788  	return s
  3789  }
  3790  
  3791  // SetMtu sets the Mtu field's value.
  3792  func (s *DataflowEndpoint) SetMtu(v int64) *DataflowEndpoint {
  3793  	s.Mtu = &v
  3794  	return s
  3795  }
  3796  
  3797  // SetName sets the Name field's value.
  3798  func (s *DataflowEndpoint) SetName(v string) *DataflowEndpoint {
  3799  	s.Name = &v
  3800  	return s
  3801  }
  3802  
  3803  // SetStatus sets the Status field's value.
  3804  func (s *DataflowEndpoint) SetStatus(v string) *DataflowEndpoint {
  3805  	s.Status = &v
  3806  	return s
  3807  }
  3808  
  3809  // Information about the dataflow endpoint Config.
  3810  type DataflowEndpointConfig struct {
  3811  	_ struct{} `type:"structure"`
  3812  
  3813  	// Name of a dataflow endpoint.
  3814  	//
  3815  	// DataflowEndpointName is a required field
  3816  	DataflowEndpointName *string `locationName:"dataflowEndpointName" type:"string" required:"true"`
  3817  
  3818  	// Region of a dataflow endpoint.
  3819  	DataflowEndpointRegion *string `locationName:"dataflowEndpointRegion" type:"string"`
  3820  }
  3821  
  3822  // String returns the string representation.
  3823  //
  3824  // API parameter values that are decorated as "sensitive" in the API will not
  3825  // be included in the string output. The member name will be present, but the
  3826  // value will be replaced with "sensitive".
  3827  func (s DataflowEndpointConfig) String() string {
  3828  	return awsutil.Prettify(s)
  3829  }
  3830  
  3831  // GoString returns the string representation.
  3832  //
  3833  // API parameter values that are decorated as "sensitive" in the API will not
  3834  // be included in the string output. The member name will be present, but the
  3835  // value will be replaced with "sensitive".
  3836  func (s DataflowEndpointConfig) GoString() string {
  3837  	return s.String()
  3838  }
  3839  
  3840  // Validate inspects the fields of the type to determine if they are valid.
  3841  func (s *DataflowEndpointConfig) Validate() error {
  3842  	invalidParams := request.ErrInvalidParams{Context: "DataflowEndpointConfig"}
  3843  	if s.DataflowEndpointName == nil {
  3844  		invalidParams.Add(request.NewErrParamRequired("DataflowEndpointName"))
  3845  	}
  3846  
  3847  	if invalidParams.Len() > 0 {
  3848  		return invalidParams
  3849  	}
  3850  	return nil
  3851  }
  3852  
  3853  // SetDataflowEndpointName sets the DataflowEndpointName field's value.
  3854  func (s *DataflowEndpointConfig) SetDataflowEndpointName(v string) *DataflowEndpointConfig {
  3855  	s.DataflowEndpointName = &v
  3856  	return s
  3857  }
  3858  
  3859  // SetDataflowEndpointRegion sets the DataflowEndpointRegion field's value.
  3860  func (s *DataflowEndpointConfig) SetDataflowEndpointRegion(v string) *DataflowEndpointConfig {
  3861  	s.DataflowEndpointRegion = &v
  3862  	return s
  3863  }
  3864  
  3865  // Item in a list of DataflowEndpoint groups.
  3866  type DataflowEndpointListItem struct {
  3867  	_ struct{} `type:"structure"`
  3868  
  3869  	// ARN of a dataflow endpoint group.
  3870  	DataflowEndpointGroupArn *string `locationName:"dataflowEndpointGroupArn" type:"string"`
  3871  
  3872  	// UUID of a dataflow endpoint group.
  3873  	DataflowEndpointGroupId *string `locationName:"dataflowEndpointGroupId" type:"string"`
  3874  }
  3875  
  3876  // String returns the string representation.
  3877  //
  3878  // API parameter values that are decorated as "sensitive" in the API will not
  3879  // be included in the string output. The member name will be present, but the
  3880  // value will be replaced with "sensitive".
  3881  func (s DataflowEndpointListItem) String() string {
  3882  	return awsutil.Prettify(s)
  3883  }
  3884  
  3885  // GoString returns the string representation.
  3886  //
  3887  // API parameter values that are decorated as "sensitive" in the API will not
  3888  // be included in the string output. The member name will be present, but the
  3889  // value will be replaced with "sensitive".
  3890  func (s DataflowEndpointListItem) GoString() string {
  3891  	return s.String()
  3892  }
  3893  
  3894  // SetDataflowEndpointGroupArn sets the DataflowEndpointGroupArn field's value.
  3895  func (s *DataflowEndpointListItem) SetDataflowEndpointGroupArn(v string) *DataflowEndpointListItem {
  3896  	s.DataflowEndpointGroupArn = &v
  3897  	return s
  3898  }
  3899  
  3900  // SetDataflowEndpointGroupId sets the DataflowEndpointGroupId field's value.
  3901  func (s *DataflowEndpointListItem) SetDataflowEndpointGroupId(v string) *DataflowEndpointListItem {
  3902  	s.DataflowEndpointGroupId = &v
  3903  	return s
  3904  }
  3905  
  3906  // Information about the decode Config.
  3907  type DecodeConfig struct {
  3908  	_ struct{} `type:"structure"`
  3909  
  3910  	// Unvalidated JSON of a decode Config.
  3911  	//
  3912  	// UnvalidatedJSON is a required field
  3913  	UnvalidatedJSON *string `locationName:"unvalidatedJSON" min:"2" type:"string" required:"true"`
  3914  }
  3915  
  3916  // String returns the string representation.
  3917  //
  3918  // API parameter values that are decorated as "sensitive" in the API will not
  3919  // be included in the string output. The member name will be present, but the
  3920  // value will be replaced with "sensitive".
  3921  func (s DecodeConfig) String() string {
  3922  	return awsutil.Prettify(s)
  3923  }
  3924  
  3925  // GoString returns the string representation.
  3926  //
  3927  // API parameter values that are decorated as "sensitive" in the API will not
  3928  // be included in the string output. The member name will be present, but the
  3929  // value will be replaced with "sensitive".
  3930  func (s DecodeConfig) GoString() string {
  3931  	return s.String()
  3932  }
  3933  
  3934  // Validate inspects the fields of the type to determine if they are valid.
  3935  func (s *DecodeConfig) Validate() error {
  3936  	invalidParams := request.ErrInvalidParams{Context: "DecodeConfig"}
  3937  	if s.UnvalidatedJSON == nil {
  3938  		invalidParams.Add(request.NewErrParamRequired("UnvalidatedJSON"))
  3939  	}
  3940  	if s.UnvalidatedJSON != nil && len(*s.UnvalidatedJSON) < 2 {
  3941  		invalidParams.Add(request.NewErrParamMinLen("UnvalidatedJSON", 2))
  3942  	}
  3943  
  3944  	if invalidParams.Len() > 0 {
  3945  		return invalidParams
  3946  	}
  3947  	return nil
  3948  }
  3949  
  3950  // SetUnvalidatedJSON sets the UnvalidatedJSON field's value.
  3951  func (s *DecodeConfig) SetUnvalidatedJSON(v string) *DecodeConfig {
  3952  	s.UnvalidatedJSON = &v
  3953  	return s
  3954  }
  3955  
  3956  type DeleteConfigInput struct {
  3957  	_ struct{} `type:"structure" nopayload:"true"`
  3958  
  3959  	// UUID of a Config.
  3960  	//
  3961  	// ConfigId is a required field
  3962  	ConfigId *string `location:"uri" locationName:"configId" type:"string" required:"true"`
  3963  
  3964  	// Type of a Config.
  3965  	//
  3966  	// ConfigType is a required field
  3967  	ConfigType *string `location:"uri" locationName:"configType" type:"string" required:"true" enum:"ConfigCapabilityType"`
  3968  }
  3969  
  3970  // String returns the string representation.
  3971  //
  3972  // API parameter values that are decorated as "sensitive" in the API will not
  3973  // be included in the string output. The member name will be present, but the
  3974  // value will be replaced with "sensitive".
  3975  func (s DeleteConfigInput) String() string {
  3976  	return awsutil.Prettify(s)
  3977  }
  3978  
  3979  // GoString returns the string representation.
  3980  //
  3981  // API parameter values that are decorated as "sensitive" in the API will not
  3982  // be included in the string output. The member name will be present, but the
  3983  // value will be replaced with "sensitive".
  3984  func (s DeleteConfigInput) GoString() string {
  3985  	return s.String()
  3986  }
  3987  
  3988  // Validate inspects the fields of the type to determine if they are valid.
  3989  func (s *DeleteConfigInput) Validate() error {
  3990  	invalidParams := request.ErrInvalidParams{Context: "DeleteConfigInput"}
  3991  	if s.ConfigId == nil {
  3992  		invalidParams.Add(request.NewErrParamRequired("ConfigId"))
  3993  	}
  3994  	if s.ConfigId != nil && len(*s.ConfigId) < 1 {
  3995  		invalidParams.Add(request.NewErrParamMinLen("ConfigId", 1))
  3996  	}
  3997  	if s.ConfigType == nil {
  3998  		invalidParams.Add(request.NewErrParamRequired("ConfigType"))
  3999  	}
  4000  	if s.ConfigType != nil && len(*s.ConfigType) < 1 {
  4001  		invalidParams.Add(request.NewErrParamMinLen("ConfigType", 1))
  4002  	}
  4003  
  4004  	if invalidParams.Len() > 0 {
  4005  		return invalidParams
  4006  	}
  4007  	return nil
  4008  }
  4009  
  4010  // SetConfigId sets the ConfigId field's value.
  4011  func (s *DeleteConfigInput) SetConfigId(v string) *DeleteConfigInput {
  4012  	s.ConfigId = &v
  4013  	return s
  4014  }
  4015  
  4016  // SetConfigType sets the ConfigType field's value.
  4017  func (s *DeleteConfigInput) SetConfigType(v string) *DeleteConfigInput {
  4018  	s.ConfigType = &v
  4019  	return s
  4020  }
  4021  
  4022  type DeleteConfigOutput struct {
  4023  	_ struct{} `type:"structure"`
  4024  
  4025  	// ARN of a Config.
  4026  	ConfigArn *string `locationName:"configArn" type:"string"`
  4027  
  4028  	// UUID of a Config.
  4029  	ConfigId *string `locationName:"configId" type:"string"`
  4030  
  4031  	// Type of a Config.
  4032  	ConfigType *string `locationName:"configType" type:"string" enum:"ConfigCapabilityType"`
  4033  }
  4034  
  4035  // String returns the string representation.
  4036  //
  4037  // API parameter values that are decorated as "sensitive" in the API will not
  4038  // be included in the string output. The member name will be present, but the
  4039  // value will be replaced with "sensitive".
  4040  func (s DeleteConfigOutput) String() string {
  4041  	return awsutil.Prettify(s)
  4042  }
  4043  
  4044  // GoString returns the string representation.
  4045  //
  4046  // API parameter values that are decorated as "sensitive" in the API will not
  4047  // be included in the string output. The member name will be present, but the
  4048  // value will be replaced with "sensitive".
  4049  func (s DeleteConfigOutput) GoString() string {
  4050  	return s.String()
  4051  }
  4052  
  4053  // SetConfigArn sets the ConfigArn field's value.
  4054  func (s *DeleteConfigOutput) SetConfigArn(v string) *DeleteConfigOutput {
  4055  	s.ConfigArn = &v
  4056  	return s
  4057  }
  4058  
  4059  // SetConfigId sets the ConfigId field's value.
  4060  func (s *DeleteConfigOutput) SetConfigId(v string) *DeleteConfigOutput {
  4061  	s.ConfigId = &v
  4062  	return s
  4063  }
  4064  
  4065  // SetConfigType sets the ConfigType field's value.
  4066  func (s *DeleteConfigOutput) SetConfigType(v string) *DeleteConfigOutput {
  4067  	s.ConfigType = &v
  4068  	return s
  4069  }
  4070  
  4071  type DeleteDataflowEndpointGroupInput struct {
  4072  	_ struct{} `type:"structure" nopayload:"true"`
  4073  
  4074  	// UUID of a dataflow endpoint group.
  4075  	//
  4076  	// DataflowEndpointGroupId is a required field
  4077  	DataflowEndpointGroupId *string `location:"uri" locationName:"dataflowEndpointGroupId" type:"string" required:"true"`
  4078  }
  4079  
  4080  // String returns the string representation.
  4081  //
  4082  // API parameter values that are decorated as "sensitive" in the API will not
  4083  // be included in the string output. The member name will be present, but the
  4084  // value will be replaced with "sensitive".
  4085  func (s DeleteDataflowEndpointGroupInput) String() string {
  4086  	return awsutil.Prettify(s)
  4087  }
  4088  
  4089  // GoString returns the string representation.
  4090  //
  4091  // API parameter values that are decorated as "sensitive" in the API will not
  4092  // be included in the string output. The member name will be present, but the
  4093  // value will be replaced with "sensitive".
  4094  func (s DeleteDataflowEndpointGroupInput) GoString() string {
  4095  	return s.String()
  4096  }
  4097  
  4098  // Validate inspects the fields of the type to determine if they are valid.
  4099  func (s *DeleteDataflowEndpointGroupInput) Validate() error {
  4100  	invalidParams := request.ErrInvalidParams{Context: "DeleteDataflowEndpointGroupInput"}
  4101  	if s.DataflowEndpointGroupId == nil {
  4102  		invalidParams.Add(request.NewErrParamRequired("DataflowEndpointGroupId"))
  4103  	}
  4104  	if s.DataflowEndpointGroupId != nil && len(*s.DataflowEndpointGroupId) < 1 {
  4105  		invalidParams.Add(request.NewErrParamMinLen("DataflowEndpointGroupId", 1))
  4106  	}
  4107  
  4108  	if invalidParams.Len() > 0 {
  4109  		return invalidParams
  4110  	}
  4111  	return nil
  4112  }
  4113  
  4114  // SetDataflowEndpointGroupId sets the DataflowEndpointGroupId field's value.
  4115  func (s *DeleteDataflowEndpointGroupInput) SetDataflowEndpointGroupId(v string) *DeleteDataflowEndpointGroupInput {
  4116  	s.DataflowEndpointGroupId = &v
  4117  	return s
  4118  }
  4119  
  4120  type DeleteDataflowEndpointGroupOutput struct {
  4121  	_ struct{} `type:"structure"`
  4122  
  4123  	// UUID of a dataflow endpoint group.
  4124  	DataflowEndpointGroupId *string `locationName:"dataflowEndpointGroupId" type:"string"`
  4125  }
  4126  
  4127  // String returns the string representation.
  4128  //
  4129  // API parameter values that are decorated as "sensitive" in the API will not
  4130  // be included in the string output. The member name will be present, but the
  4131  // value will be replaced with "sensitive".
  4132  func (s DeleteDataflowEndpointGroupOutput) String() string {
  4133  	return awsutil.Prettify(s)
  4134  }
  4135  
  4136  // GoString returns the string representation.
  4137  //
  4138  // API parameter values that are decorated as "sensitive" in the API will not
  4139  // be included in the string output. The member name will be present, but the
  4140  // value will be replaced with "sensitive".
  4141  func (s DeleteDataflowEndpointGroupOutput) GoString() string {
  4142  	return s.String()
  4143  }
  4144  
  4145  // SetDataflowEndpointGroupId sets the DataflowEndpointGroupId field's value.
  4146  func (s *DeleteDataflowEndpointGroupOutput) SetDataflowEndpointGroupId(v string) *DeleteDataflowEndpointGroupOutput {
  4147  	s.DataflowEndpointGroupId = &v
  4148  	return s
  4149  }
  4150  
  4151  type DeleteMissionProfileInput struct {
  4152  	_ struct{} `type:"structure" nopayload:"true"`
  4153  
  4154  	// UUID of a mission profile.
  4155  	//
  4156  	// MissionProfileId is a required field
  4157  	MissionProfileId *string `location:"uri" locationName:"missionProfileId" type:"string" required:"true"`
  4158  }
  4159  
  4160  // String returns the string representation.
  4161  //
  4162  // API parameter values that are decorated as "sensitive" in the API will not
  4163  // be included in the string output. The member name will be present, but the
  4164  // value will be replaced with "sensitive".
  4165  func (s DeleteMissionProfileInput) String() string {
  4166  	return awsutil.Prettify(s)
  4167  }
  4168  
  4169  // GoString returns the string representation.
  4170  //
  4171  // API parameter values that are decorated as "sensitive" in the API will not
  4172  // be included in the string output. The member name will be present, but the
  4173  // value will be replaced with "sensitive".
  4174  func (s DeleteMissionProfileInput) GoString() string {
  4175  	return s.String()
  4176  }
  4177  
  4178  // Validate inspects the fields of the type to determine if they are valid.
  4179  func (s *DeleteMissionProfileInput) Validate() error {
  4180  	invalidParams := request.ErrInvalidParams{Context: "DeleteMissionProfileInput"}
  4181  	if s.MissionProfileId == nil {
  4182  		invalidParams.Add(request.NewErrParamRequired("MissionProfileId"))
  4183  	}
  4184  	if s.MissionProfileId != nil && len(*s.MissionProfileId) < 1 {
  4185  		invalidParams.Add(request.NewErrParamMinLen("MissionProfileId", 1))
  4186  	}
  4187  
  4188  	if invalidParams.Len() > 0 {
  4189  		return invalidParams
  4190  	}
  4191  	return nil
  4192  }
  4193  
  4194  // SetMissionProfileId sets the MissionProfileId field's value.
  4195  func (s *DeleteMissionProfileInput) SetMissionProfileId(v string) *DeleteMissionProfileInput {
  4196  	s.MissionProfileId = &v
  4197  	return s
  4198  }
  4199  
  4200  type DeleteMissionProfileOutput struct {
  4201  	_ struct{} `type:"structure"`
  4202  
  4203  	// UUID of a mission profile.
  4204  	MissionProfileId *string `locationName:"missionProfileId" type:"string"`
  4205  }
  4206  
  4207  // String returns the string representation.
  4208  //
  4209  // API parameter values that are decorated as "sensitive" in the API will not
  4210  // be included in the string output. The member name will be present, but the
  4211  // value will be replaced with "sensitive".
  4212  func (s DeleteMissionProfileOutput) String() string {
  4213  	return awsutil.Prettify(s)
  4214  }
  4215  
  4216  // GoString returns the string representation.
  4217  //
  4218  // API parameter values that are decorated as "sensitive" in the API will not
  4219  // be included in the string output. The member name will be present, but the
  4220  // value will be replaced with "sensitive".
  4221  func (s DeleteMissionProfileOutput) GoString() string {
  4222  	return s.String()
  4223  }
  4224  
  4225  // SetMissionProfileId sets the MissionProfileId field's value.
  4226  func (s *DeleteMissionProfileOutput) SetMissionProfileId(v string) *DeleteMissionProfileOutput {
  4227  	s.MissionProfileId = &v
  4228  	return s
  4229  }
  4230  
  4231  // Information about the demodulation Config.
  4232  type DemodulationConfig struct {
  4233  	_ struct{} `type:"structure"`
  4234  
  4235  	// Unvalidated JSON of a demodulation Config.
  4236  	//
  4237  	// UnvalidatedJSON is a required field
  4238  	UnvalidatedJSON *string `locationName:"unvalidatedJSON" min:"2" type:"string" required:"true"`
  4239  }
  4240  
  4241  // String returns the string representation.
  4242  //
  4243  // API parameter values that are decorated as "sensitive" in the API will not
  4244  // be included in the string output. The member name will be present, but the
  4245  // value will be replaced with "sensitive".
  4246  func (s DemodulationConfig) String() string {
  4247  	return awsutil.Prettify(s)
  4248  }
  4249  
  4250  // GoString returns the string representation.
  4251  //
  4252  // API parameter values that are decorated as "sensitive" in the API will not
  4253  // be included in the string output. The member name will be present, but the
  4254  // value will be replaced with "sensitive".
  4255  func (s DemodulationConfig) GoString() string {
  4256  	return s.String()
  4257  }
  4258  
  4259  // Validate inspects the fields of the type to determine if they are valid.
  4260  func (s *DemodulationConfig) Validate() error {
  4261  	invalidParams := request.ErrInvalidParams{Context: "DemodulationConfig"}
  4262  	if s.UnvalidatedJSON == nil {
  4263  		invalidParams.Add(request.NewErrParamRequired("UnvalidatedJSON"))
  4264  	}
  4265  	if s.UnvalidatedJSON != nil && len(*s.UnvalidatedJSON) < 2 {
  4266  		invalidParams.Add(request.NewErrParamMinLen("UnvalidatedJSON", 2))
  4267  	}
  4268  
  4269  	if invalidParams.Len() > 0 {
  4270  		return invalidParams
  4271  	}
  4272  	return nil
  4273  }
  4274  
  4275  // SetUnvalidatedJSON sets the UnvalidatedJSON field's value.
  4276  func (s *DemodulationConfig) SetUnvalidatedJSON(v string) *DemodulationConfig {
  4277  	s.UnvalidatedJSON = &v
  4278  	return s
  4279  }
  4280  
  4281  // Dependency encountered an error.
  4282  type DependencyException struct {
  4283  	_            struct{}                  `type:"structure"`
  4284  	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
  4285  
  4286  	Message_ *string `locationName:"message" type:"string"`
  4287  
  4288  	ParameterName *string `locationName:"parameterName" type:"string"`
  4289  }
  4290  
  4291  // String returns the string representation.
  4292  //
  4293  // API parameter values that are decorated as "sensitive" in the API will not
  4294  // be included in the string output. The member name will be present, but the
  4295  // value will be replaced with "sensitive".
  4296  func (s DependencyException) String() string {
  4297  	return awsutil.Prettify(s)
  4298  }
  4299  
  4300  // GoString returns the string representation.
  4301  //
  4302  // API parameter values that are decorated as "sensitive" in the API will not
  4303  // be included in the string output. The member name will be present, but the
  4304  // value will be replaced with "sensitive".
  4305  func (s DependencyException) GoString() string {
  4306  	return s.String()
  4307  }
  4308  
  4309  func newErrorDependencyException(v protocol.ResponseMetadata) error {
  4310  	return &DependencyException{
  4311  		RespMetadata: v,
  4312  	}
  4313  }
  4314  
  4315  // Code returns the exception type name.
  4316  func (s *DependencyException) Code() string {
  4317  	return "DependencyException"
  4318  }
  4319  
  4320  // Message returns the exception's message.
  4321  func (s *DependencyException) Message() string {
  4322  	if s.Message_ != nil {
  4323  		return *s.Message_
  4324  	}
  4325  	return ""
  4326  }
  4327  
  4328  // OrigErr always returns nil, satisfies awserr.Error interface.
  4329  func (s *DependencyException) OrigErr() error {
  4330  	return nil
  4331  }
  4332  
  4333  func (s *DependencyException) Error() string {
  4334  	return fmt.Sprintf("%s: %s\n%s", s.Code(), s.Message(), s.String())
  4335  }
  4336  
  4337  // Status code returns the HTTP status code for the request's response error.
  4338  func (s *DependencyException) StatusCode() int {
  4339  	return s.RespMetadata.StatusCode
  4340  }
  4341  
  4342  // RequestID returns the service's response RequestID for request.
  4343  func (s *DependencyException) RequestID() string {
  4344  	return s.RespMetadata.RequestID
  4345  }
  4346  
  4347  type DescribeContactInput struct {
  4348  	_ struct{} `type:"structure" nopayload:"true"`
  4349  
  4350  	// UUID of a contact.
  4351  	//
  4352  	// ContactId is a required field
  4353  	ContactId *string `location:"uri" locationName:"contactId" type:"string" required:"true"`
  4354  }
  4355  
  4356  // String returns the string representation.
  4357  //
  4358  // API parameter values that are decorated as "sensitive" in the API will not
  4359  // be included in the string output. The member name will be present, but the
  4360  // value will be replaced with "sensitive".
  4361  func (s DescribeContactInput) String() string {
  4362  	return awsutil.Prettify(s)
  4363  }
  4364  
  4365  // GoString returns the string representation.
  4366  //
  4367  // API parameter values that are decorated as "sensitive" in the API will not
  4368  // be included in the string output. The member name will be present, but the
  4369  // value will be replaced with "sensitive".
  4370  func (s DescribeContactInput) GoString() string {
  4371  	return s.String()
  4372  }
  4373  
  4374  // Validate inspects the fields of the type to determine if they are valid.
  4375  func (s *DescribeContactInput) Validate() error {
  4376  	invalidParams := request.ErrInvalidParams{Context: "DescribeContactInput"}
  4377  	if s.ContactId == nil {
  4378  		invalidParams.Add(request.NewErrParamRequired("ContactId"))
  4379  	}
  4380  	if s.ContactId != nil && len(*s.ContactId) < 1 {
  4381  		invalidParams.Add(request.NewErrParamMinLen("ContactId", 1))
  4382  	}
  4383  
  4384  	if invalidParams.Len() > 0 {
  4385  		return invalidParams
  4386  	}
  4387  	return nil
  4388  }
  4389  
  4390  // SetContactId sets the ContactId field's value.
  4391  func (s *DescribeContactInput) SetContactId(v string) *DescribeContactInput {
  4392  	s.ContactId = &v
  4393  	return s
  4394  }
  4395  
  4396  type DescribeContactOutput struct {
  4397  	_ struct{} `type:"structure"`
  4398  
  4399  	// UUID of a contact.
  4400  	ContactId *string `locationName:"contactId" type:"string"`
  4401  
  4402  	// Status of a contact.
  4403  	ContactStatus *string `locationName:"contactStatus" type:"string" enum:"ContactStatus"`
  4404  
  4405  	// List describing source and destination details for each dataflow edge.
  4406  	DataflowList []*DataflowDetail `locationName:"dataflowList" type:"list"`
  4407  
  4408  	// End time of a contact.
  4409  	EndTime *time.Time `locationName:"endTime" type:"timestamp"`
  4410  
  4411  	// Error message for a contact.
  4412  	ErrorMessage *string `locationName:"errorMessage" type:"string"`
  4413  
  4414  	// Ground station for a contact.
  4415  	GroundStation *string `locationName:"groundStation" type:"string"`
  4416  
  4417  	// Maximum elevation angle of a contact.
  4418  	MaximumElevation *Elevation `locationName:"maximumElevation" type:"structure"`
  4419  
  4420  	// ARN of a mission profile.
  4421  	MissionProfileArn *string `locationName:"missionProfileArn" type:"string"`
  4422  
  4423  	// Amount of time after a contact ends that you’d like to receive a CloudWatch
  4424  	// event indicating the pass has finished.
  4425  	PostPassEndTime *time.Time `locationName:"postPassEndTime" type:"timestamp"`
  4426  
  4427  	// Amount of time prior to contact start you’d like to receive a CloudWatch
  4428  	// event indicating an upcoming pass.
  4429  	PrePassStartTime *time.Time `locationName:"prePassStartTime" type:"timestamp"`
  4430  
  4431  	// Region of a contact.
  4432  	Region *string `locationName:"region" type:"string"`
  4433  
  4434  	// ARN of a satellite.
  4435  	SatelliteArn *string `locationName:"satelliteArn" type:"string"`
  4436  
  4437  	// Start time of a contact.
  4438  	StartTime *time.Time `locationName:"startTime" type:"timestamp"`
  4439  
  4440  	// Tags assigned to a contact.
  4441  	Tags map[string]*string `locationName:"tags" type:"map"`
  4442  }
  4443  
  4444  // String returns the string representation.
  4445  //
  4446  // API parameter values that are decorated as "sensitive" in the API will not
  4447  // be included in the string output. The member name will be present, but the
  4448  // value will be replaced with "sensitive".
  4449  func (s DescribeContactOutput) String() string {
  4450  	return awsutil.Prettify(s)
  4451  }
  4452  
  4453  // GoString returns the string representation.
  4454  //
  4455  // API parameter values that are decorated as "sensitive" in the API will not
  4456  // be included in the string output. The member name will be present, but the
  4457  // value will be replaced with "sensitive".
  4458  func (s DescribeContactOutput) GoString() string {
  4459  	return s.String()
  4460  }
  4461  
  4462  // SetContactId sets the ContactId field's value.
  4463  func (s *DescribeContactOutput) SetContactId(v string) *DescribeContactOutput {
  4464  	s.ContactId = &v
  4465  	return s
  4466  }
  4467  
  4468  // SetContactStatus sets the ContactStatus field's value.
  4469  func (s *DescribeContactOutput) SetContactStatus(v string) *DescribeContactOutput {
  4470  	s.ContactStatus = &v
  4471  	return s
  4472  }
  4473  
  4474  // SetDataflowList sets the DataflowList field's value.
  4475  func (s *DescribeContactOutput) SetDataflowList(v []*DataflowDetail) *DescribeContactOutput {
  4476  	s.DataflowList = v
  4477  	return s
  4478  }
  4479  
  4480  // SetEndTime sets the EndTime field's value.
  4481  func (s *DescribeContactOutput) SetEndTime(v time.Time) *DescribeContactOutput {
  4482  	s.EndTime = &v
  4483  	return s
  4484  }
  4485  
  4486  // SetErrorMessage sets the ErrorMessage field's value.
  4487  func (s *DescribeContactOutput) SetErrorMessage(v string) *DescribeContactOutput {
  4488  	s.ErrorMessage = &v
  4489  	return s
  4490  }
  4491  
  4492  // SetGroundStation sets the GroundStation field's value.
  4493  func (s *DescribeContactOutput) SetGroundStation(v string) *DescribeContactOutput {
  4494  	s.GroundStation = &v
  4495  	return s
  4496  }
  4497  
  4498  // SetMaximumElevation sets the MaximumElevation field's value.
  4499  func (s *DescribeContactOutput) SetMaximumElevation(v *Elevation) *DescribeContactOutput {
  4500  	s.MaximumElevation = v
  4501  	return s
  4502  }
  4503  
  4504  // SetMissionProfileArn sets the MissionProfileArn field's value.
  4505  func (s *DescribeContactOutput) SetMissionProfileArn(v string) *DescribeContactOutput {
  4506  	s.MissionProfileArn = &v
  4507  	return s
  4508  }
  4509  
  4510  // SetPostPassEndTime sets the PostPassEndTime field's value.
  4511  func (s *DescribeContactOutput) SetPostPassEndTime(v time.Time) *DescribeContactOutput {
  4512  	s.PostPassEndTime = &v
  4513  	return s
  4514  }
  4515  
  4516  // SetPrePassStartTime sets the PrePassStartTime field's value.
  4517  func (s *DescribeContactOutput) SetPrePassStartTime(v time.Time) *DescribeContactOutput {
  4518  	s.PrePassStartTime = &v
  4519  	return s
  4520  }
  4521  
  4522  // SetRegion sets the Region field's value.
  4523  func (s *DescribeContactOutput) SetRegion(v string) *DescribeContactOutput {
  4524  	s.Region = &v
  4525  	return s
  4526  }
  4527  
  4528  // SetSatelliteArn sets the SatelliteArn field's value.
  4529  func (s *DescribeContactOutput) SetSatelliteArn(v string) *DescribeContactOutput {
  4530  	s.SatelliteArn = &v
  4531  	return s
  4532  }
  4533  
  4534  // SetStartTime sets the StartTime field's value.
  4535  func (s *DescribeContactOutput) SetStartTime(v time.Time) *DescribeContactOutput {
  4536  	s.StartTime = &v
  4537  	return s
  4538  }
  4539  
  4540  // SetTags sets the Tags field's value.
  4541  func (s *DescribeContactOutput) SetTags(v map[string]*string) *DescribeContactOutput {
  4542  	s.Tags = v
  4543  	return s
  4544  }
  4545  
  4546  // Dataflow details for the destination side.
  4547  type Destination struct {
  4548  	_ struct{} `type:"structure"`
  4549  
  4550  	// Additional details for a Config, if type is dataflow endpoint or antenna
  4551  	// demod decode.
  4552  	ConfigDetails *ConfigDetails `locationName:"configDetails" type:"structure"`
  4553  
  4554  	// UUID of a Config.
  4555  	ConfigId *string `locationName:"configId" type:"string"`
  4556  
  4557  	// Type of a Config.
  4558  	ConfigType *string `locationName:"configType" type:"string" enum:"ConfigCapabilityType"`
  4559  
  4560  	// Region of a dataflow destination.
  4561  	DataflowDestinationRegion *string `locationName:"dataflowDestinationRegion" type:"string"`
  4562  }
  4563  
  4564  // String returns the string representation.
  4565  //
  4566  // API parameter values that are decorated as "sensitive" in the API will not
  4567  // be included in the string output. The member name will be present, but the
  4568  // value will be replaced with "sensitive".
  4569  func (s Destination) String() string {
  4570  	return awsutil.Prettify(s)
  4571  }
  4572  
  4573  // GoString returns the string representation.
  4574  //
  4575  // API parameter values that are decorated as "sensitive" in the API will not
  4576  // be included in the string output. The member name will be present, but the
  4577  // value will be replaced with "sensitive".
  4578  func (s Destination) GoString() string {
  4579  	return s.String()
  4580  }
  4581  
  4582  // SetConfigDetails sets the ConfigDetails field's value.
  4583  func (s *Destination) SetConfigDetails(v *ConfigDetails) *Destination {
  4584  	s.ConfigDetails = v
  4585  	return s
  4586  }
  4587  
  4588  // SetConfigId sets the ConfigId field's value.
  4589  func (s *Destination) SetConfigId(v string) *Destination {
  4590  	s.ConfigId = &v
  4591  	return s
  4592  }
  4593  
  4594  // SetConfigType sets the ConfigType field's value.
  4595  func (s *Destination) SetConfigType(v string) *Destination {
  4596  	s.ConfigType = &v
  4597  	return s
  4598  }
  4599  
  4600  // SetDataflowDestinationRegion sets the DataflowDestinationRegion field's value.
  4601  func (s *Destination) SetDataflowDestinationRegion(v string) *Destination {
  4602  	s.DataflowDestinationRegion = &v
  4603  	return s
  4604  }
  4605  
  4606  // Object that represents EIRP.
  4607  type Eirp struct {
  4608  	_ struct{} `type:"structure"`
  4609  
  4610  	// Units of an EIRP.
  4611  	//
  4612  	// Units is a required field
  4613  	Units *string `locationName:"units" type:"string" required:"true" enum:"EirpUnits"`
  4614  
  4615  	// Value of an EIRP. Valid values are between 20.0 to 50.0 dBW.
  4616  	//
  4617  	// Value is a required field
  4618  	Value *float64 `locationName:"value" type:"double" required:"true"`
  4619  }
  4620  
  4621  // String returns the string representation.
  4622  //
  4623  // API parameter values that are decorated as "sensitive" in the API will not
  4624  // be included in the string output. The member name will be present, but the
  4625  // value will be replaced with "sensitive".
  4626  func (s Eirp) String() string {
  4627  	return awsutil.Prettify(s)
  4628  }
  4629  
  4630  // GoString returns the string representation.
  4631  //
  4632  // API parameter values that are decorated as "sensitive" in the API will not
  4633  // be included in the string output. The member name will be present, but the
  4634  // value will be replaced with "sensitive".
  4635  func (s Eirp) GoString() string {
  4636  	return s.String()
  4637  }
  4638  
  4639  // Validate inspects the fields of the type to determine if they are valid.
  4640  func (s *Eirp) Validate() error {
  4641  	invalidParams := request.ErrInvalidParams{Context: "Eirp"}
  4642  	if s.Units == nil {
  4643  		invalidParams.Add(request.NewErrParamRequired("Units"))
  4644  	}
  4645  	if s.Value == nil {
  4646  		invalidParams.Add(request.NewErrParamRequired("Value"))
  4647  	}
  4648  
  4649  	if invalidParams.Len() > 0 {
  4650  		return invalidParams
  4651  	}
  4652  	return nil
  4653  }
  4654  
  4655  // SetUnits sets the Units field's value.
  4656  func (s *Eirp) SetUnits(v string) *Eirp {
  4657  	s.Units = &v
  4658  	return s
  4659  }
  4660  
  4661  // SetValue sets the Value field's value.
  4662  func (s *Eirp) SetValue(v float64) *Eirp {
  4663  	s.Value = &v
  4664  	return s
  4665  }
  4666  
  4667  // Elevation angle of the satellite in the sky during a contact.
  4668  type Elevation struct {
  4669  	_ struct{} `type:"structure"`
  4670  
  4671  	// Elevation angle units.
  4672  	//
  4673  	// Unit is a required field
  4674  	Unit *string `locationName:"unit" type:"string" required:"true" enum:"AngleUnits"`
  4675  
  4676  	// Elevation angle value.
  4677  	//
  4678  	// Value is a required field
  4679  	Value *float64 `locationName:"value" type:"double" required:"true"`
  4680  }
  4681  
  4682  // String returns the string representation.
  4683  //
  4684  // API parameter values that are decorated as "sensitive" in the API will not
  4685  // be included in the string output. The member name will be present, but the
  4686  // value will be replaced with "sensitive".
  4687  func (s Elevation) String() string {
  4688  	return awsutil.Prettify(s)
  4689  }
  4690  
  4691  // GoString returns the string representation.
  4692  //
  4693  // API parameter values that are decorated as "sensitive" in the API will not
  4694  // be included in the string output. The member name will be present, but the
  4695  // value will be replaced with "sensitive".
  4696  func (s Elevation) GoString() string {
  4697  	return s.String()
  4698  }
  4699  
  4700  // SetUnit sets the Unit field's value.
  4701  func (s *Elevation) SetUnit(v string) *Elevation {
  4702  	s.Unit = &v
  4703  	return s
  4704  }
  4705  
  4706  // SetValue sets the Value field's value.
  4707  func (s *Elevation) SetValue(v float64) *Elevation {
  4708  	s.Value = &v
  4709  	return s
  4710  }
  4711  
  4712  // Information about the endpoint details.
  4713  type EndpointDetails struct {
  4714  	_ struct{} `type:"structure"`
  4715  
  4716  	// A dataflow endpoint.
  4717  	Endpoint *DataflowEndpoint `locationName:"endpoint" type:"structure"`
  4718  
  4719  	// Endpoint security details.
  4720  	SecurityDetails *SecurityDetails `locationName:"securityDetails" type:"structure"`
  4721  }
  4722  
  4723  // String returns the string representation.
  4724  //
  4725  // API parameter values that are decorated as "sensitive" in the API will not
  4726  // be included in the string output. The member name will be present, but the
  4727  // value will be replaced with "sensitive".
  4728  func (s EndpointDetails) String() string {
  4729  	return awsutil.Prettify(s)
  4730  }
  4731  
  4732  // GoString returns the string representation.
  4733  //
  4734  // API parameter values that are decorated as "sensitive" in the API will not
  4735  // be included in the string output. The member name will be present, but the
  4736  // value will be replaced with "sensitive".
  4737  func (s EndpointDetails) GoString() string {
  4738  	return s.String()
  4739  }
  4740  
  4741  // Validate inspects the fields of the type to determine if they are valid.
  4742  func (s *EndpointDetails) Validate() error {
  4743  	invalidParams := request.ErrInvalidParams{Context: "EndpointDetails"}
  4744  	if s.Endpoint != nil {
  4745  		if err := s.Endpoint.Validate(); err != nil {
  4746  			invalidParams.AddNested("Endpoint", err.(request.ErrInvalidParams))
  4747  		}
  4748  	}
  4749  	if s.SecurityDetails != nil {
  4750  		if err := s.SecurityDetails.Validate(); err != nil {
  4751  			invalidParams.AddNested("SecurityDetails", err.(request.ErrInvalidParams))
  4752  		}
  4753  	}
  4754  
  4755  	if invalidParams.Len() > 0 {
  4756  		return invalidParams
  4757  	}
  4758  	return nil
  4759  }
  4760  
  4761  // SetEndpoint sets the Endpoint field's value.
  4762  func (s *EndpointDetails) SetEndpoint(v *DataflowEndpoint) *EndpointDetails {
  4763  	s.Endpoint = v
  4764  	return s
  4765  }
  4766  
  4767  // SetSecurityDetails sets the SecurityDetails field's value.
  4768  func (s *EndpointDetails) SetSecurityDetails(v *SecurityDetails) *EndpointDetails {
  4769  	s.SecurityDetails = v
  4770  	return s
  4771  }
  4772  
  4773  // Object that describes the frequency.
  4774  type Frequency struct {
  4775  	_ struct{} `type:"structure"`
  4776  
  4777  	// Frequency units.
  4778  	//
  4779  	// Units is a required field
  4780  	Units *string `locationName:"units" type:"string" required:"true" enum:"FrequencyUnits"`
  4781  
  4782  	// Frequency value. Valid values are between 2200 to 2300 MHz and 7750 to 8400
  4783  	// MHz for downlink and 2025 to 2120 MHz for uplink.
  4784  	//
  4785  	// Value is a required field
  4786  	Value *float64 `locationName:"value" type:"double" required:"true"`
  4787  }
  4788  
  4789  // String returns the string representation.
  4790  //
  4791  // API parameter values that are decorated as "sensitive" in the API will not
  4792  // be included in the string output. The member name will be present, but the
  4793  // value will be replaced with "sensitive".
  4794  func (s Frequency) String() string {
  4795  	return awsutil.Prettify(s)
  4796  }
  4797  
  4798  // GoString returns the string representation.
  4799  //
  4800  // API parameter values that are decorated as "sensitive" in the API will not
  4801  // be included in the string output. The member name will be present, but the
  4802  // value will be replaced with "sensitive".
  4803  func (s Frequency) GoString() string {
  4804  	return s.String()
  4805  }
  4806  
  4807  // Validate inspects the fields of the type to determine if they are valid.
  4808  func (s *Frequency) Validate() error {
  4809  	invalidParams := request.ErrInvalidParams{Context: "Frequency"}
  4810  	if s.Units == nil {
  4811  		invalidParams.Add(request.NewErrParamRequired("Units"))
  4812  	}
  4813  	if s.Value == nil {
  4814  		invalidParams.Add(request.NewErrParamRequired("Value"))
  4815  	}
  4816  
  4817  	if invalidParams.Len() > 0 {
  4818  		return invalidParams
  4819  	}
  4820  	return nil
  4821  }
  4822  
  4823  // SetUnits sets the Units field's value.
  4824  func (s *Frequency) SetUnits(v string) *Frequency {
  4825  	s.Units = &v
  4826  	return s
  4827  }
  4828  
  4829  // SetValue sets the Value field's value.
  4830  func (s *Frequency) SetValue(v float64) *Frequency {
  4831  	s.Value = &v
  4832  	return s
  4833  }
  4834  
  4835  // Object that describes the frequency bandwidth.
  4836  type FrequencyBandwidth struct {
  4837  	_ struct{} `type:"structure"`
  4838  
  4839  	// Frequency bandwidth units.
  4840  	//
  4841  	// Units is a required field
  4842  	Units *string `locationName:"units" type:"string" required:"true" enum:"BandwidthUnits"`
  4843  
  4844  	// Frequency bandwidth value. AWS Ground Station currently has the following
  4845  	// bandwidth limitations:
  4846  	//
  4847  	//    * For AntennaDownlinkDemodDecodeconfig, valid values are between 125 kHz
  4848  	//    to 650 MHz.
  4849  	//
  4850  	//    * For AntennaDownlinkconfig, valid values are between 10 kHz to 54 MHz.
  4851  	//
  4852  	//    * For AntennaUplinkConfig, valid values are between 10 kHz to 54 MHz.
  4853  	//
  4854  	// Value is a required field
  4855  	Value *float64 `locationName:"value" type:"double" required:"true"`
  4856  }
  4857  
  4858  // String returns the string representation.
  4859  //
  4860  // API parameter values that are decorated as "sensitive" in the API will not
  4861  // be included in the string output. The member name will be present, but the
  4862  // value will be replaced with "sensitive".
  4863  func (s FrequencyBandwidth) String() string {
  4864  	return awsutil.Prettify(s)
  4865  }
  4866  
  4867  // GoString returns the string representation.
  4868  //
  4869  // API parameter values that are decorated as "sensitive" in the API will not
  4870  // be included in the string output. The member name will be present, but the
  4871  // value will be replaced with "sensitive".
  4872  func (s FrequencyBandwidth) GoString() string {
  4873  	return s.String()
  4874  }
  4875  
  4876  // Validate inspects the fields of the type to determine if they are valid.
  4877  func (s *FrequencyBandwidth) Validate() error {
  4878  	invalidParams := request.ErrInvalidParams{Context: "FrequencyBandwidth"}
  4879  	if s.Units == nil {
  4880  		invalidParams.Add(request.NewErrParamRequired("Units"))
  4881  	}
  4882  	if s.Value == nil {
  4883  		invalidParams.Add(request.NewErrParamRequired("Value"))
  4884  	}
  4885  
  4886  	if invalidParams.Len() > 0 {
  4887  		return invalidParams
  4888  	}
  4889  	return nil
  4890  }
  4891  
  4892  // SetUnits sets the Units field's value.
  4893  func (s *FrequencyBandwidth) SetUnits(v string) *FrequencyBandwidth {
  4894  	s.Units = &v
  4895  	return s
  4896  }
  4897  
  4898  // SetValue sets the Value field's value.
  4899  func (s *FrequencyBandwidth) SetValue(v float64) *FrequencyBandwidth {
  4900  	s.Value = &v
  4901  	return s
  4902  }
  4903  
  4904  type GetConfigInput struct {
  4905  	_ struct{} `type:"structure" nopayload:"true"`
  4906  
  4907  	// UUID of a Config.
  4908  	//
  4909  	// ConfigId is a required field
  4910  	ConfigId *string `location:"uri" locationName:"configId" type:"string" required:"true"`
  4911  
  4912  	// Type of a Config.
  4913  	//
  4914  	// ConfigType is a required field
  4915  	ConfigType *string `location:"uri" locationName:"configType" type:"string" required:"true" enum:"ConfigCapabilityType"`
  4916  }
  4917  
  4918  // String returns the string representation.
  4919  //
  4920  // API parameter values that are decorated as "sensitive" in the API will not
  4921  // be included in the string output. The member name will be present, but the
  4922  // value will be replaced with "sensitive".
  4923  func (s GetConfigInput) String() string {
  4924  	return awsutil.Prettify(s)
  4925  }
  4926  
  4927  // GoString returns the string representation.
  4928  //
  4929  // API parameter values that are decorated as "sensitive" in the API will not
  4930  // be included in the string output. The member name will be present, but the
  4931  // value will be replaced with "sensitive".
  4932  func (s GetConfigInput) GoString() string {
  4933  	return s.String()
  4934  }
  4935  
  4936  // Validate inspects the fields of the type to determine if they are valid.
  4937  func (s *GetConfigInput) Validate() error {
  4938  	invalidParams := request.ErrInvalidParams{Context: "GetConfigInput"}
  4939  	if s.ConfigId == nil {
  4940  		invalidParams.Add(request.NewErrParamRequired("ConfigId"))
  4941  	}
  4942  	if s.ConfigId != nil && len(*s.ConfigId) < 1 {
  4943  		invalidParams.Add(request.NewErrParamMinLen("ConfigId", 1))
  4944  	}
  4945  	if s.ConfigType == nil {
  4946  		invalidParams.Add(request.NewErrParamRequired("ConfigType"))
  4947  	}
  4948  	if s.ConfigType != nil && len(*s.ConfigType) < 1 {
  4949  		invalidParams.Add(request.NewErrParamMinLen("ConfigType", 1))
  4950  	}
  4951  
  4952  	if invalidParams.Len() > 0 {
  4953  		return invalidParams
  4954  	}
  4955  	return nil
  4956  }
  4957  
  4958  // SetConfigId sets the ConfigId field's value.
  4959  func (s *GetConfigInput) SetConfigId(v string) *GetConfigInput {
  4960  	s.ConfigId = &v
  4961  	return s
  4962  }
  4963  
  4964  // SetConfigType sets the ConfigType field's value.
  4965  func (s *GetConfigInput) SetConfigType(v string) *GetConfigInput {
  4966  	s.ConfigType = &v
  4967  	return s
  4968  }
  4969  
  4970  type GetConfigOutput struct {
  4971  	_ struct{} `type:"structure"`
  4972  
  4973  	// ARN of a Config
  4974  	//
  4975  	// ConfigArn is a required field
  4976  	ConfigArn *string `locationName:"configArn" type:"string" required:"true"`
  4977  
  4978  	// Data elements in a Config.
  4979  	//
  4980  	// ConfigData is a required field
  4981  	ConfigData *ConfigTypeData `locationName:"configData" type:"structure" required:"true"`
  4982  
  4983  	// UUID of a Config.
  4984  	//
  4985  	// ConfigId is a required field
  4986  	ConfigId *string `locationName:"configId" type:"string" required:"true"`
  4987  
  4988  	// Type of a Config.
  4989  	ConfigType *string `locationName:"configType" type:"string" enum:"ConfigCapabilityType"`
  4990  
  4991  	// Name of a Config.
  4992  	//
  4993  	// Name is a required field
  4994  	Name *string `locationName:"name" type:"string" required:"true"`
  4995  
  4996  	// Tags assigned to a Config.
  4997  	Tags map[string]*string `locationName:"tags" type:"map"`
  4998  }
  4999  
  5000  // String returns the string representation.
  5001  //
  5002  // API parameter values that are decorated as "sensitive" in the API will not
  5003  // be included in the string output. The member name will be present, but the
  5004  // value will be replaced with "sensitive".
  5005  func (s GetConfigOutput) String() string {
  5006  	return awsutil.Prettify(s)
  5007  }
  5008  
  5009  // GoString returns the string representation.
  5010  //
  5011  // API parameter values that are decorated as "sensitive" in the API will not
  5012  // be included in the string output. The member name will be present, but the
  5013  // value will be replaced with "sensitive".
  5014  func (s GetConfigOutput) GoString() string {
  5015  	return s.String()
  5016  }
  5017  
  5018  // SetConfigArn sets the ConfigArn field's value.
  5019  func (s *GetConfigOutput) SetConfigArn(v string) *GetConfigOutput {
  5020  	s.ConfigArn = &v
  5021  	return s
  5022  }
  5023  
  5024  // SetConfigData sets the ConfigData field's value.
  5025  func (s *GetConfigOutput) SetConfigData(v *ConfigTypeData) *GetConfigOutput {
  5026  	s.ConfigData = v
  5027  	return s
  5028  }
  5029  
  5030  // SetConfigId sets the ConfigId field's value.
  5031  func (s *GetConfigOutput) SetConfigId(v string) *GetConfigOutput {
  5032  	s.ConfigId = &v
  5033  	return s
  5034  }
  5035  
  5036  // SetConfigType sets the ConfigType field's value.
  5037  func (s *GetConfigOutput) SetConfigType(v string) *GetConfigOutput {
  5038  	s.ConfigType = &v
  5039  	return s
  5040  }
  5041  
  5042  // SetName sets the Name field's value.
  5043  func (s *GetConfigOutput) SetName(v string) *GetConfigOutput {
  5044  	s.Name = &v
  5045  	return s
  5046  }
  5047  
  5048  // SetTags sets the Tags field's value.
  5049  func (s *GetConfigOutput) SetTags(v map[string]*string) *GetConfigOutput {
  5050  	s.Tags = v
  5051  	return s
  5052  }
  5053  
  5054  type GetDataflowEndpointGroupInput struct {
  5055  	_ struct{} `type:"structure" nopayload:"true"`
  5056  
  5057  	// UUID of a dataflow endpoint group.
  5058  	//
  5059  	// DataflowEndpointGroupId is a required field
  5060  	DataflowEndpointGroupId *string `location:"uri" locationName:"dataflowEndpointGroupId" type:"string" required:"true"`
  5061  }
  5062  
  5063  // String returns the string representation.
  5064  //
  5065  // API parameter values that are decorated as "sensitive" in the API will not
  5066  // be included in the string output. The member name will be present, but the
  5067  // value will be replaced with "sensitive".
  5068  func (s GetDataflowEndpointGroupInput) String() string {
  5069  	return awsutil.Prettify(s)
  5070  }
  5071  
  5072  // GoString returns the string representation.
  5073  //
  5074  // API parameter values that are decorated as "sensitive" in the API will not
  5075  // be included in the string output. The member name will be present, but the
  5076  // value will be replaced with "sensitive".
  5077  func (s GetDataflowEndpointGroupInput) GoString() string {
  5078  	return s.String()
  5079  }
  5080  
  5081  // Validate inspects the fields of the type to determine if they are valid.
  5082  func (s *GetDataflowEndpointGroupInput) Validate() error {
  5083  	invalidParams := request.ErrInvalidParams{Context: "GetDataflowEndpointGroupInput"}
  5084  	if s.DataflowEndpointGroupId == nil {
  5085  		invalidParams.Add(request.NewErrParamRequired("DataflowEndpointGroupId"))
  5086  	}
  5087  	if s.DataflowEndpointGroupId != nil && len(*s.DataflowEndpointGroupId) < 1 {
  5088  		invalidParams.Add(request.NewErrParamMinLen("DataflowEndpointGroupId", 1))
  5089  	}
  5090  
  5091  	if invalidParams.Len() > 0 {
  5092  		return invalidParams
  5093  	}
  5094  	return nil
  5095  }
  5096  
  5097  // SetDataflowEndpointGroupId sets the DataflowEndpointGroupId field's value.
  5098  func (s *GetDataflowEndpointGroupInput) SetDataflowEndpointGroupId(v string) *GetDataflowEndpointGroupInput {
  5099  	s.DataflowEndpointGroupId = &v
  5100  	return s
  5101  }
  5102  
  5103  type GetDataflowEndpointGroupOutput struct {
  5104  	_ struct{} `type:"structure"`
  5105  
  5106  	// ARN of a dataflow endpoint group.
  5107  	DataflowEndpointGroupArn *string `locationName:"dataflowEndpointGroupArn" type:"string"`
  5108  
  5109  	// UUID of a dataflow endpoint group.
  5110  	DataflowEndpointGroupId *string `locationName:"dataflowEndpointGroupId" type:"string"`
  5111  
  5112  	// Details of a dataflow endpoint.
  5113  	EndpointsDetails []*EndpointDetails `locationName:"endpointsDetails" type:"list"`
  5114  
  5115  	// Tags assigned to a dataflow endpoint group.
  5116  	Tags map[string]*string `locationName:"tags" type:"map"`
  5117  }
  5118  
  5119  // String returns the string representation.
  5120  //
  5121  // API parameter values that are decorated as "sensitive" in the API will not
  5122  // be included in the string output. The member name will be present, but the
  5123  // value will be replaced with "sensitive".
  5124  func (s GetDataflowEndpointGroupOutput) String() string {
  5125  	return awsutil.Prettify(s)
  5126  }
  5127  
  5128  // GoString returns the string representation.
  5129  //
  5130  // API parameter values that are decorated as "sensitive" in the API will not
  5131  // be included in the string output. The member name will be present, but the
  5132  // value will be replaced with "sensitive".
  5133  func (s GetDataflowEndpointGroupOutput) GoString() string {
  5134  	return s.String()
  5135  }
  5136  
  5137  // SetDataflowEndpointGroupArn sets the DataflowEndpointGroupArn field's value.
  5138  func (s *GetDataflowEndpointGroupOutput) SetDataflowEndpointGroupArn(v string) *GetDataflowEndpointGroupOutput {
  5139  	s.DataflowEndpointGroupArn = &v
  5140  	return s
  5141  }
  5142  
  5143  // SetDataflowEndpointGroupId sets the DataflowEndpointGroupId field's value.
  5144  func (s *GetDataflowEndpointGroupOutput) SetDataflowEndpointGroupId(v string) *GetDataflowEndpointGroupOutput {
  5145  	s.DataflowEndpointGroupId = &v
  5146  	return s
  5147  }
  5148  
  5149  // SetEndpointsDetails sets the EndpointsDetails field's value.
  5150  func (s *GetDataflowEndpointGroupOutput) SetEndpointsDetails(v []*EndpointDetails) *GetDataflowEndpointGroupOutput {
  5151  	s.EndpointsDetails = v
  5152  	return s
  5153  }
  5154  
  5155  // SetTags sets the Tags field's value.
  5156  func (s *GetDataflowEndpointGroupOutput) SetTags(v map[string]*string) *GetDataflowEndpointGroupOutput {
  5157  	s.Tags = v
  5158  	return s
  5159  }
  5160  
  5161  type GetMinuteUsageInput struct {
  5162  	_ struct{} `type:"structure"`
  5163  
  5164  	// The month being requested, with a value of 1-12.
  5165  	//
  5166  	// Month is a required field
  5167  	Month *int64 `locationName:"month" type:"integer" required:"true"`
  5168  
  5169  	// The year being requested, in the format of YYYY.
  5170  	//
  5171  	// Year is a required field
  5172  	Year *int64 `locationName:"year" type:"integer" required:"true"`
  5173  }
  5174  
  5175  // String returns the string representation.
  5176  //
  5177  // API parameter values that are decorated as "sensitive" in the API will not
  5178  // be included in the string output. The member name will be present, but the
  5179  // value will be replaced with "sensitive".
  5180  func (s GetMinuteUsageInput) String() string {
  5181  	return awsutil.Prettify(s)
  5182  }
  5183  
  5184  // GoString returns the string representation.
  5185  //
  5186  // API parameter values that are decorated as "sensitive" in the API will not
  5187  // be included in the string output. The member name will be present, but the
  5188  // value will be replaced with "sensitive".
  5189  func (s GetMinuteUsageInput) GoString() string {
  5190  	return s.String()
  5191  }
  5192  
  5193  // Validate inspects the fields of the type to determine if they are valid.
  5194  func (s *GetMinuteUsageInput) Validate() error {
  5195  	invalidParams := request.ErrInvalidParams{Context: "GetMinuteUsageInput"}
  5196  	if s.Month == nil {
  5197  		invalidParams.Add(request.NewErrParamRequired("Month"))
  5198  	}
  5199  	if s.Year == nil {
  5200  		invalidParams.Add(request.NewErrParamRequired("Year"))
  5201  	}
  5202  
  5203  	if invalidParams.Len() > 0 {
  5204  		return invalidParams
  5205  	}
  5206  	return nil
  5207  }
  5208  
  5209  // SetMonth sets the Month field's value.
  5210  func (s *GetMinuteUsageInput) SetMonth(v int64) *GetMinuteUsageInput {
  5211  	s.Month = &v
  5212  	return s
  5213  }
  5214  
  5215  // SetYear sets the Year field's value.
  5216  func (s *GetMinuteUsageInput) SetYear(v int64) *GetMinuteUsageInput {
  5217  	s.Year = &v
  5218  	return s
  5219  }
  5220  
  5221  type GetMinuteUsageOutput struct {
  5222  	_ struct{} `type:"structure"`
  5223  
  5224  	// Estimated number of minutes remaining for an account, specific to the month
  5225  	// being requested.
  5226  	EstimatedMinutesRemaining *int64 `locationName:"estimatedMinutesRemaining" type:"integer"`
  5227  
  5228  	// Returns whether or not an account has signed up for the reserved minutes
  5229  	// pricing plan, specific to the month being requested.
  5230  	IsReservedMinutesCustomer *bool `locationName:"isReservedMinutesCustomer" type:"boolean"`
  5231  
  5232  	// Total number of reserved minutes allocated, specific to the month being requested.
  5233  	TotalReservedMinuteAllocation *int64 `locationName:"totalReservedMinuteAllocation" type:"integer"`
  5234  
  5235  	// Total scheduled minutes for an account, specific to the month being requested.
  5236  	TotalScheduledMinutes *int64 `locationName:"totalScheduledMinutes" type:"integer"`
  5237  
  5238  	// Upcoming minutes scheduled for an account, specific to the month being requested.
  5239  	UpcomingMinutesScheduled *int64 `locationName:"upcomingMinutesScheduled" type:"integer"`
  5240  }
  5241  
  5242  // String returns the string representation.
  5243  //
  5244  // API parameter values that are decorated as "sensitive" in the API will not
  5245  // be included in the string output. The member name will be present, but the
  5246  // value will be replaced with "sensitive".
  5247  func (s GetMinuteUsageOutput) String() string {
  5248  	return awsutil.Prettify(s)
  5249  }
  5250  
  5251  // GoString returns the string representation.
  5252  //
  5253  // API parameter values that are decorated as "sensitive" in the API will not
  5254  // be included in the string output. The member name will be present, but the
  5255  // value will be replaced with "sensitive".
  5256  func (s GetMinuteUsageOutput) GoString() string {
  5257  	return s.String()
  5258  }
  5259  
  5260  // SetEstimatedMinutesRemaining sets the EstimatedMinutesRemaining field's value.
  5261  func (s *GetMinuteUsageOutput) SetEstimatedMinutesRemaining(v int64) *GetMinuteUsageOutput {
  5262  	s.EstimatedMinutesRemaining = &v
  5263  	return s
  5264  }
  5265  
  5266  // SetIsReservedMinutesCustomer sets the IsReservedMinutesCustomer field's value.
  5267  func (s *GetMinuteUsageOutput) SetIsReservedMinutesCustomer(v bool) *GetMinuteUsageOutput {
  5268  	s.IsReservedMinutesCustomer = &v
  5269  	return s
  5270  }
  5271  
  5272  // SetTotalReservedMinuteAllocation sets the TotalReservedMinuteAllocation field's value.
  5273  func (s *GetMinuteUsageOutput) SetTotalReservedMinuteAllocation(v int64) *GetMinuteUsageOutput {
  5274  	s.TotalReservedMinuteAllocation = &v
  5275  	return s
  5276  }
  5277  
  5278  // SetTotalScheduledMinutes sets the TotalScheduledMinutes field's value.
  5279  func (s *GetMinuteUsageOutput) SetTotalScheduledMinutes(v int64) *GetMinuteUsageOutput {
  5280  	s.TotalScheduledMinutes = &v
  5281  	return s
  5282  }
  5283  
  5284  // SetUpcomingMinutesScheduled sets the UpcomingMinutesScheduled field's value.
  5285  func (s *GetMinuteUsageOutput) SetUpcomingMinutesScheduled(v int64) *GetMinuteUsageOutput {
  5286  	s.UpcomingMinutesScheduled = &v
  5287  	return s
  5288  }
  5289  
  5290  type GetMissionProfileInput struct {
  5291  	_ struct{} `type:"structure" nopayload:"true"`
  5292  
  5293  	// UUID of a mission profile.
  5294  	//
  5295  	// MissionProfileId is a required field
  5296  	MissionProfileId *string `location:"uri" locationName:"missionProfileId" type:"string" required:"true"`
  5297  }
  5298  
  5299  // String returns the string representation.
  5300  //
  5301  // API parameter values that are decorated as "sensitive" in the API will not
  5302  // be included in the string output. The member name will be present, but the
  5303  // value will be replaced with "sensitive".
  5304  func (s GetMissionProfileInput) String() string {
  5305  	return awsutil.Prettify(s)
  5306  }
  5307  
  5308  // GoString returns the string representation.
  5309  //
  5310  // API parameter values that are decorated as "sensitive" in the API will not
  5311  // be included in the string output. The member name will be present, but the
  5312  // value will be replaced with "sensitive".
  5313  func (s GetMissionProfileInput) GoString() string {
  5314  	return s.String()
  5315  }
  5316  
  5317  // Validate inspects the fields of the type to determine if they are valid.
  5318  func (s *GetMissionProfileInput) Validate() error {
  5319  	invalidParams := request.ErrInvalidParams{Context: "GetMissionProfileInput"}
  5320  	if s.MissionProfileId == nil {
  5321  		invalidParams.Add(request.NewErrParamRequired("MissionProfileId"))
  5322  	}
  5323  	if s.MissionProfileId != nil && len(*s.MissionProfileId) < 1 {
  5324  		invalidParams.Add(request.NewErrParamMinLen("MissionProfileId", 1))
  5325  	}
  5326  
  5327  	if invalidParams.Len() > 0 {
  5328  		return invalidParams
  5329  	}
  5330  	return nil
  5331  }
  5332  
  5333  // SetMissionProfileId sets the MissionProfileId field's value.
  5334  func (s *GetMissionProfileInput) SetMissionProfileId(v string) *GetMissionProfileInput {
  5335  	s.MissionProfileId = &v
  5336  	return s
  5337  }
  5338  
  5339  type GetMissionProfileOutput struct {
  5340  	_ struct{} `type:"structure"`
  5341  
  5342  	// Amount of time after a contact ends that you’d like to receive a CloudWatch
  5343  	// event indicating the pass has finished.
  5344  	ContactPostPassDurationSeconds *int64 `locationName:"contactPostPassDurationSeconds" min:"1" type:"integer"`
  5345  
  5346  	// Amount of time prior to contact start you’d like to receive a CloudWatch
  5347  	// event indicating an upcoming pass.
  5348  	ContactPrePassDurationSeconds *int64 `locationName:"contactPrePassDurationSeconds" min:"1" type:"integer"`
  5349  
  5350  	// A list of lists of ARNs. Each list of ARNs is an edge, with a from Config
  5351  	// and a to Config.
  5352  	DataflowEdges [][]*string `locationName:"dataflowEdges" type:"list"`
  5353  
  5354  	// Smallest amount of time in seconds that you’d like to see for an available
  5355  	// contact. AWS Ground Station will not present you with contacts shorter than
  5356  	// this duration.
  5357  	MinimumViableContactDurationSeconds *int64 `locationName:"minimumViableContactDurationSeconds" min:"1" type:"integer"`
  5358  
  5359  	// ARN of a mission profile.
  5360  	MissionProfileArn *string `locationName:"missionProfileArn" type:"string"`
  5361  
  5362  	// UUID of a mission profile.
  5363  	MissionProfileId *string `locationName:"missionProfileId" type:"string"`
  5364  
  5365  	// Name of a mission profile.
  5366  	Name *string `locationName:"name" type:"string"`
  5367  
  5368  	// Region of a mission profile.
  5369  	Region *string `locationName:"region" type:"string"`
  5370  
  5371  	// Tags assigned to a mission profile.
  5372  	Tags map[string]*string `locationName:"tags" type:"map"`
  5373  
  5374  	// ARN of a tracking Config.
  5375  	TrackingConfigArn *string `locationName:"trackingConfigArn" type:"string"`
  5376  }
  5377  
  5378  // String returns the string representation.
  5379  //
  5380  // API parameter values that are decorated as "sensitive" in the API will not
  5381  // be included in the string output. The member name will be present, but the
  5382  // value will be replaced with "sensitive".
  5383  func (s GetMissionProfileOutput) String() string {
  5384  	return awsutil.Prettify(s)
  5385  }
  5386  
  5387  // GoString returns the string representation.
  5388  //
  5389  // API parameter values that are decorated as "sensitive" in the API will not
  5390  // be included in the string output. The member name will be present, but the
  5391  // value will be replaced with "sensitive".
  5392  func (s GetMissionProfileOutput) GoString() string {
  5393  	return s.String()
  5394  }
  5395  
  5396  // SetContactPostPassDurationSeconds sets the ContactPostPassDurationSeconds field's value.
  5397  func (s *GetMissionProfileOutput) SetContactPostPassDurationSeconds(v int64) *GetMissionProfileOutput {
  5398  	s.ContactPostPassDurationSeconds = &v
  5399  	return s
  5400  }
  5401  
  5402  // SetContactPrePassDurationSeconds sets the ContactPrePassDurationSeconds field's value.
  5403  func (s *GetMissionProfileOutput) SetContactPrePassDurationSeconds(v int64) *GetMissionProfileOutput {
  5404  	s.ContactPrePassDurationSeconds = &v
  5405  	return s
  5406  }
  5407  
  5408  // SetDataflowEdges sets the DataflowEdges field's value.
  5409  func (s *GetMissionProfileOutput) SetDataflowEdges(v [][]*string) *GetMissionProfileOutput {
  5410  	s.DataflowEdges = v
  5411  	return s
  5412  }
  5413  
  5414  // SetMinimumViableContactDurationSeconds sets the MinimumViableContactDurationSeconds field's value.
  5415  func (s *GetMissionProfileOutput) SetMinimumViableContactDurationSeconds(v int64) *GetMissionProfileOutput {
  5416  	s.MinimumViableContactDurationSeconds = &v
  5417  	return s
  5418  }
  5419  
  5420  // SetMissionProfileArn sets the MissionProfileArn field's value.
  5421  func (s *GetMissionProfileOutput) SetMissionProfileArn(v string) *GetMissionProfileOutput {
  5422  	s.MissionProfileArn = &v
  5423  	return s
  5424  }
  5425  
  5426  // SetMissionProfileId sets the MissionProfileId field's value.
  5427  func (s *GetMissionProfileOutput) SetMissionProfileId(v string) *GetMissionProfileOutput {
  5428  	s.MissionProfileId = &v
  5429  	return s
  5430  }
  5431  
  5432  // SetName sets the Name field's value.
  5433  func (s *GetMissionProfileOutput) SetName(v string) *GetMissionProfileOutput {
  5434  	s.Name = &v
  5435  	return s
  5436  }
  5437  
  5438  // SetRegion sets the Region field's value.
  5439  func (s *GetMissionProfileOutput) SetRegion(v string) *GetMissionProfileOutput {
  5440  	s.Region = &v
  5441  	return s
  5442  }
  5443  
  5444  // SetTags sets the Tags field's value.
  5445  func (s *GetMissionProfileOutput) SetTags(v map[string]*string) *GetMissionProfileOutput {
  5446  	s.Tags = v
  5447  	return s
  5448  }
  5449  
  5450  // SetTrackingConfigArn sets the TrackingConfigArn field's value.
  5451  func (s *GetMissionProfileOutput) SetTrackingConfigArn(v string) *GetMissionProfileOutput {
  5452  	s.TrackingConfigArn = &v
  5453  	return s
  5454  }
  5455  
  5456  type GetSatelliteInput struct {
  5457  	_ struct{} `type:"structure" nopayload:"true"`
  5458  
  5459  	// UUID of a satellite.
  5460  	//
  5461  	// SatelliteId is a required field
  5462  	SatelliteId *string `location:"uri" locationName:"satelliteId" type:"string" required:"true"`
  5463  }
  5464  
  5465  // String returns the string representation.
  5466  //
  5467  // API parameter values that are decorated as "sensitive" in the API will not
  5468  // be included in the string output. The member name will be present, but the
  5469  // value will be replaced with "sensitive".
  5470  func (s GetSatelliteInput) String() string {
  5471  	return awsutil.Prettify(s)
  5472  }
  5473  
  5474  // GoString returns the string representation.
  5475  //
  5476  // API parameter values that are decorated as "sensitive" in the API will not
  5477  // be included in the string output. The member name will be present, but the
  5478  // value will be replaced with "sensitive".
  5479  func (s GetSatelliteInput) GoString() string {
  5480  	return s.String()
  5481  }
  5482  
  5483  // Validate inspects the fields of the type to determine if they are valid.
  5484  func (s *GetSatelliteInput) Validate() error {
  5485  	invalidParams := request.ErrInvalidParams{Context: "GetSatelliteInput"}
  5486  	if s.SatelliteId == nil {
  5487  		invalidParams.Add(request.NewErrParamRequired("SatelliteId"))
  5488  	}
  5489  	if s.SatelliteId != nil && len(*s.SatelliteId) < 1 {
  5490  		invalidParams.Add(request.NewErrParamMinLen("SatelliteId", 1))
  5491  	}
  5492  
  5493  	if invalidParams.Len() > 0 {
  5494  		return invalidParams
  5495  	}
  5496  	return nil
  5497  }
  5498  
  5499  // SetSatelliteId sets the SatelliteId field's value.
  5500  func (s *GetSatelliteInput) SetSatelliteId(v string) *GetSatelliteInput {
  5501  	s.SatelliteId = &v
  5502  	return s
  5503  }
  5504  
  5505  type GetSatelliteOutput struct {
  5506  	_ struct{} `type:"structure"`
  5507  
  5508  	// A list of ground stations to which the satellite is on-boarded.
  5509  	GroundStations []*string `locationName:"groundStations" type:"list"`
  5510  
  5511  	// NORAD satellite ID number.
  5512  	NoradSatelliteID *int64 `locationName:"noradSatelliteID" min:"1" type:"integer"`
  5513  
  5514  	// ARN of a satellite.
  5515  	SatelliteArn *string `locationName:"satelliteArn" type:"string"`
  5516  
  5517  	// UUID of a satellite.
  5518  	SatelliteId *string `locationName:"satelliteId" min:"1" type:"string"`
  5519  }
  5520  
  5521  // String returns the string representation.
  5522  //
  5523  // API parameter values that are decorated as "sensitive" in the API will not
  5524  // be included in the string output. The member name will be present, but the
  5525  // value will be replaced with "sensitive".
  5526  func (s GetSatelliteOutput) String() string {
  5527  	return awsutil.Prettify(s)
  5528  }
  5529  
  5530  // GoString returns the string representation.
  5531  //
  5532  // API parameter values that are decorated as "sensitive" in the API will not
  5533  // be included in the string output. The member name will be present, but the
  5534  // value will be replaced with "sensitive".
  5535  func (s GetSatelliteOutput) GoString() string {
  5536  	return s.String()
  5537  }
  5538  
  5539  // SetGroundStations sets the GroundStations field's value.
  5540  func (s *GetSatelliteOutput) SetGroundStations(v []*string) *GetSatelliteOutput {
  5541  	s.GroundStations = v
  5542  	return s
  5543  }
  5544  
  5545  // SetNoradSatelliteID sets the NoradSatelliteID field's value.
  5546  func (s *GetSatelliteOutput) SetNoradSatelliteID(v int64) *GetSatelliteOutput {
  5547  	s.NoradSatelliteID = &v
  5548  	return s
  5549  }
  5550  
  5551  // SetSatelliteArn sets the SatelliteArn field's value.
  5552  func (s *GetSatelliteOutput) SetSatelliteArn(v string) *GetSatelliteOutput {
  5553  	s.SatelliteArn = &v
  5554  	return s
  5555  }
  5556  
  5557  // SetSatelliteId sets the SatelliteId field's value.
  5558  func (s *GetSatelliteOutput) SetSatelliteId(v string) *GetSatelliteOutput {
  5559  	s.SatelliteId = &v
  5560  	return s
  5561  }
  5562  
  5563  // One or more parameters are not valid.
  5564  type InvalidParameterException struct {
  5565  	_            struct{}                  `type:"structure"`
  5566  	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
  5567  
  5568  	Message_ *string `locationName:"message" type:"string"`
  5569  
  5570  	ParameterName *string `locationName:"parameterName" type:"string"`
  5571  }
  5572  
  5573  // String returns the string representation.
  5574  //
  5575  // API parameter values that are decorated as "sensitive" in the API will not
  5576  // be included in the string output. The member name will be present, but the
  5577  // value will be replaced with "sensitive".
  5578  func (s InvalidParameterException) String() string {
  5579  	return awsutil.Prettify(s)
  5580  }
  5581  
  5582  // GoString returns the string representation.
  5583  //
  5584  // API parameter values that are decorated as "sensitive" in the API will not
  5585  // be included in the string output. The member name will be present, but the
  5586  // value will be replaced with "sensitive".
  5587  func (s InvalidParameterException) GoString() string {
  5588  	return s.String()
  5589  }
  5590  
  5591  func newErrorInvalidParameterException(v protocol.ResponseMetadata) error {
  5592  	return &InvalidParameterException{
  5593  		RespMetadata: v,
  5594  	}
  5595  }
  5596  
  5597  // Code returns the exception type name.
  5598  func (s *InvalidParameterException) Code() string {
  5599  	return "InvalidParameterException"
  5600  }
  5601  
  5602  // Message returns the exception's message.
  5603  func (s *InvalidParameterException) Message() string {
  5604  	if s.Message_ != nil {
  5605  		return *s.Message_
  5606  	}
  5607  	return ""
  5608  }
  5609  
  5610  // OrigErr always returns nil, satisfies awserr.Error interface.
  5611  func (s *InvalidParameterException) OrigErr() error {
  5612  	return nil
  5613  }
  5614  
  5615  func (s *InvalidParameterException) Error() string {
  5616  	return fmt.Sprintf("%s: %s\n%s", s.Code(), s.Message(), s.String())
  5617  }
  5618  
  5619  // Status code returns the HTTP status code for the request's response error.
  5620  func (s *InvalidParameterException) StatusCode() int {
  5621  	return s.RespMetadata.StatusCode
  5622  }
  5623  
  5624  // RequestID returns the service's response RequestID for request.
  5625  func (s *InvalidParameterException) RequestID() string {
  5626  	return s.RespMetadata.RequestID
  5627  }
  5628  
  5629  type ListConfigsInput struct {
  5630  	_ struct{} `type:"structure" nopayload:"true"`
  5631  
  5632  	// Maximum number of Configs returned.
  5633  	MaxResults *int64 `location:"querystring" locationName:"maxResults" type:"integer"`
  5634  
  5635  	// Next token returned in the request of a previous ListConfigs call. Used to
  5636  	// get the next page of results.
  5637  	NextToken *string `location:"querystring" locationName:"nextToken" type:"string"`
  5638  }
  5639  
  5640  // String returns the string representation.
  5641  //
  5642  // API parameter values that are decorated as "sensitive" in the API will not
  5643  // be included in the string output. The member name will be present, but the
  5644  // value will be replaced with "sensitive".
  5645  func (s ListConfigsInput) String() string {
  5646  	return awsutil.Prettify(s)
  5647  }
  5648  
  5649  // GoString returns the string representation.
  5650  //
  5651  // API parameter values that are decorated as "sensitive" in the API will not
  5652  // be included in the string output. The member name will be present, but the
  5653  // value will be replaced with "sensitive".
  5654  func (s ListConfigsInput) GoString() string {
  5655  	return s.String()
  5656  }
  5657  
  5658  // SetMaxResults sets the MaxResults field's value.
  5659  func (s *ListConfigsInput) SetMaxResults(v int64) *ListConfigsInput {
  5660  	s.MaxResults = &v
  5661  	return s
  5662  }
  5663  
  5664  // SetNextToken sets the NextToken field's value.
  5665  func (s *ListConfigsInput) SetNextToken(v string) *ListConfigsInput {
  5666  	s.NextToken = &v
  5667  	return s
  5668  }
  5669  
  5670  type ListConfigsOutput struct {
  5671  	_ struct{} `type:"structure"`
  5672  
  5673  	// List of Config items.
  5674  	ConfigList []*ConfigListItem `locationName:"configList" type:"list"`
  5675  
  5676  	// Next token returned in the response of a previous ListConfigs call. Used
  5677  	// to get the next page of results.
  5678  	NextToken *string `locationName:"nextToken" type:"string"`
  5679  }
  5680  
  5681  // String returns the string representation.
  5682  //
  5683  // API parameter values that are decorated as "sensitive" in the API will not
  5684  // be included in the string output. The member name will be present, but the
  5685  // value will be replaced with "sensitive".
  5686  func (s ListConfigsOutput) String() string {
  5687  	return awsutil.Prettify(s)
  5688  }
  5689  
  5690  // GoString returns the string representation.
  5691  //
  5692  // API parameter values that are decorated as "sensitive" in the API will not
  5693  // be included in the string output. The member name will be present, but the
  5694  // value will be replaced with "sensitive".
  5695  func (s ListConfigsOutput) GoString() string {
  5696  	return s.String()
  5697  }
  5698  
  5699  // SetConfigList sets the ConfigList field's value.
  5700  func (s *ListConfigsOutput) SetConfigList(v []*ConfigListItem) *ListConfigsOutput {
  5701  	s.ConfigList = v
  5702  	return s
  5703  }
  5704  
  5705  // SetNextToken sets the NextToken field's value.
  5706  func (s *ListConfigsOutput) SetNextToken(v string) *ListConfigsOutput {
  5707  	s.NextToken = &v
  5708  	return s
  5709  }
  5710  
  5711  type ListContactsInput struct {
  5712  	_ struct{} `type:"structure"`
  5713  
  5714  	// End time of a contact.
  5715  	//
  5716  	// EndTime is a required field
  5717  	EndTime *time.Time `locationName:"endTime" type:"timestamp" required:"true"`
  5718  
  5719  	// Name of a ground station.
  5720  	GroundStation *string `locationName:"groundStation" type:"string"`
  5721  
  5722  	// Maximum number of contacts returned.
  5723  	MaxResults *int64 `locationName:"maxResults" type:"integer"`
  5724  
  5725  	// ARN of a mission profile.
  5726  	MissionProfileArn *string `locationName:"missionProfileArn" type:"string"`
  5727  
  5728  	// Next token returned in the request of a previous ListContacts call. Used
  5729  	// to get the next page of results.
  5730  	NextToken *string `locationName:"nextToken" type:"string"`
  5731  
  5732  	// ARN of a satellite.
  5733  	SatelliteArn *string `locationName:"satelliteArn" type:"string"`
  5734  
  5735  	// Start time of a contact.
  5736  	//
  5737  	// StartTime is a required field
  5738  	StartTime *time.Time `locationName:"startTime" type:"timestamp" required:"true"`
  5739  
  5740  	// Status of a contact reservation.
  5741  	//
  5742  	// StatusList is a required field
  5743  	StatusList []*string `locationName:"statusList" type:"list" required:"true"`
  5744  }
  5745  
  5746  // String returns the string representation.
  5747  //
  5748  // API parameter values that are decorated as "sensitive" in the API will not
  5749  // be included in the string output. The member name will be present, but the
  5750  // value will be replaced with "sensitive".
  5751  func (s ListContactsInput) String() string {
  5752  	return awsutil.Prettify(s)
  5753  }
  5754  
  5755  // GoString returns the string representation.
  5756  //
  5757  // API parameter values that are decorated as "sensitive" in the API will not
  5758  // be included in the string output. The member name will be present, but the
  5759  // value will be replaced with "sensitive".
  5760  func (s ListContactsInput) GoString() string {
  5761  	return s.String()
  5762  }
  5763  
  5764  // Validate inspects the fields of the type to determine if they are valid.
  5765  func (s *ListContactsInput) Validate() error {
  5766  	invalidParams := request.ErrInvalidParams{Context: "ListContactsInput"}
  5767  	if s.EndTime == nil {
  5768  		invalidParams.Add(request.NewErrParamRequired("EndTime"))
  5769  	}
  5770  	if s.StartTime == nil {
  5771  		invalidParams.Add(request.NewErrParamRequired("StartTime"))
  5772  	}
  5773  	if s.StatusList == nil {
  5774  		invalidParams.Add(request.NewErrParamRequired("StatusList"))
  5775  	}
  5776  
  5777  	if invalidParams.Len() > 0 {
  5778  		return invalidParams
  5779  	}
  5780  	return nil
  5781  }
  5782  
  5783  // SetEndTime sets the EndTime field's value.
  5784  func (s *ListContactsInput) SetEndTime(v time.Time) *ListContactsInput {
  5785  	s.EndTime = &v
  5786  	return s
  5787  }
  5788  
  5789  // SetGroundStation sets the GroundStation field's value.
  5790  func (s *ListContactsInput) SetGroundStation(v string) *ListContactsInput {
  5791  	s.GroundStation = &v
  5792  	return s
  5793  }
  5794  
  5795  // SetMaxResults sets the MaxResults field's value.
  5796  func (s *ListContactsInput) SetMaxResults(v int64) *ListContactsInput {
  5797  	s.MaxResults = &v
  5798  	return s
  5799  }
  5800  
  5801  // SetMissionProfileArn sets the MissionProfileArn field's value.
  5802  func (s *ListContactsInput) SetMissionProfileArn(v string) *ListContactsInput {
  5803  	s.MissionProfileArn = &v
  5804  	return s
  5805  }
  5806  
  5807  // SetNextToken sets the NextToken field's value.
  5808  func (s *ListContactsInput) SetNextToken(v string) *ListContactsInput {
  5809  	s.NextToken = &v
  5810  	return s
  5811  }
  5812  
  5813  // SetSatelliteArn sets the SatelliteArn field's value.
  5814  func (s *ListContactsInput) SetSatelliteArn(v string) *ListContactsInput {
  5815  	s.SatelliteArn = &v
  5816  	return s
  5817  }
  5818  
  5819  // SetStartTime sets the StartTime field's value.
  5820  func (s *ListContactsInput) SetStartTime(v time.Time) *ListContactsInput {
  5821  	s.StartTime = &v
  5822  	return s
  5823  }
  5824  
  5825  // SetStatusList sets the StatusList field's value.
  5826  func (s *ListContactsInput) SetStatusList(v []*string) *ListContactsInput {
  5827  	s.StatusList = v
  5828  	return s
  5829  }
  5830  
  5831  type ListContactsOutput struct {
  5832  	_ struct{} `type:"structure"`
  5833  
  5834  	// List of contacts.
  5835  	ContactList []*ContactData `locationName:"contactList" type:"list"`
  5836  
  5837  	// Next token returned in the response of a previous ListContacts call. Used
  5838  	// to get the next page of results.
  5839  	NextToken *string `locationName:"nextToken" type:"string"`
  5840  }
  5841  
  5842  // String returns the string representation.
  5843  //
  5844  // API parameter values that are decorated as "sensitive" in the API will not
  5845  // be included in the string output. The member name will be present, but the
  5846  // value will be replaced with "sensitive".
  5847  func (s ListContactsOutput) String() string {
  5848  	return awsutil.Prettify(s)
  5849  }
  5850  
  5851  // GoString returns the string representation.
  5852  //
  5853  // API parameter values that are decorated as "sensitive" in the API will not
  5854  // be included in the string output. The member name will be present, but the
  5855  // value will be replaced with "sensitive".
  5856  func (s ListContactsOutput) GoString() string {
  5857  	return s.String()
  5858  }
  5859  
  5860  // SetContactList sets the ContactList field's value.
  5861  func (s *ListContactsOutput) SetContactList(v []*ContactData) *ListContactsOutput {
  5862  	s.ContactList = v
  5863  	return s
  5864  }
  5865  
  5866  // SetNextToken sets the NextToken field's value.
  5867  func (s *ListContactsOutput) SetNextToken(v string) *ListContactsOutput {
  5868  	s.NextToken = &v
  5869  	return s
  5870  }
  5871  
  5872  type ListDataflowEndpointGroupsInput struct {
  5873  	_ struct{} `type:"structure" nopayload:"true"`
  5874  
  5875  	// Maximum number of dataflow endpoint groups returned.
  5876  	MaxResults *int64 `location:"querystring" locationName:"maxResults" type:"integer"`
  5877  
  5878  	// Next token returned in the request of a previous ListDataflowEndpointGroups
  5879  	// call. Used to get the next page of results.
  5880  	NextToken *string `location:"querystring" locationName:"nextToken" type:"string"`
  5881  }
  5882  
  5883  // String returns the string representation.
  5884  //
  5885  // API parameter values that are decorated as "sensitive" in the API will not
  5886  // be included in the string output. The member name will be present, but the
  5887  // value will be replaced with "sensitive".
  5888  func (s ListDataflowEndpointGroupsInput) String() string {
  5889  	return awsutil.Prettify(s)
  5890  }
  5891  
  5892  // GoString returns the string representation.
  5893  //
  5894  // API parameter values that are decorated as "sensitive" in the API will not
  5895  // be included in the string output. The member name will be present, but the
  5896  // value will be replaced with "sensitive".
  5897  func (s ListDataflowEndpointGroupsInput) GoString() string {
  5898  	return s.String()
  5899  }
  5900  
  5901  // SetMaxResults sets the MaxResults field's value.
  5902  func (s *ListDataflowEndpointGroupsInput) SetMaxResults(v int64) *ListDataflowEndpointGroupsInput {
  5903  	s.MaxResults = &v
  5904  	return s
  5905  }
  5906  
  5907  // SetNextToken sets the NextToken field's value.
  5908  func (s *ListDataflowEndpointGroupsInput) SetNextToken(v string) *ListDataflowEndpointGroupsInput {
  5909  	s.NextToken = &v
  5910  	return s
  5911  }
  5912  
  5913  type ListDataflowEndpointGroupsOutput struct {
  5914  	_ struct{} `type:"structure"`
  5915  
  5916  	// A list of dataflow endpoint groups.
  5917  	DataflowEndpointGroupList []*DataflowEndpointListItem `locationName:"dataflowEndpointGroupList" type:"list"`
  5918  
  5919  	// Next token returned in the response of a previous ListDataflowEndpointGroups
  5920  	// call. Used to get the next page of results.
  5921  	NextToken *string `locationName:"nextToken" type:"string"`
  5922  }
  5923  
  5924  // String returns the string representation.
  5925  //
  5926  // API parameter values that are decorated as "sensitive" in the API will not
  5927  // be included in the string output. The member name will be present, but the
  5928  // value will be replaced with "sensitive".
  5929  func (s ListDataflowEndpointGroupsOutput) String() string {
  5930  	return awsutil.Prettify(s)
  5931  }
  5932  
  5933  // GoString returns the string representation.
  5934  //
  5935  // API parameter values that are decorated as "sensitive" in the API will not
  5936  // be included in the string output. The member name will be present, but the
  5937  // value will be replaced with "sensitive".
  5938  func (s ListDataflowEndpointGroupsOutput) GoString() string {
  5939  	return s.String()
  5940  }
  5941  
  5942  // SetDataflowEndpointGroupList sets the DataflowEndpointGroupList field's value.
  5943  func (s *ListDataflowEndpointGroupsOutput) SetDataflowEndpointGroupList(v []*DataflowEndpointListItem) *ListDataflowEndpointGroupsOutput {
  5944  	s.DataflowEndpointGroupList = v
  5945  	return s
  5946  }
  5947  
  5948  // SetNextToken sets the NextToken field's value.
  5949  func (s *ListDataflowEndpointGroupsOutput) SetNextToken(v string) *ListDataflowEndpointGroupsOutput {
  5950  	s.NextToken = &v
  5951  	return s
  5952  }
  5953  
  5954  type ListGroundStationsInput struct {
  5955  	_ struct{} `type:"structure" nopayload:"true"`
  5956  
  5957  	// Maximum number of ground stations returned.
  5958  	MaxResults *int64 `location:"querystring" locationName:"maxResults" type:"integer"`
  5959  
  5960  	// Next token that can be supplied in the next call to get the next page of
  5961  	// ground stations.
  5962  	NextToken *string `location:"querystring" locationName:"nextToken" type:"string"`
  5963  
  5964  	// Satellite ID to retrieve on-boarded ground stations.
  5965  	SatelliteId *string `location:"querystring" locationName:"satelliteId" type:"string"`
  5966  }
  5967  
  5968  // String returns the string representation.
  5969  //
  5970  // API parameter values that are decorated as "sensitive" in the API will not
  5971  // be included in the string output. The member name will be present, but the
  5972  // value will be replaced with "sensitive".
  5973  func (s ListGroundStationsInput) String() string {
  5974  	return awsutil.Prettify(s)
  5975  }
  5976  
  5977  // GoString returns the string representation.
  5978  //
  5979  // API parameter values that are decorated as "sensitive" in the API will not
  5980  // be included in the string output. The member name will be present, but the
  5981  // value will be replaced with "sensitive".
  5982  func (s ListGroundStationsInput) GoString() string {
  5983  	return s.String()
  5984  }
  5985  
  5986  // SetMaxResults sets the MaxResults field's value.
  5987  func (s *ListGroundStationsInput) SetMaxResults(v int64) *ListGroundStationsInput {
  5988  	s.MaxResults = &v
  5989  	return s
  5990  }
  5991  
  5992  // SetNextToken sets the NextToken field's value.
  5993  func (s *ListGroundStationsInput) SetNextToken(v string) *ListGroundStationsInput {
  5994  	s.NextToken = &v
  5995  	return s
  5996  }
  5997  
  5998  // SetSatelliteId sets the SatelliteId field's value.
  5999  func (s *ListGroundStationsInput) SetSatelliteId(v string) *ListGroundStationsInput {
  6000  	s.SatelliteId = &v
  6001  	return s
  6002  }
  6003  
  6004  type ListGroundStationsOutput struct {
  6005  	_ struct{} `type:"structure"`
  6006  
  6007  	// List of ground stations.
  6008  	GroundStationList []*Data `locationName:"groundStationList" type:"list"`
  6009  
  6010  	// Next token that can be supplied in the next call to get the next page of
  6011  	// ground stations.
  6012  	NextToken *string `locationName:"nextToken" type:"string"`
  6013  }
  6014  
  6015  // String returns the string representation.
  6016  //
  6017  // API parameter values that are decorated as "sensitive" in the API will not
  6018  // be included in the string output. The member name will be present, but the
  6019  // value will be replaced with "sensitive".
  6020  func (s ListGroundStationsOutput) String() string {
  6021  	return awsutil.Prettify(s)
  6022  }
  6023  
  6024  // GoString returns the string representation.
  6025  //
  6026  // API parameter values that are decorated as "sensitive" in the API will not
  6027  // be included in the string output. The member name will be present, but the
  6028  // value will be replaced with "sensitive".
  6029  func (s ListGroundStationsOutput) GoString() string {
  6030  	return s.String()
  6031  }
  6032  
  6033  // SetGroundStationList sets the GroundStationList field's value.
  6034  func (s *ListGroundStationsOutput) SetGroundStationList(v []*Data) *ListGroundStationsOutput {
  6035  	s.GroundStationList = v
  6036  	return s
  6037  }
  6038  
  6039  // SetNextToken sets the NextToken field's value.
  6040  func (s *ListGroundStationsOutput) SetNextToken(v string) *ListGroundStationsOutput {
  6041  	s.NextToken = &v
  6042  	return s
  6043  }
  6044  
  6045  type ListMissionProfilesInput struct {
  6046  	_ struct{} `type:"structure" nopayload:"true"`
  6047  
  6048  	// Maximum number of mission profiles returned.
  6049  	MaxResults *int64 `location:"querystring" locationName:"maxResults" type:"integer"`
  6050  
  6051  	// Next token returned in the request of a previous ListMissionProfiles call.
  6052  	// Used to get the next page of results.
  6053  	NextToken *string `location:"querystring" locationName:"nextToken" type:"string"`
  6054  }
  6055  
  6056  // String returns the string representation.
  6057  //
  6058  // API parameter values that are decorated as "sensitive" in the API will not
  6059  // be included in the string output. The member name will be present, but the
  6060  // value will be replaced with "sensitive".
  6061  func (s ListMissionProfilesInput) String() string {
  6062  	return awsutil.Prettify(s)
  6063  }
  6064  
  6065  // GoString returns the string representation.
  6066  //
  6067  // API parameter values that are decorated as "sensitive" in the API will not
  6068  // be included in the string output. The member name will be present, but the
  6069  // value will be replaced with "sensitive".
  6070  func (s ListMissionProfilesInput) GoString() string {
  6071  	return s.String()
  6072  }
  6073  
  6074  // SetMaxResults sets the MaxResults field's value.
  6075  func (s *ListMissionProfilesInput) SetMaxResults(v int64) *ListMissionProfilesInput {
  6076  	s.MaxResults = &v
  6077  	return s
  6078  }
  6079  
  6080  // SetNextToken sets the NextToken field's value.
  6081  func (s *ListMissionProfilesInput) SetNextToken(v string) *ListMissionProfilesInput {
  6082  	s.NextToken = &v
  6083  	return s
  6084  }
  6085  
  6086  type ListMissionProfilesOutput struct {
  6087  	_ struct{} `type:"structure"`
  6088  
  6089  	// List of mission profiles.
  6090  	MissionProfileList []*MissionProfileListItem `locationName:"missionProfileList" type:"list"`
  6091  
  6092  	// Next token returned in the response of a previous ListMissionProfiles call.
  6093  	// Used to get the next page of results.
  6094  	NextToken *string `locationName:"nextToken" type:"string"`
  6095  }
  6096  
  6097  // String returns the string representation.
  6098  //
  6099  // API parameter values that are decorated as "sensitive" in the API will not
  6100  // be included in the string output. The member name will be present, but the
  6101  // value will be replaced with "sensitive".
  6102  func (s ListMissionProfilesOutput) String() string {
  6103  	return awsutil.Prettify(s)
  6104  }
  6105  
  6106  // GoString returns the string representation.
  6107  //
  6108  // API parameter values that are decorated as "sensitive" in the API will not
  6109  // be included in the string output. The member name will be present, but the
  6110  // value will be replaced with "sensitive".
  6111  func (s ListMissionProfilesOutput) GoString() string {
  6112  	return s.String()
  6113  }
  6114  
  6115  // SetMissionProfileList sets the MissionProfileList field's value.
  6116  func (s *ListMissionProfilesOutput) SetMissionProfileList(v []*MissionProfileListItem) *ListMissionProfilesOutput {
  6117  	s.MissionProfileList = v
  6118  	return s
  6119  }
  6120  
  6121  // SetNextToken sets the NextToken field's value.
  6122  func (s *ListMissionProfilesOutput) SetNextToken(v string) *ListMissionProfilesOutput {
  6123  	s.NextToken = &v
  6124  	return s
  6125  }
  6126  
  6127  type ListSatellitesInput struct {
  6128  	_ struct{} `type:"structure" nopayload:"true"`
  6129  
  6130  	// Maximum number of satellites returned.
  6131  	MaxResults *int64 `location:"querystring" locationName:"maxResults" type:"integer"`
  6132  
  6133  	// Next token that can be supplied in the next call to get the next page of
  6134  	// satellites.
  6135  	NextToken *string `location:"querystring" locationName:"nextToken" type:"string"`
  6136  }
  6137  
  6138  // String returns the string representation.
  6139  //
  6140  // API parameter values that are decorated as "sensitive" in the API will not
  6141  // be included in the string output. The member name will be present, but the
  6142  // value will be replaced with "sensitive".
  6143  func (s ListSatellitesInput) String() string {
  6144  	return awsutil.Prettify(s)
  6145  }
  6146  
  6147  // GoString returns the string representation.
  6148  //
  6149  // API parameter values that are decorated as "sensitive" in the API will not
  6150  // be included in the string output. The member name will be present, but the
  6151  // value will be replaced with "sensitive".
  6152  func (s ListSatellitesInput) GoString() string {
  6153  	return s.String()
  6154  }
  6155  
  6156  // SetMaxResults sets the MaxResults field's value.
  6157  func (s *ListSatellitesInput) SetMaxResults(v int64) *ListSatellitesInput {
  6158  	s.MaxResults = &v
  6159  	return s
  6160  }
  6161  
  6162  // SetNextToken sets the NextToken field's value.
  6163  func (s *ListSatellitesInput) SetNextToken(v string) *ListSatellitesInput {
  6164  	s.NextToken = &v
  6165  	return s
  6166  }
  6167  
  6168  type ListSatellitesOutput struct {
  6169  	_ struct{} `type:"structure"`
  6170  
  6171  	// Next token that can be supplied in the next call to get the next page of
  6172  	// satellites.
  6173  	NextToken *string `locationName:"nextToken" type:"string"`
  6174  
  6175  	// List of satellites.
  6176  	Satellites []*SatelliteListItem `locationName:"satellites" type:"list"`
  6177  }
  6178  
  6179  // String returns the string representation.
  6180  //
  6181  // API parameter values that are decorated as "sensitive" in the API will not
  6182  // be included in the string output. The member name will be present, but the
  6183  // value will be replaced with "sensitive".
  6184  func (s ListSatellitesOutput) String() string {
  6185  	return awsutil.Prettify(s)
  6186  }
  6187  
  6188  // GoString returns the string representation.
  6189  //
  6190  // API parameter values that are decorated as "sensitive" in the API will not
  6191  // be included in the string output. The member name will be present, but the
  6192  // value will be replaced with "sensitive".
  6193  func (s ListSatellitesOutput) GoString() string {
  6194  	return s.String()
  6195  }
  6196  
  6197  // SetNextToken sets the NextToken field's value.
  6198  func (s *ListSatellitesOutput) SetNextToken(v string) *ListSatellitesOutput {
  6199  	s.NextToken = &v
  6200  	return s
  6201  }
  6202  
  6203  // SetSatellites sets the Satellites field's value.
  6204  func (s *ListSatellitesOutput) SetSatellites(v []*SatelliteListItem) *ListSatellitesOutput {
  6205  	s.Satellites = v
  6206  	return s
  6207  }
  6208  
  6209  type ListTagsForResourceInput struct {
  6210  	_ struct{} `type:"structure" nopayload:"true"`
  6211  
  6212  	// ARN of a resource.
  6213  	//
  6214  	// ResourceArn is a required field
  6215  	ResourceArn *string `location:"uri" locationName:"resourceArn" type:"string" required:"true"`
  6216  }
  6217  
  6218  // String returns the string representation.
  6219  //
  6220  // API parameter values that are decorated as "sensitive" in the API will not
  6221  // be included in the string output. The member name will be present, but the
  6222  // value will be replaced with "sensitive".
  6223  func (s ListTagsForResourceInput) String() string {
  6224  	return awsutil.Prettify(s)
  6225  }
  6226  
  6227  // GoString returns the string representation.
  6228  //
  6229  // API parameter values that are decorated as "sensitive" in the API will not
  6230  // be included in the string output. The member name will be present, but the
  6231  // value will be replaced with "sensitive".
  6232  func (s ListTagsForResourceInput) GoString() string {
  6233  	return s.String()
  6234  }
  6235  
  6236  // Validate inspects the fields of the type to determine if they are valid.
  6237  func (s *ListTagsForResourceInput) Validate() error {
  6238  	invalidParams := request.ErrInvalidParams{Context: "ListTagsForResourceInput"}
  6239  	if s.ResourceArn == nil {
  6240  		invalidParams.Add(request.NewErrParamRequired("ResourceArn"))
  6241  	}
  6242  	if s.ResourceArn != nil && len(*s.ResourceArn) < 1 {
  6243  		invalidParams.Add(request.NewErrParamMinLen("ResourceArn", 1))
  6244  	}
  6245  
  6246  	if invalidParams.Len() > 0 {
  6247  		return invalidParams
  6248  	}
  6249  	return nil
  6250  }
  6251  
  6252  // SetResourceArn sets the ResourceArn field's value.
  6253  func (s *ListTagsForResourceInput) SetResourceArn(v string) *ListTagsForResourceInput {
  6254  	s.ResourceArn = &v
  6255  	return s
  6256  }
  6257  
  6258  type ListTagsForResourceOutput struct {
  6259  	_ struct{} `type:"structure"`
  6260  
  6261  	// Tags assigned to a resource.
  6262  	Tags map[string]*string `locationName:"tags" type:"map"`
  6263  }
  6264  
  6265  // String returns the string representation.
  6266  //
  6267  // API parameter values that are decorated as "sensitive" in the API will not
  6268  // be included in the string output. The member name will be present, but the
  6269  // value will be replaced with "sensitive".
  6270  func (s ListTagsForResourceOutput) String() string {
  6271  	return awsutil.Prettify(s)
  6272  }
  6273  
  6274  // GoString returns the string representation.
  6275  //
  6276  // API parameter values that are decorated as "sensitive" in the API will not
  6277  // be included in the string output. The member name will be present, but the
  6278  // value will be replaced with "sensitive".
  6279  func (s ListTagsForResourceOutput) GoString() string {
  6280  	return s.String()
  6281  }
  6282  
  6283  // SetTags sets the Tags field's value.
  6284  func (s *ListTagsForResourceOutput) SetTags(v map[string]*string) *ListTagsForResourceOutput {
  6285  	s.Tags = v
  6286  	return s
  6287  }
  6288  
  6289  // Item in a list of mission profiles.
  6290  type MissionProfileListItem struct {
  6291  	_ struct{} `type:"structure"`
  6292  
  6293  	// ARN of a mission profile.
  6294  	MissionProfileArn *string `locationName:"missionProfileArn" type:"string"`
  6295  
  6296  	// UUID of a mission profile.
  6297  	MissionProfileId *string `locationName:"missionProfileId" type:"string"`
  6298  
  6299  	// Name of a mission profile.
  6300  	Name *string `locationName:"name" type:"string"`
  6301  
  6302  	// Region of a mission profile.
  6303  	Region *string `locationName:"region" type:"string"`
  6304  }
  6305  
  6306  // String returns the string representation.
  6307  //
  6308  // API parameter values that are decorated as "sensitive" in the API will not
  6309  // be included in the string output. The member name will be present, but the
  6310  // value will be replaced with "sensitive".
  6311  func (s MissionProfileListItem) String() string {
  6312  	return awsutil.Prettify(s)
  6313  }
  6314  
  6315  // GoString returns the string representation.
  6316  //
  6317  // API parameter values that are decorated as "sensitive" in the API will not
  6318  // be included in the string output. The member name will be present, but the
  6319  // value will be replaced with "sensitive".
  6320  func (s MissionProfileListItem) GoString() string {
  6321  	return s.String()
  6322  }
  6323  
  6324  // SetMissionProfileArn sets the MissionProfileArn field's value.
  6325  func (s *MissionProfileListItem) SetMissionProfileArn(v string) *MissionProfileListItem {
  6326  	s.MissionProfileArn = &v
  6327  	return s
  6328  }
  6329  
  6330  // SetMissionProfileId sets the MissionProfileId field's value.
  6331  func (s *MissionProfileListItem) SetMissionProfileId(v string) *MissionProfileListItem {
  6332  	s.MissionProfileId = &v
  6333  	return s
  6334  }
  6335  
  6336  // SetName sets the Name field's value.
  6337  func (s *MissionProfileListItem) SetName(v string) *MissionProfileListItem {
  6338  	s.Name = &v
  6339  	return s
  6340  }
  6341  
  6342  // SetRegion sets the Region field's value.
  6343  func (s *MissionProfileListItem) SetRegion(v string) *MissionProfileListItem {
  6344  	s.Region = &v
  6345  	return s
  6346  }
  6347  
  6348  type ReserveContactInput struct {
  6349  	_ struct{} `type:"structure"`
  6350  
  6351  	// End time of a contact.
  6352  	//
  6353  	// EndTime is a required field
  6354  	EndTime *time.Time `locationName:"endTime" type:"timestamp" required:"true"`
  6355  
  6356  	// Name of a ground station.
  6357  	//
  6358  	// GroundStation is a required field
  6359  	GroundStation *string `locationName:"groundStation" type:"string" required:"true"`
  6360  
  6361  	// ARN of a mission profile.
  6362  	//
  6363  	// MissionProfileArn is a required field
  6364  	MissionProfileArn *string `locationName:"missionProfileArn" type:"string" required:"true"`
  6365  
  6366  	// ARN of a satellite
  6367  	//
  6368  	// SatelliteArn is a required field
  6369  	SatelliteArn *string `locationName:"satelliteArn" type:"string" required:"true"`
  6370  
  6371  	// Start time of a contact.
  6372  	//
  6373  	// StartTime is a required field
  6374  	StartTime *time.Time `locationName:"startTime" type:"timestamp" required:"true"`
  6375  
  6376  	// Tags assigned to a contact.
  6377  	Tags map[string]*string `locationName:"tags" type:"map"`
  6378  }
  6379  
  6380  // String returns the string representation.
  6381  //
  6382  // API parameter values that are decorated as "sensitive" in the API will not
  6383  // be included in the string output. The member name will be present, but the
  6384  // value will be replaced with "sensitive".
  6385  func (s ReserveContactInput) String() string {
  6386  	return awsutil.Prettify(s)
  6387  }
  6388  
  6389  // GoString returns the string representation.
  6390  //
  6391  // API parameter values that are decorated as "sensitive" in the API will not
  6392  // be included in the string output. The member name will be present, but the
  6393  // value will be replaced with "sensitive".
  6394  func (s ReserveContactInput) GoString() string {
  6395  	return s.String()
  6396  }
  6397  
  6398  // Validate inspects the fields of the type to determine if they are valid.
  6399  func (s *ReserveContactInput) Validate() error {
  6400  	invalidParams := request.ErrInvalidParams{Context: "ReserveContactInput"}
  6401  	if s.EndTime == nil {
  6402  		invalidParams.Add(request.NewErrParamRequired("EndTime"))
  6403  	}
  6404  	if s.GroundStation == nil {
  6405  		invalidParams.Add(request.NewErrParamRequired("GroundStation"))
  6406  	}
  6407  	if s.MissionProfileArn == nil {
  6408  		invalidParams.Add(request.NewErrParamRequired("MissionProfileArn"))
  6409  	}
  6410  	if s.SatelliteArn == nil {
  6411  		invalidParams.Add(request.NewErrParamRequired("SatelliteArn"))
  6412  	}
  6413  	if s.StartTime == nil {
  6414  		invalidParams.Add(request.NewErrParamRequired("StartTime"))
  6415  	}
  6416  
  6417  	if invalidParams.Len() > 0 {
  6418  		return invalidParams
  6419  	}
  6420  	return nil
  6421  }
  6422  
  6423  // SetEndTime sets the EndTime field's value.
  6424  func (s *ReserveContactInput) SetEndTime(v time.Time) *ReserveContactInput {
  6425  	s.EndTime = &v
  6426  	return s
  6427  }
  6428  
  6429  // SetGroundStation sets the GroundStation field's value.
  6430  func (s *ReserveContactInput) SetGroundStation(v string) *ReserveContactInput {
  6431  	s.GroundStation = &v
  6432  	return s
  6433  }
  6434  
  6435  // SetMissionProfileArn sets the MissionProfileArn field's value.
  6436  func (s *ReserveContactInput) SetMissionProfileArn(v string) *ReserveContactInput {
  6437  	s.MissionProfileArn = &v
  6438  	return s
  6439  }
  6440  
  6441  // SetSatelliteArn sets the SatelliteArn field's value.
  6442  func (s *ReserveContactInput) SetSatelliteArn(v string) *ReserveContactInput {
  6443  	s.SatelliteArn = &v
  6444  	return s
  6445  }
  6446  
  6447  // SetStartTime sets the StartTime field's value.
  6448  func (s *ReserveContactInput) SetStartTime(v time.Time) *ReserveContactInput {
  6449  	s.StartTime = &v
  6450  	return s
  6451  }
  6452  
  6453  // SetTags sets the Tags field's value.
  6454  func (s *ReserveContactInput) SetTags(v map[string]*string) *ReserveContactInput {
  6455  	s.Tags = v
  6456  	return s
  6457  }
  6458  
  6459  type ReserveContactOutput struct {
  6460  	_ struct{} `type:"structure"`
  6461  
  6462  	// UUID of a contact.
  6463  	ContactId *string `locationName:"contactId" type:"string"`
  6464  }
  6465  
  6466  // String returns the string representation.
  6467  //
  6468  // API parameter values that are decorated as "sensitive" in the API will not
  6469  // be included in the string output. The member name will be present, but the
  6470  // value will be replaced with "sensitive".
  6471  func (s ReserveContactOutput) String() string {
  6472  	return awsutil.Prettify(s)
  6473  }
  6474  
  6475  // GoString returns the string representation.
  6476  //
  6477  // API parameter values that are decorated as "sensitive" in the API will not
  6478  // be included in the string output. The member name will be present, but the
  6479  // value will be replaced with "sensitive".
  6480  func (s ReserveContactOutput) GoString() string {
  6481  	return s.String()
  6482  }
  6483  
  6484  // SetContactId sets the ContactId field's value.
  6485  func (s *ReserveContactOutput) SetContactId(v string) *ReserveContactOutput {
  6486  	s.ContactId = &v
  6487  	return s
  6488  }
  6489  
  6490  // Account limits for this resource have been exceeded.
  6491  type ResourceLimitExceededException struct {
  6492  	_            struct{}                  `type:"structure"`
  6493  	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
  6494  
  6495  	Message_ *string `locationName:"message" type:"string"`
  6496  
  6497  	ParameterName *string `locationName:"parameterName" type:"string"`
  6498  }
  6499  
  6500  // String returns the string representation.
  6501  //
  6502  // API parameter values that are decorated as "sensitive" in the API will not
  6503  // be included in the string output. The member name will be present, but the
  6504  // value will be replaced with "sensitive".
  6505  func (s ResourceLimitExceededException) String() string {
  6506  	return awsutil.Prettify(s)
  6507  }
  6508  
  6509  // GoString returns the string representation.
  6510  //
  6511  // API parameter values that are decorated as "sensitive" in the API will not
  6512  // be included in the string output. The member name will be present, but the
  6513  // value will be replaced with "sensitive".
  6514  func (s ResourceLimitExceededException) GoString() string {
  6515  	return s.String()
  6516  }
  6517  
  6518  func newErrorResourceLimitExceededException(v protocol.ResponseMetadata) error {
  6519  	return &ResourceLimitExceededException{
  6520  		RespMetadata: v,
  6521  	}
  6522  }
  6523  
  6524  // Code returns the exception type name.
  6525  func (s *ResourceLimitExceededException) Code() string {
  6526  	return "ResourceLimitExceededException"
  6527  }
  6528  
  6529  // Message returns the exception's message.
  6530  func (s *ResourceLimitExceededException) Message() string {
  6531  	if s.Message_ != nil {
  6532  		return *s.Message_
  6533  	}
  6534  	return ""
  6535  }
  6536  
  6537  // OrigErr always returns nil, satisfies awserr.Error interface.
  6538  func (s *ResourceLimitExceededException) OrigErr() error {
  6539  	return nil
  6540  }
  6541  
  6542  func (s *ResourceLimitExceededException) Error() string {
  6543  	return fmt.Sprintf("%s: %s\n%s", s.Code(), s.Message(), s.String())
  6544  }
  6545  
  6546  // Status code returns the HTTP status code for the request's response error.
  6547  func (s *ResourceLimitExceededException) StatusCode() int {
  6548  	return s.RespMetadata.StatusCode
  6549  }
  6550  
  6551  // RequestID returns the service's response RequestID for request.
  6552  func (s *ResourceLimitExceededException) RequestID() string {
  6553  	return s.RespMetadata.RequestID
  6554  }
  6555  
  6556  // Resource was not found.
  6557  type ResourceNotFoundException struct {
  6558  	_            struct{}                  `type:"structure"`
  6559  	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
  6560  
  6561  	Message_ *string `locationName:"message" type:"string"`
  6562  }
  6563  
  6564  // String returns the string representation.
  6565  //
  6566  // API parameter values that are decorated as "sensitive" in the API will not
  6567  // be included in the string output. The member name will be present, but the
  6568  // value will be replaced with "sensitive".
  6569  func (s ResourceNotFoundException) String() string {
  6570  	return awsutil.Prettify(s)
  6571  }
  6572  
  6573  // GoString returns the string representation.
  6574  //
  6575  // API parameter values that are decorated as "sensitive" in the API will not
  6576  // be included in the string output. The member name will be present, but the
  6577  // value will be replaced with "sensitive".
  6578  func (s ResourceNotFoundException) GoString() string {
  6579  	return s.String()
  6580  }
  6581  
  6582  func newErrorResourceNotFoundException(v protocol.ResponseMetadata) error {
  6583  	return &ResourceNotFoundException{
  6584  		RespMetadata: v,
  6585  	}
  6586  }
  6587  
  6588  // Code returns the exception type name.
  6589  func (s *ResourceNotFoundException) Code() string {
  6590  	return "ResourceNotFoundException"
  6591  }
  6592  
  6593  // Message returns the exception's message.
  6594  func (s *ResourceNotFoundException) Message() string {
  6595  	if s.Message_ != nil {
  6596  		return *s.Message_
  6597  	}
  6598  	return ""
  6599  }
  6600  
  6601  // OrigErr always returns nil, satisfies awserr.Error interface.
  6602  func (s *ResourceNotFoundException) OrigErr() error {
  6603  	return nil
  6604  }
  6605  
  6606  func (s *ResourceNotFoundException) Error() string {
  6607  	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
  6608  }
  6609  
  6610  // Status code returns the HTTP status code for the request's response error.
  6611  func (s *ResourceNotFoundException) StatusCode() int {
  6612  	return s.RespMetadata.StatusCode
  6613  }
  6614  
  6615  // RequestID returns the service's response RequestID for request.
  6616  func (s *ResourceNotFoundException) RequestID() string {
  6617  	return s.RespMetadata.RequestID
  6618  }
  6619  
  6620  // Information about an S3 recording Config.
  6621  type S3RecordingConfig struct {
  6622  	_ struct{} `type:"structure"`
  6623  
  6624  	// ARN of the bucket to record to.
  6625  	//
  6626  	// BucketArn is a required field
  6627  	BucketArn *string `locationName:"bucketArn" type:"string" required:"true"`
  6628  
  6629  	// S3 Key prefix to prefice data files.
  6630  	Prefix *string `locationName:"prefix" min:"1" type:"string"`
  6631  
  6632  	// ARN of the role Ground Station assumes to write data to the bucket.
  6633  	//
  6634  	// RoleArn is a required field
  6635  	RoleArn *string `locationName:"roleArn" type:"string" required:"true"`
  6636  }
  6637  
  6638  // String returns the string representation.
  6639  //
  6640  // API parameter values that are decorated as "sensitive" in the API will not
  6641  // be included in the string output. The member name will be present, but the
  6642  // value will be replaced with "sensitive".
  6643  func (s S3RecordingConfig) String() string {
  6644  	return awsutil.Prettify(s)
  6645  }
  6646  
  6647  // GoString returns the string representation.
  6648  //
  6649  // API parameter values that are decorated as "sensitive" in the API will not
  6650  // be included in the string output. The member name will be present, but the
  6651  // value will be replaced with "sensitive".
  6652  func (s S3RecordingConfig) GoString() string {
  6653  	return s.String()
  6654  }
  6655  
  6656  // Validate inspects the fields of the type to determine if they are valid.
  6657  func (s *S3RecordingConfig) Validate() error {
  6658  	invalidParams := request.ErrInvalidParams{Context: "S3RecordingConfig"}
  6659  	if s.BucketArn == nil {
  6660  		invalidParams.Add(request.NewErrParamRequired("BucketArn"))
  6661  	}
  6662  	if s.Prefix != nil && len(*s.Prefix) < 1 {
  6663  		invalidParams.Add(request.NewErrParamMinLen("Prefix", 1))
  6664  	}
  6665  	if s.RoleArn == nil {
  6666  		invalidParams.Add(request.NewErrParamRequired("RoleArn"))
  6667  	}
  6668  
  6669  	if invalidParams.Len() > 0 {
  6670  		return invalidParams
  6671  	}
  6672  	return nil
  6673  }
  6674  
  6675  // SetBucketArn sets the BucketArn field's value.
  6676  func (s *S3RecordingConfig) SetBucketArn(v string) *S3RecordingConfig {
  6677  	s.BucketArn = &v
  6678  	return s
  6679  }
  6680  
  6681  // SetPrefix sets the Prefix field's value.
  6682  func (s *S3RecordingConfig) SetPrefix(v string) *S3RecordingConfig {
  6683  	s.Prefix = &v
  6684  	return s
  6685  }
  6686  
  6687  // SetRoleArn sets the RoleArn field's value.
  6688  func (s *S3RecordingConfig) SetRoleArn(v string) *S3RecordingConfig {
  6689  	s.RoleArn = &v
  6690  	return s
  6691  }
  6692  
  6693  // Details about an S3 recording Config used in a contact.
  6694  type S3RecordingDetails struct {
  6695  	_ struct{} `type:"structure"`
  6696  
  6697  	// ARN of the bucket used.
  6698  	BucketArn *string `locationName:"bucketArn" type:"string"`
  6699  
  6700  	// Template of the S3 key used.
  6701  	KeyTemplate *string `locationName:"keyTemplate" type:"string"`
  6702  }
  6703  
  6704  // String returns the string representation.
  6705  //
  6706  // API parameter values that are decorated as "sensitive" in the API will not
  6707  // be included in the string output. The member name will be present, but the
  6708  // value will be replaced with "sensitive".
  6709  func (s S3RecordingDetails) String() string {
  6710  	return awsutil.Prettify(s)
  6711  }
  6712  
  6713  // GoString returns the string representation.
  6714  //
  6715  // API parameter values that are decorated as "sensitive" in the API will not
  6716  // be included in the string output. The member name will be present, but the
  6717  // value will be replaced with "sensitive".
  6718  func (s S3RecordingDetails) GoString() string {
  6719  	return s.String()
  6720  }
  6721  
  6722  // SetBucketArn sets the BucketArn field's value.
  6723  func (s *S3RecordingDetails) SetBucketArn(v string) *S3RecordingDetails {
  6724  	s.BucketArn = &v
  6725  	return s
  6726  }
  6727  
  6728  // SetKeyTemplate sets the KeyTemplate field's value.
  6729  func (s *S3RecordingDetails) SetKeyTemplate(v string) *S3RecordingDetails {
  6730  	s.KeyTemplate = &v
  6731  	return s
  6732  }
  6733  
  6734  // Item in a list of satellites.
  6735  type SatelliteListItem struct {
  6736  	_ struct{} `type:"structure"`
  6737  
  6738  	// A list of ground stations to which the satellite is on-boarded.
  6739  	GroundStations []*string `locationName:"groundStations" type:"list"`
  6740  
  6741  	// NORAD satellite ID number.
  6742  	NoradSatelliteID *int64 `locationName:"noradSatelliteID" min:"1" type:"integer"`
  6743  
  6744  	// ARN of a satellite.
  6745  	SatelliteArn *string `locationName:"satelliteArn" type:"string"`
  6746  
  6747  	// UUID of a satellite.
  6748  	SatelliteId *string `locationName:"satelliteId" min:"1" type:"string"`
  6749  }
  6750  
  6751  // String returns the string representation.
  6752  //
  6753  // API parameter values that are decorated as "sensitive" in the API will not
  6754  // be included in the string output. The member name will be present, but the
  6755  // value will be replaced with "sensitive".
  6756  func (s SatelliteListItem) String() string {
  6757  	return awsutil.Prettify(s)
  6758  }
  6759  
  6760  // GoString returns the string representation.
  6761  //
  6762  // API parameter values that are decorated as "sensitive" in the API will not
  6763  // be included in the string output. The member name will be present, but the
  6764  // value will be replaced with "sensitive".
  6765  func (s SatelliteListItem) GoString() string {
  6766  	return s.String()
  6767  }
  6768  
  6769  // SetGroundStations sets the GroundStations field's value.
  6770  func (s *SatelliteListItem) SetGroundStations(v []*string) *SatelliteListItem {
  6771  	s.GroundStations = v
  6772  	return s
  6773  }
  6774  
  6775  // SetNoradSatelliteID sets the NoradSatelliteID field's value.
  6776  func (s *SatelliteListItem) SetNoradSatelliteID(v int64) *SatelliteListItem {
  6777  	s.NoradSatelliteID = &v
  6778  	return s
  6779  }
  6780  
  6781  // SetSatelliteArn sets the SatelliteArn field's value.
  6782  func (s *SatelliteListItem) SetSatelliteArn(v string) *SatelliteListItem {
  6783  	s.SatelliteArn = &v
  6784  	return s
  6785  }
  6786  
  6787  // SetSatelliteId sets the SatelliteId field's value.
  6788  func (s *SatelliteListItem) SetSatelliteId(v string) *SatelliteListItem {
  6789  	s.SatelliteId = &v
  6790  	return s
  6791  }
  6792  
  6793  // Information about endpoints.
  6794  type SecurityDetails struct {
  6795  	_ struct{} `type:"structure"`
  6796  
  6797  	// ARN to a role needed for connecting streams to your instances.
  6798  	//
  6799  	// RoleArn is a required field
  6800  	RoleArn *string `locationName:"roleArn" type:"string" required:"true"`
  6801  
  6802  	// The security groups to attach to the elastic network interfaces.
  6803  	//
  6804  	// SecurityGroupIds is a required field
  6805  	SecurityGroupIds []*string `locationName:"securityGroupIds" type:"list" required:"true"`
  6806  
  6807  	// A list of subnets where AWS Ground Station places elastic network interfaces
  6808  	// to send streams to your instances.
  6809  	//
  6810  	// SubnetIds is a required field
  6811  	SubnetIds []*string `locationName:"subnetIds" type:"list" required:"true"`
  6812  }
  6813  
  6814  // String returns the string representation.
  6815  //
  6816  // API parameter values that are decorated as "sensitive" in the API will not
  6817  // be included in the string output. The member name will be present, but the
  6818  // value will be replaced with "sensitive".
  6819  func (s SecurityDetails) String() string {
  6820  	return awsutil.Prettify(s)
  6821  }
  6822  
  6823  // GoString returns the string representation.
  6824  //
  6825  // API parameter values that are decorated as "sensitive" in the API will not
  6826  // be included in the string output. The member name will be present, but the
  6827  // value will be replaced with "sensitive".
  6828  func (s SecurityDetails) GoString() string {
  6829  	return s.String()
  6830  }
  6831  
  6832  // Validate inspects the fields of the type to determine if they are valid.
  6833  func (s *SecurityDetails) Validate() error {
  6834  	invalidParams := request.ErrInvalidParams{Context: "SecurityDetails"}
  6835  	if s.RoleArn == nil {
  6836  		invalidParams.Add(request.NewErrParamRequired("RoleArn"))
  6837  	}
  6838  	if s.SecurityGroupIds == nil {
  6839  		invalidParams.Add(request.NewErrParamRequired("SecurityGroupIds"))
  6840  	}
  6841  	if s.SubnetIds == nil {
  6842  		invalidParams.Add(request.NewErrParamRequired("SubnetIds"))
  6843  	}
  6844  
  6845  	if invalidParams.Len() > 0 {
  6846  		return invalidParams
  6847  	}
  6848  	return nil
  6849  }
  6850  
  6851  // SetRoleArn sets the RoleArn field's value.
  6852  func (s *SecurityDetails) SetRoleArn(v string) *SecurityDetails {
  6853  	s.RoleArn = &v
  6854  	return s
  6855  }
  6856  
  6857  // SetSecurityGroupIds sets the SecurityGroupIds field's value.
  6858  func (s *SecurityDetails) SetSecurityGroupIds(v []*string) *SecurityDetails {
  6859  	s.SecurityGroupIds = v
  6860  	return s
  6861  }
  6862  
  6863  // SetSubnetIds sets the SubnetIds field's value.
  6864  func (s *SecurityDetails) SetSubnetIds(v []*string) *SecurityDetails {
  6865  	s.SubnetIds = v
  6866  	return s
  6867  }
  6868  
  6869  // Information about the socket address.
  6870  type SocketAddress struct {
  6871  	_ struct{} `type:"structure"`
  6872  
  6873  	// Name of a socket address.
  6874  	//
  6875  	// Name is a required field
  6876  	Name *string `locationName:"name" type:"string" required:"true"`
  6877  
  6878  	// Port of a socket address.
  6879  	//
  6880  	// Port is a required field
  6881  	Port *int64 `locationName:"port" type:"integer" required:"true"`
  6882  }
  6883  
  6884  // String returns the string representation.
  6885  //
  6886  // API parameter values that are decorated as "sensitive" in the API will not
  6887  // be included in the string output. The member name will be present, but the
  6888  // value will be replaced with "sensitive".
  6889  func (s SocketAddress) String() string {
  6890  	return awsutil.Prettify(s)
  6891  }
  6892  
  6893  // GoString returns the string representation.
  6894  //
  6895  // API parameter values that are decorated as "sensitive" in the API will not
  6896  // be included in the string output. The member name will be present, but the
  6897  // value will be replaced with "sensitive".
  6898  func (s SocketAddress) GoString() string {
  6899  	return s.String()
  6900  }
  6901  
  6902  // Validate inspects the fields of the type to determine if they are valid.
  6903  func (s *SocketAddress) Validate() error {
  6904  	invalidParams := request.ErrInvalidParams{Context: "SocketAddress"}
  6905  	if s.Name == nil {
  6906  		invalidParams.Add(request.NewErrParamRequired("Name"))
  6907  	}
  6908  	if s.Port == nil {
  6909  		invalidParams.Add(request.NewErrParamRequired("Port"))
  6910  	}
  6911  
  6912  	if invalidParams.Len() > 0 {
  6913  		return invalidParams
  6914  	}
  6915  	return nil
  6916  }
  6917  
  6918  // SetName sets the Name field's value.
  6919  func (s *SocketAddress) SetName(v string) *SocketAddress {
  6920  	s.Name = &v
  6921  	return s
  6922  }
  6923  
  6924  // SetPort sets the Port field's value.
  6925  func (s *SocketAddress) SetPort(v int64) *SocketAddress {
  6926  	s.Port = &v
  6927  	return s
  6928  }
  6929  
  6930  // Dataflow details for the source side.
  6931  type Source struct {
  6932  	_ struct{} `type:"structure"`
  6933  
  6934  	// Additional details for a Config, if type is dataflow endpoint or antenna
  6935  	// demod decode.
  6936  	ConfigDetails *ConfigDetails `locationName:"configDetails" type:"structure"`
  6937  
  6938  	// UUID of a Config.
  6939  	ConfigId *string `locationName:"configId" type:"string"`
  6940  
  6941  	// Type of a Config.
  6942  	ConfigType *string `locationName:"configType" type:"string" enum:"ConfigCapabilityType"`
  6943  
  6944  	// Region of a dataflow source.
  6945  	DataflowSourceRegion *string `locationName:"dataflowSourceRegion" type:"string"`
  6946  }
  6947  
  6948  // String returns the string representation.
  6949  //
  6950  // API parameter values that are decorated as "sensitive" in the API will not
  6951  // be included in the string output. The member name will be present, but the
  6952  // value will be replaced with "sensitive".
  6953  func (s Source) String() string {
  6954  	return awsutil.Prettify(s)
  6955  }
  6956  
  6957  // GoString returns the string representation.
  6958  //
  6959  // API parameter values that are decorated as "sensitive" in the API will not
  6960  // be included in the string output. The member name will be present, but the
  6961  // value will be replaced with "sensitive".
  6962  func (s Source) GoString() string {
  6963  	return s.String()
  6964  }
  6965  
  6966  // SetConfigDetails sets the ConfigDetails field's value.
  6967  func (s *Source) SetConfigDetails(v *ConfigDetails) *Source {
  6968  	s.ConfigDetails = v
  6969  	return s
  6970  }
  6971  
  6972  // SetConfigId sets the ConfigId field's value.
  6973  func (s *Source) SetConfigId(v string) *Source {
  6974  	s.ConfigId = &v
  6975  	return s
  6976  }
  6977  
  6978  // SetConfigType sets the ConfigType field's value.
  6979  func (s *Source) SetConfigType(v string) *Source {
  6980  	s.ConfigType = &v
  6981  	return s
  6982  }
  6983  
  6984  // SetDataflowSourceRegion sets the DataflowSourceRegion field's value.
  6985  func (s *Source) SetDataflowSourceRegion(v string) *Source {
  6986  	s.DataflowSourceRegion = &v
  6987  	return s
  6988  }
  6989  
  6990  // Object that describes a spectral Config.
  6991  type SpectrumConfig struct {
  6992  	_ struct{} `type:"structure"`
  6993  
  6994  	// Bandwidth of a spectral Config. AWS Ground Station currently has the following
  6995  	// bandwidth limitations:
  6996  	//
  6997  	//    * For AntennaDownlinkDemodDecodeconfig, valid values are between 125 kHz
  6998  	//    to 650 MHz.
  6999  	//
  7000  	//    * For AntennaDownlinkconfig valid values are between 10 kHz to 54 MHz.
  7001  	//
  7002  	//    * For AntennaUplinkConfig, valid values are between 10 kHz to 54 MHz.
  7003  	//
  7004  	// Bandwidth is a required field
  7005  	Bandwidth *FrequencyBandwidth `locationName:"bandwidth" type:"structure" required:"true"`
  7006  
  7007  	// Center frequency of a spectral Config. Valid values are between 2200 to 2300
  7008  	// MHz and 7750 to 8400 MHz for downlink and 2025 to 2120 MHz for uplink.
  7009  	//
  7010  	// CenterFrequency is a required field
  7011  	CenterFrequency *Frequency `locationName:"centerFrequency" type:"structure" required:"true"`
  7012  
  7013  	// Polarization of a spectral Config. Capturing both "RIGHT_HAND" and "LEFT_HAND"
  7014  	// polarization requires two separate configs.
  7015  	Polarization *string `locationName:"polarization" type:"string" enum:"Polarization"`
  7016  }
  7017  
  7018  // String returns the string representation.
  7019  //
  7020  // API parameter values that are decorated as "sensitive" in the API will not
  7021  // be included in the string output. The member name will be present, but the
  7022  // value will be replaced with "sensitive".
  7023  func (s SpectrumConfig) String() string {
  7024  	return awsutil.Prettify(s)
  7025  }
  7026  
  7027  // GoString returns the string representation.
  7028  //
  7029  // API parameter values that are decorated as "sensitive" in the API will not
  7030  // be included in the string output. The member name will be present, but the
  7031  // value will be replaced with "sensitive".
  7032  func (s SpectrumConfig) GoString() string {
  7033  	return s.String()
  7034  }
  7035  
  7036  // Validate inspects the fields of the type to determine if they are valid.
  7037  func (s *SpectrumConfig) Validate() error {
  7038  	invalidParams := request.ErrInvalidParams{Context: "SpectrumConfig"}
  7039  	if s.Bandwidth == nil {
  7040  		invalidParams.Add(request.NewErrParamRequired("Bandwidth"))
  7041  	}
  7042  	if s.CenterFrequency == nil {
  7043  		invalidParams.Add(request.NewErrParamRequired("CenterFrequency"))
  7044  	}
  7045  	if s.Bandwidth != nil {
  7046  		if err := s.Bandwidth.Validate(); err != nil {
  7047  			invalidParams.AddNested("Bandwidth", err.(request.ErrInvalidParams))
  7048  		}
  7049  	}
  7050  	if s.CenterFrequency != nil {
  7051  		if err := s.CenterFrequency.Validate(); err != nil {
  7052  			invalidParams.AddNested("CenterFrequency", err.(request.ErrInvalidParams))
  7053  		}
  7054  	}
  7055  
  7056  	if invalidParams.Len() > 0 {
  7057  		return invalidParams
  7058  	}
  7059  	return nil
  7060  }
  7061  
  7062  // SetBandwidth sets the Bandwidth field's value.
  7063  func (s *SpectrumConfig) SetBandwidth(v *FrequencyBandwidth) *SpectrumConfig {
  7064  	s.Bandwidth = v
  7065  	return s
  7066  }
  7067  
  7068  // SetCenterFrequency sets the CenterFrequency field's value.
  7069  func (s *SpectrumConfig) SetCenterFrequency(v *Frequency) *SpectrumConfig {
  7070  	s.CenterFrequency = v
  7071  	return s
  7072  }
  7073  
  7074  // SetPolarization sets the Polarization field's value.
  7075  func (s *SpectrumConfig) SetPolarization(v string) *SpectrumConfig {
  7076  	s.Polarization = &v
  7077  	return s
  7078  }
  7079  
  7080  type TagResourceInput struct {
  7081  	_ struct{} `type:"structure"`
  7082  
  7083  	// ARN of a resource tag.
  7084  	//
  7085  	// ResourceArn is a required field
  7086  	ResourceArn *string `location:"uri" locationName:"resourceArn" type:"string" required:"true"`
  7087  
  7088  	// Tags assigned to a resource.
  7089  	//
  7090  	// Tags is a required field
  7091  	Tags map[string]*string `locationName:"tags" type:"map" required:"true"`
  7092  }
  7093  
  7094  // String returns the string representation.
  7095  //
  7096  // API parameter values that are decorated as "sensitive" in the API will not
  7097  // be included in the string output. The member name will be present, but the
  7098  // value will be replaced with "sensitive".
  7099  func (s TagResourceInput) String() string {
  7100  	return awsutil.Prettify(s)
  7101  }
  7102  
  7103  // GoString returns the string representation.
  7104  //
  7105  // API parameter values that are decorated as "sensitive" in the API will not
  7106  // be included in the string output. The member name will be present, but the
  7107  // value will be replaced with "sensitive".
  7108  func (s TagResourceInput) GoString() string {
  7109  	return s.String()
  7110  }
  7111  
  7112  // Validate inspects the fields of the type to determine if they are valid.
  7113  func (s *TagResourceInput) Validate() error {
  7114  	invalidParams := request.ErrInvalidParams{Context: "TagResourceInput"}
  7115  	if s.ResourceArn == nil {
  7116  		invalidParams.Add(request.NewErrParamRequired("ResourceArn"))
  7117  	}
  7118  	if s.ResourceArn != nil && len(*s.ResourceArn) < 1 {
  7119  		invalidParams.Add(request.NewErrParamMinLen("ResourceArn", 1))
  7120  	}
  7121  	if s.Tags == nil {
  7122  		invalidParams.Add(request.NewErrParamRequired("Tags"))
  7123  	}
  7124  
  7125  	if invalidParams.Len() > 0 {
  7126  		return invalidParams
  7127  	}
  7128  	return nil
  7129  }
  7130  
  7131  // SetResourceArn sets the ResourceArn field's value.
  7132  func (s *TagResourceInput) SetResourceArn(v string) *TagResourceInput {
  7133  	s.ResourceArn = &v
  7134  	return s
  7135  }
  7136  
  7137  // SetTags sets the Tags field's value.
  7138  func (s *TagResourceInput) SetTags(v map[string]*string) *TagResourceInput {
  7139  	s.Tags = v
  7140  	return s
  7141  }
  7142  
  7143  type TagResourceOutput struct {
  7144  	_ struct{} `type:"structure" nopayload:"true"`
  7145  }
  7146  
  7147  // String returns the string representation.
  7148  //
  7149  // API parameter values that are decorated as "sensitive" in the API will not
  7150  // be included in the string output. The member name will be present, but the
  7151  // value will be replaced with "sensitive".
  7152  func (s TagResourceOutput) String() string {
  7153  	return awsutil.Prettify(s)
  7154  }
  7155  
  7156  // GoString returns the string representation.
  7157  //
  7158  // API parameter values that are decorated as "sensitive" in the API will not
  7159  // be included in the string output. The member name will be present, but the
  7160  // value will be replaced with "sensitive".
  7161  func (s TagResourceOutput) GoString() string {
  7162  	return s.String()
  7163  }
  7164  
  7165  // Object that determines whether tracking should be used during a contact executed
  7166  // with this Config in the mission profile.
  7167  type TrackingConfig struct {
  7168  	_ struct{} `type:"structure"`
  7169  
  7170  	// Current setting for autotrack.
  7171  	//
  7172  	// Autotrack is a required field
  7173  	Autotrack *string `locationName:"autotrack" type:"string" required:"true" enum:"Criticality"`
  7174  }
  7175  
  7176  // String returns the string representation.
  7177  //
  7178  // API parameter values that are decorated as "sensitive" in the API will not
  7179  // be included in the string output. The member name will be present, but the
  7180  // value will be replaced with "sensitive".
  7181  func (s TrackingConfig) String() string {
  7182  	return awsutil.Prettify(s)
  7183  }
  7184  
  7185  // GoString returns the string representation.
  7186  //
  7187  // API parameter values that are decorated as "sensitive" in the API will not
  7188  // be included in the string output. The member name will be present, but the
  7189  // value will be replaced with "sensitive".
  7190  func (s TrackingConfig) GoString() string {
  7191  	return s.String()
  7192  }
  7193  
  7194  // Validate inspects the fields of the type to determine if they are valid.
  7195  func (s *TrackingConfig) Validate() error {
  7196  	invalidParams := request.ErrInvalidParams{Context: "TrackingConfig"}
  7197  	if s.Autotrack == nil {
  7198  		invalidParams.Add(request.NewErrParamRequired("Autotrack"))
  7199  	}
  7200  
  7201  	if invalidParams.Len() > 0 {
  7202  		return invalidParams
  7203  	}
  7204  	return nil
  7205  }
  7206  
  7207  // SetAutotrack sets the Autotrack field's value.
  7208  func (s *TrackingConfig) SetAutotrack(v string) *TrackingConfig {
  7209  	s.Autotrack = &v
  7210  	return s
  7211  }
  7212  
  7213  type UntagResourceInput struct {
  7214  	_ struct{} `type:"structure" nopayload:"true"`
  7215  
  7216  	// ARN of a resource.
  7217  	//
  7218  	// ResourceArn is a required field
  7219  	ResourceArn *string `location:"uri" locationName:"resourceArn" type:"string" required:"true"`
  7220  
  7221  	// Keys of a resource tag.
  7222  	//
  7223  	// TagKeys is a required field
  7224  	TagKeys []*string `location:"querystring" locationName:"tagKeys" type:"list" required:"true"`
  7225  }
  7226  
  7227  // String returns the string representation.
  7228  //
  7229  // API parameter values that are decorated as "sensitive" in the API will not
  7230  // be included in the string output. The member name will be present, but the
  7231  // value will be replaced with "sensitive".
  7232  func (s UntagResourceInput) String() string {
  7233  	return awsutil.Prettify(s)
  7234  }
  7235  
  7236  // GoString returns the string representation.
  7237  //
  7238  // API parameter values that are decorated as "sensitive" in the API will not
  7239  // be included in the string output. The member name will be present, but the
  7240  // value will be replaced with "sensitive".
  7241  func (s UntagResourceInput) GoString() string {
  7242  	return s.String()
  7243  }
  7244  
  7245  // Validate inspects the fields of the type to determine if they are valid.
  7246  func (s *UntagResourceInput) Validate() error {
  7247  	invalidParams := request.ErrInvalidParams{Context: "UntagResourceInput"}
  7248  	if s.ResourceArn == nil {
  7249  		invalidParams.Add(request.NewErrParamRequired("ResourceArn"))
  7250  	}
  7251  	if s.ResourceArn != nil && len(*s.ResourceArn) < 1 {
  7252  		invalidParams.Add(request.NewErrParamMinLen("ResourceArn", 1))
  7253  	}
  7254  	if s.TagKeys == nil {
  7255  		invalidParams.Add(request.NewErrParamRequired("TagKeys"))
  7256  	}
  7257  
  7258  	if invalidParams.Len() > 0 {
  7259  		return invalidParams
  7260  	}
  7261  	return nil
  7262  }
  7263  
  7264  // SetResourceArn sets the ResourceArn field's value.
  7265  func (s *UntagResourceInput) SetResourceArn(v string) *UntagResourceInput {
  7266  	s.ResourceArn = &v
  7267  	return s
  7268  }
  7269  
  7270  // SetTagKeys sets the TagKeys field's value.
  7271  func (s *UntagResourceInput) SetTagKeys(v []*string) *UntagResourceInput {
  7272  	s.TagKeys = v
  7273  	return s
  7274  }
  7275  
  7276  type UntagResourceOutput struct {
  7277  	_ struct{} `type:"structure" nopayload:"true"`
  7278  }
  7279  
  7280  // String returns the string representation.
  7281  //
  7282  // API parameter values that are decorated as "sensitive" in the API will not
  7283  // be included in the string output. The member name will be present, but the
  7284  // value will be replaced with "sensitive".
  7285  func (s UntagResourceOutput) String() string {
  7286  	return awsutil.Prettify(s)
  7287  }
  7288  
  7289  // GoString returns the string representation.
  7290  //
  7291  // API parameter values that are decorated as "sensitive" in the API will not
  7292  // be included in the string output. The member name will be present, but the
  7293  // value will be replaced with "sensitive".
  7294  func (s UntagResourceOutput) GoString() string {
  7295  	return s.String()
  7296  }
  7297  
  7298  type UpdateConfigInput struct {
  7299  	_ struct{} `type:"structure"`
  7300  
  7301  	// Parameters of a Config.
  7302  	//
  7303  	// ConfigData is a required field
  7304  	ConfigData *ConfigTypeData `locationName:"configData" type:"structure" required:"true"`
  7305  
  7306  	// UUID of a Config.
  7307  	//
  7308  	// ConfigId is a required field
  7309  	ConfigId *string `location:"uri" locationName:"configId" type:"string" required:"true"`
  7310  
  7311  	// Type of a Config.
  7312  	//
  7313  	// ConfigType is a required field
  7314  	ConfigType *string `location:"uri" locationName:"configType" type:"string" required:"true" enum:"ConfigCapabilityType"`
  7315  
  7316  	// Name of a Config.
  7317  	//
  7318  	// Name is a required field
  7319  	Name *string `locationName:"name" min:"1" type:"string" required:"true"`
  7320  }
  7321  
  7322  // String returns the string representation.
  7323  //
  7324  // API parameter values that are decorated as "sensitive" in the API will not
  7325  // be included in the string output. The member name will be present, but the
  7326  // value will be replaced with "sensitive".
  7327  func (s UpdateConfigInput) String() string {
  7328  	return awsutil.Prettify(s)
  7329  }
  7330  
  7331  // GoString returns the string representation.
  7332  //
  7333  // API parameter values that are decorated as "sensitive" in the API will not
  7334  // be included in the string output. The member name will be present, but the
  7335  // value will be replaced with "sensitive".
  7336  func (s UpdateConfigInput) GoString() string {
  7337  	return s.String()
  7338  }
  7339  
  7340  // Validate inspects the fields of the type to determine if they are valid.
  7341  func (s *UpdateConfigInput) Validate() error {
  7342  	invalidParams := request.ErrInvalidParams{Context: "UpdateConfigInput"}
  7343  	if s.ConfigData == nil {
  7344  		invalidParams.Add(request.NewErrParamRequired("ConfigData"))
  7345  	}
  7346  	if s.ConfigId == nil {
  7347  		invalidParams.Add(request.NewErrParamRequired("ConfigId"))
  7348  	}
  7349  	if s.ConfigId != nil && len(*s.ConfigId) < 1 {
  7350  		invalidParams.Add(request.NewErrParamMinLen("ConfigId", 1))
  7351  	}
  7352  	if s.ConfigType == nil {
  7353  		invalidParams.Add(request.NewErrParamRequired("ConfigType"))
  7354  	}
  7355  	if s.ConfigType != nil && len(*s.ConfigType) < 1 {
  7356  		invalidParams.Add(request.NewErrParamMinLen("ConfigType", 1))
  7357  	}
  7358  	if s.Name == nil {
  7359  		invalidParams.Add(request.NewErrParamRequired("Name"))
  7360  	}
  7361  	if s.Name != nil && len(*s.Name) < 1 {
  7362  		invalidParams.Add(request.NewErrParamMinLen("Name", 1))
  7363  	}
  7364  	if s.ConfigData != nil {
  7365  		if err := s.ConfigData.Validate(); err != nil {
  7366  			invalidParams.AddNested("ConfigData", err.(request.ErrInvalidParams))
  7367  		}
  7368  	}
  7369  
  7370  	if invalidParams.Len() > 0 {
  7371  		return invalidParams
  7372  	}
  7373  	return nil
  7374  }
  7375  
  7376  // SetConfigData sets the ConfigData field's value.
  7377  func (s *UpdateConfigInput) SetConfigData(v *ConfigTypeData) *UpdateConfigInput {
  7378  	s.ConfigData = v
  7379  	return s
  7380  }
  7381  
  7382  // SetConfigId sets the ConfigId field's value.
  7383  func (s *UpdateConfigInput) SetConfigId(v string) *UpdateConfigInput {
  7384  	s.ConfigId = &v
  7385  	return s
  7386  }
  7387  
  7388  // SetConfigType sets the ConfigType field's value.
  7389  func (s *UpdateConfigInput) SetConfigType(v string) *UpdateConfigInput {
  7390  	s.ConfigType = &v
  7391  	return s
  7392  }
  7393  
  7394  // SetName sets the Name field's value.
  7395  func (s *UpdateConfigInput) SetName(v string) *UpdateConfigInput {
  7396  	s.Name = &v
  7397  	return s
  7398  }
  7399  
  7400  type UpdateConfigOutput struct {
  7401  	_ struct{} `type:"structure"`
  7402  
  7403  	// ARN of a Config.
  7404  	ConfigArn *string `locationName:"configArn" type:"string"`
  7405  
  7406  	// UUID of a Config.
  7407  	ConfigId *string `locationName:"configId" type:"string"`
  7408  
  7409  	// Type of a Config.
  7410  	ConfigType *string `locationName:"configType" type:"string" enum:"ConfigCapabilityType"`
  7411  }
  7412  
  7413  // String returns the string representation.
  7414  //
  7415  // API parameter values that are decorated as "sensitive" in the API will not
  7416  // be included in the string output. The member name will be present, but the
  7417  // value will be replaced with "sensitive".
  7418  func (s UpdateConfigOutput) String() string {
  7419  	return awsutil.Prettify(s)
  7420  }
  7421  
  7422  // GoString returns the string representation.
  7423  //
  7424  // API parameter values that are decorated as "sensitive" in the API will not
  7425  // be included in the string output. The member name will be present, but the
  7426  // value will be replaced with "sensitive".
  7427  func (s UpdateConfigOutput) GoString() string {
  7428  	return s.String()
  7429  }
  7430  
  7431  // SetConfigArn sets the ConfigArn field's value.
  7432  func (s *UpdateConfigOutput) SetConfigArn(v string) *UpdateConfigOutput {
  7433  	s.ConfigArn = &v
  7434  	return s
  7435  }
  7436  
  7437  // SetConfigId sets the ConfigId field's value.
  7438  func (s *UpdateConfigOutput) SetConfigId(v string) *UpdateConfigOutput {
  7439  	s.ConfigId = &v
  7440  	return s
  7441  }
  7442  
  7443  // SetConfigType sets the ConfigType field's value.
  7444  func (s *UpdateConfigOutput) SetConfigType(v string) *UpdateConfigOutput {
  7445  	s.ConfigType = &v
  7446  	return s
  7447  }
  7448  
  7449  type UpdateMissionProfileInput struct {
  7450  	_ struct{} `type:"structure"`
  7451  
  7452  	// Amount of time after a contact ends that you’d like to receive a CloudWatch
  7453  	// event indicating the pass has finished.
  7454  	ContactPostPassDurationSeconds *int64 `locationName:"contactPostPassDurationSeconds" min:"1" type:"integer"`
  7455  
  7456  	// Amount of time after a contact ends that you’d like to receive a CloudWatch
  7457  	// event indicating the pass has finished.
  7458  	ContactPrePassDurationSeconds *int64 `locationName:"contactPrePassDurationSeconds" min:"1" type:"integer"`
  7459  
  7460  	// A list of lists of ARNs. Each list of ARNs is an edge, with a from Config
  7461  	// and a to Config.
  7462  	DataflowEdges [][]*string `locationName:"dataflowEdges" type:"list"`
  7463  
  7464  	// Smallest amount of time in seconds that you’d like to see for an available
  7465  	// contact. AWS Ground Station will not present you with contacts shorter than
  7466  	// this duration.
  7467  	MinimumViableContactDurationSeconds *int64 `locationName:"minimumViableContactDurationSeconds" min:"1" type:"integer"`
  7468  
  7469  	// UUID of a mission profile.
  7470  	//
  7471  	// MissionProfileId is a required field
  7472  	MissionProfileId *string `location:"uri" locationName:"missionProfileId" type:"string" required:"true"`
  7473  
  7474  	// Name of a mission profile.
  7475  	Name *string `locationName:"name" min:"1" type:"string"`
  7476  
  7477  	// ARN of a tracking Config.
  7478  	TrackingConfigArn *string `locationName:"trackingConfigArn" type:"string"`
  7479  }
  7480  
  7481  // String returns the string representation.
  7482  //
  7483  // API parameter values that are decorated as "sensitive" in the API will not
  7484  // be included in the string output. The member name will be present, but the
  7485  // value will be replaced with "sensitive".
  7486  func (s UpdateMissionProfileInput) String() string {
  7487  	return awsutil.Prettify(s)
  7488  }
  7489  
  7490  // GoString returns the string representation.
  7491  //
  7492  // API parameter values that are decorated as "sensitive" in the API will not
  7493  // be included in the string output. The member name will be present, but the
  7494  // value will be replaced with "sensitive".
  7495  func (s UpdateMissionProfileInput) GoString() string {
  7496  	return s.String()
  7497  }
  7498  
  7499  // Validate inspects the fields of the type to determine if they are valid.
  7500  func (s *UpdateMissionProfileInput) Validate() error {
  7501  	invalidParams := request.ErrInvalidParams{Context: "UpdateMissionProfileInput"}
  7502  	if s.ContactPostPassDurationSeconds != nil && *s.ContactPostPassDurationSeconds < 1 {
  7503  		invalidParams.Add(request.NewErrParamMinValue("ContactPostPassDurationSeconds", 1))
  7504  	}
  7505  	if s.ContactPrePassDurationSeconds != nil && *s.ContactPrePassDurationSeconds < 1 {
  7506  		invalidParams.Add(request.NewErrParamMinValue("ContactPrePassDurationSeconds", 1))
  7507  	}
  7508  	if s.MinimumViableContactDurationSeconds != nil && *s.MinimumViableContactDurationSeconds < 1 {
  7509  		invalidParams.Add(request.NewErrParamMinValue("MinimumViableContactDurationSeconds", 1))
  7510  	}
  7511  	if s.MissionProfileId == nil {
  7512  		invalidParams.Add(request.NewErrParamRequired("MissionProfileId"))
  7513  	}
  7514  	if s.MissionProfileId != nil && len(*s.MissionProfileId) < 1 {
  7515  		invalidParams.Add(request.NewErrParamMinLen("MissionProfileId", 1))
  7516  	}
  7517  	if s.Name != nil && len(*s.Name) < 1 {
  7518  		invalidParams.Add(request.NewErrParamMinLen("Name", 1))
  7519  	}
  7520  
  7521  	if invalidParams.Len() > 0 {
  7522  		return invalidParams
  7523  	}
  7524  	return nil
  7525  }
  7526  
  7527  // SetContactPostPassDurationSeconds sets the ContactPostPassDurationSeconds field's value.
  7528  func (s *UpdateMissionProfileInput) SetContactPostPassDurationSeconds(v int64) *UpdateMissionProfileInput {
  7529  	s.ContactPostPassDurationSeconds = &v
  7530  	return s
  7531  }
  7532  
  7533  // SetContactPrePassDurationSeconds sets the ContactPrePassDurationSeconds field's value.
  7534  func (s *UpdateMissionProfileInput) SetContactPrePassDurationSeconds(v int64) *UpdateMissionProfileInput {
  7535  	s.ContactPrePassDurationSeconds = &v
  7536  	return s
  7537  }
  7538  
  7539  // SetDataflowEdges sets the DataflowEdges field's value.
  7540  func (s *UpdateMissionProfileInput) SetDataflowEdges(v [][]*string) *UpdateMissionProfileInput {
  7541  	s.DataflowEdges = v
  7542  	return s
  7543  }
  7544  
  7545  // SetMinimumViableContactDurationSeconds sets the MinimumViableContactDurationSeconds field's value.
  7546  func (s *UpdateMissionProfileInput) SetMinimumViableContactDurationSeconds(v int64) *UpdateMissionProfileInput {
  7547  	s.MinimumViableContactDurationSeconds = &v
  7548  	return s
  7549  }
  7550  
  7551  // SetMissionProfileId sets the MissionProfileId field's value.
  7552  func (s *UpdateMissionProfileInput) SetMissionProfileId(v string) *UpdateMissionProfileInput {
  7553  	s.MissionProfileId = &v
  7554  	return s
  7555  }
  7556  
  7557  // SetName sets the Name field's value.
  7558  func (s *UpdateMissionProfileInput) SetName(v string) *UpdateMissionProfileInput {
  7559  	s.Name = &v
  7560  	return s
  7561  }
  7562  
  7563  // SetTrackingConfigArn sets the TrackingConfigArn field's value.
  7564  func (s *UpdateMissionProfileInput) SetTrackingConfigArn(v string) *UpdateMissionProfileInput {
  7565  	s.TrackingConfigArn = &v
  7566  	return s
  7567  }
  7568  
  7569  type UpdateMissionProfileOutput struct {
  7570  	_ struct{} `type:"structure"`
  7571  
  7572  	// UUID of a mission profile.
  7573  	MissionProfileId *string `locationName:"missionProfileId" type:"string"`
  7574  }
  7575  
  7576  // String returns the string representation.
  7577  //
  7578  // API parameter values that are decorated as "sensitive" in the API will not
  7579  // be included in the string output. The member name will be present, but the
  7580  // value will be replaced with "sensitive".
  7581  func (s UpdateMissionProfileOutput) String() string {
  7582  	return awsutil.Prettify(s)
  7583  }
  7584  
  7585  // GoString returns the string representation.
  7586  //
  7587  // API parameter values that are decorated as "sensitive" in the API will not
  7588  // be included in the string output. The member name will be present, but the
  7589  // value will be replaced with "sensitive".
  7590  func (s UpdateMissionProfileOutput) GoString() string {
  7591  	return s.String()
  7592  }
  7593  
  7594  // SetMissionProfileId sets the MissionProfileId field's value.
  7595  func (s *UpdateMissionProfileOutput) SetMissionProfileId(v string) *UpdateMissionProfileOutput {
  7596  	s.MissionProfileId = &v
  7597  	return s
  7598  }
  7599  
  7600  // Information about an uplink echo Config.
  7601  //
  7602  // Parameters from the AntennaUplinkConfig, corresponding to the specified AntennaUplinkConfigArn,
  7603  // are used when this UplinkEchoConfig is used in a contact.
  7604  type UplinkEchoConfig struct {
  7605  	_ struct{} `type:"structure"`
  7606  
  7607  	// ARN of an uplink Config.
  7608  	//
  7609  	// AntennaUplinkConfigArn is a required field
  7610  	AntennaUplinkConfigArn *string `locationName:"antennaUplinkConfigArn" type:"string" required:"true"`
  7611  
  7612  	// Whether or not an uplink Config is enabled.
  7613  	//
  7614  	// Enabled is a required field
  7615  	Enabled *bool `locationName:"enabled" type:"boolean" required:"true"`
  7616  }
  7617  
  7618  // String returns the string representation.
  7619  //
  7620  // API parameter values that are decorated as "sensitive" in the API will not
  7621  // be included in the string output. The member name will be present, but the
  7622  // value will be replaced with "sensitive".
  7623  func (s UplinkEchoConfig) String() string {
  7624  	return awsutil.Prettify(s)
  7625  }
  7626  
  7627  // GoString returns the string representation.
  7628  //
  7629  // API parameter values that are decorated as "sensitive" in the API will not
  7630  // be included in the string output. The member name will be present, but the
  7631  // value will be replaced with "sensitive".
  7632  func (s UplinkEchoConfig) GoString() string {
  7633  	return s.String()
  7634  }
  7635  
  7636  // Validate inspects the fields of the type to determine if they are valid.
  7637  func (s *UplinkEchoConfig) Validate() error {
  7638  	invalidParams := request.ErrInvalidParams{Context: "UplinkEchoConfig"}
  7639  	if s.AntennaUplinkConfigArn == nil {
  7640  		invalidParams.Add(request.NewErrParamRequired("AntennaUplinkConfigArn"))
  7641  	}
  7642  	if s.Enabled == nil {
  7643  		invalidParams.Add(request.NewErrParamRequired("Enabled"))
  7644  	}
  7645  
  7646  	if invalidParams.Len() > 0 {
  7647  		return invalidParams
  7648  	}
  7649  	return nil
  7650  }
  7651  
  7652  // SetAntennaUplinkConfigArn sets the AntennaUplinkConfigArn field's value.
  7653  func (s *UplinkEchoConfig) SetAntennaUplinkConfigArn(v string) *UplinkEchoConfig {
  7654  	s.AntennaUplinkConfigArn = &v
  7655  	return s
  7656  }
  7657  
  7658  // SetEnabled sets the Enabled field's value.
  7659  func (s *UplinkEchoConfig) SetEnabled(v bool) *UplinkEchoConfig {
  7660  	s.Enabled = &v
  7661  	return s
  7662  }
  7663  
  7664  // Information about the uplink spectral Config.
  7665  type UplinkSpectrumConfig struct {
  7666  	_ struct{} `type:"structure"`
  7667  
  7668  	// Center frequency of an uplink spectral Config. Valid values are between 2025
  7669  	// to 2120 MHz.
  7670  	//
  7671  	// CenterFrequency is a required field
  7672  	CenterFrequency *Frequency `locationName:"centerFrequency" type:"structure" required:"true"`
  7673  
  7674  	// Polarization of an uplink spectral Config. Capturing both "RIGHT_HAND" and
  7675  	// "LEFT_HAND" polarization requires two separate configs.
  7676  	Polarization *string `locationName:"polarization" type:"string" enum:"Polarization"`
  7677  }
  7678  
  7679  // String returns the string representation.
  7680  //
  7681  // API parameter values that are decorated as "sensitive" in the API will not
  7682  // be included in the string output. The member name will be present, but the
  7683  // value will be replaced with "sensitive".
  7684  func (s UplinkSpectrumConfig) String() string {
  7685  	return awsutil.Prettify(s)
  7686  }
  7687  
  7688  // GoString returns the string representation.
  7689  //
  7690  // API parameter values that are decorated as "sensitive" in the API will not
  7691  // be included in the string output. The member name will be present, but the
  7692  // value will be replaced with "sensitive".
  7693  func (s UplinkSpectrumConfig) GoString() string {
  7694  	return s.String()
  7695  }
  7696  
  7697  // Validate inspects the fields of the type to determine if they are valid.
  7698  func (s *UplinkSpectrumConfig) Validate() error {
  7699  	invalidParams := request.ErrInvalidParams{Context: "UplinkSpectrumConfig"}
  7700  	if s.CenterFrequency == nil {
  7701  		invalidParams.Add(request.NewErrParamRequired("CenterFrequency"))
  7702  	}
  7703  	if s.CenterFrequency != nil {
  7704  		if err := s.CenterFrequency.Validate(); err != nil {
  7705  			invalidParams.AddNested("CenterFrequency", err.(request.ErrInvalidParams))
  7706  		}
  7707  	}
  7708  
  7709  	if invalidParams.Len() > 0 {
  7710  		return invalidParams
  7711  	}
  7712  	return nil
  7713  }
  7714  
  7715  // SetCenterFrequency sets the CenterFrequency field's value.
  7716  func (s *UplinkSpectrumConfig) SetCenterFrequency(v *Frequency) *UplinkSpectrumConfig {
  7717  	s.CenterFrequency = v
  7718  	return s
  7719  }
  7720  
  7721  // SetPolarization sets the Polarization field's value.
  7722  func (s *UplinkSpectrumConfig) SetPolarization(v string) *UplinkSpectrumConfig {
  7723  	s.Polarization = &v
  7724  	return s
  7725  }
  7726  
  7727  const (
  7728  	// AngleUnitsDegreeAngle is a AngleUnits enum value
  7729  	AngleUnitsDegreeAngle = "DEGREE_ANGLE"
  7730  
  7731  	// AngleUnitsRadian is a AngleUnits enum value
  7732  	AngleUnitsRadian = "RADIAN"
  7733  )
  7734  
  7735  // AngleUnits_Values returns all elements of the AngleUnits enum
  7736  func AngleUnits_Values() []string {
  7737  	return []string{
  7738  		AngleUnitsDegreeAngle,
  7739  		AngleUnitsRadian,
  7740  	}
  7741  }
  7742  
  7743  const (
  7744  	// BandwidthUnitsGhz is a BandwidthUnits enum value
  7745  	BandwidthUnitsGhz = "GHz"
  7746  
  7747  	// BandwidthUnitsMhz is a BandwidthUnits enum value
  7748  	BandwidthUnitsMhz = "MHz"
  7749  
  7750  	// BandwidthUnitsKHz is a BandwidthUnits enum value
  7751  	BandwidthUnitsKHz = "kHz"
  7752  )
  7753  
  7754  // BandwidthUnits_Values returns all elements of the BandwidthUnits enum
  7755  func BandwidthUnits_Values() []string {
  7756  	return []string{
  7757  		BandwidthUnitsGhz,
  7758  		BandwidthUnitsMhz,
  7759  		BandwidthUnitsKHz,
  7760  	}
  7761  }
  7762  
  7763  const (
  7764  	// ConfigCapabilityTypeAntennaDownlink is a ConfigCapabilityType enum value
  7765  	ConfigCapabilityTypeAntennaDownlink = "antenna-downlink"
  7766  
  7767  	// ConfigCapabilityTypeAntennaDownlinkDemodDecode is a ConfigCapabilityType enum value
  7768  	ConfigCapabilityTypeAntennaDownlinkDemodDecode = "antenna-downlink-demod-decode"
  7769  
  7770  	// ConfigCapabilityTypeAntennaUplink is a ConfigCapabilityType enum value
  7771  	ConfigCapabilityTypeAntennaUplink = "antenna-uplink"
  7772  
  7773  	// ConfigCapabilityTypeDataflowEndpoint is a ConfigCapabilityType enum value
  7774  	ConfigCapabilityTypeDataflowEndpoint = "dataflow-endpoint"
  7775  
  7776  	// ConfigCapabilityTypeTracking is a ConfigCapabilityType enum value
  7777  	ConfigCapabilityTypeTracking = "tracking"
  7778  
  7779  	// ConfigCapabilityTypeUplinkEcho is a ConfigCapabilityType enum value
  7780  	ConfigCapabilityTypeUplinkEcho = "uplink-echo"
  7781  
  7782  	// ConfigCapabilityTypeS3Recording is a ConfigCapabilityType enum value
  7783  	ConfigCapabilityTypeS3Recording = "s3-recording"
  7784  )
  7785  
  7786  // ConfigCapabilityType_Values returns all elements of the ConfigCapabilityType enum
  7787  func ConfigCapabilityType_Values() []string {
  7788  	return []string{
  7789  		ConfigCapabilityTypeAntennaDownlink,
  7790  		ConfigCapabilityTypeAntennaDownlinkDemodDecode,
  7791  		ConfigCapabilityTypeAntennaUplink,
  7792  		ConfigCapabilityTypeDataflowEndpoint,
  7793  		ConfigCapabilityTypeTracking,
  7794  		ConfigCapabilityTypeUplinkEcho,
  7795  		ConfigCapabilityTypeS3Recording,
  7796  	}
  7797  }
  7798  
  7799  const (
  7800  	// ContactStatusAvailable is a ContactStatus enum value
  7801  	ContactStatusAvailable = "AVAILABLE"
  7802  
  7803  	// ContactStatusAwsCancelled is a ContactStatus enum value
  7804  	ContactStatusAwsCancelled = "AWS_CANCELLED"
  7805  
  7806  	// ContactStatusAwsFailed is a ContactStatus enum value
  7807  	ContactStatusAwsFailed = "AWS_FAILED"
  7808  
  7809  	// ContactStatusCancelled is a ContactStatus enum value
  7810  	ContactStatusCancelled = "CANCELLED"
  7811  
  7812  	// ContactStatusCancelling is a ContactStatus enum value
  7813  	ContactStatusCancelling = "CANCELLING"
  7814  
  7815  	// ContactStatusCompleted is a ContactStatus enum value
  7816  	ContactStatusCompleted = "COMPLETED"
  7817  
  7818  	// ContactStatusFailed is a ContactStatus enum value
  7819  	ContactStatusFailed = "FAILED"
  7820  
  7821  	// ContactStatusFailedToSchedule is a ContactStatus enum value
  7822  	ContactStatusFailedToSchedule = "FAILED_TO_SCHEDULE"
  7823  
  7824  	// ContactStatusPass is a ContactStatus enum value
  7825  	ContactStatusPass = "PASS"
  7826  
  7827  	// ContactStatusPostpass is a ContactStatus enum value
  7828  	ContactStatusPostpass = "POSTPASS"
  7829  
  7830  	// ContactStatusPrepass is a ContactStatus enum value
  7831  	ContactStatusPrepass = "PREPASS"
  7832  
  7833  	// ContactStatusScheduled is a ContactStatus enum value
  7834  	ContactStatusScheduled = "SCHEDULED"
  7835  
  7836  	// ContactStatusScheduling is a ContactStatus enum value
  7837  	ContactStatusScheduling = "SCHEDULING"
  7838  )
  7839  
  7840  // ContactStatus_Values returns all elements of the ContactStatus enum
  7841  func ContactStatus_Values() []string {
  7842  	return []string{
  7843  		ContactStatusAvailable,
  7844  		ContactStatusAwsCancelled,
  7845  		ContactStatusAwsFailed,
  7846  		ContactStatusCancelled,
  7847  		ContactStatusCancelling,
  7848  		ContactStatusCompleted,
  7849  		ContactStatusFailed,
  7850  		ContactStatusFailedToSchedule,
  7851  		ContactStatusPass,
  7852  		ContactStatusPostpass,
  7853  		ContactStatusPrepass,
  7854  		ContactStatusScheduled,
  7855  		ContactStatusScheduling,
  7856  	}
  7857  }
  7858  
  7859  const (
  7860  	// CriticalityPreferred is a Criticality enum value
  7861  	CriticalityPreferred = "PREFERRED"
  7862  
  7863  	// CriticalityRemoved is a Criticality enum value
  7864  	CriticalityRemoved = "REMOVED"
  7865  
  7866  	// CriticalityRequired is a Criticality enum value
  7867  	CriticalityRequired = "REQUIRED"
  7868  )
  7869  
  7870  // Criticality_Values returns all elements of the Criticality enum
  7871  func Criticality_Values() []string {
  7872  	return []string{
  7873  		CriticalityPreferred,
  7874  		CriticalityRemoved,
  7875  		CriticalityRequired,
  7876  	}
  7877  }
  7878  
  7879  const (
  7880  	// EirpUnitsDBw is a EirpUnits enum value
  7881  	EirpUnitsDBw = "dBW"
  7882  )
  7883  
  7884  // EirpUnits_Values returns all elements of the EirpUnits enum
  7885  func EirpUnits_Values() []string {
  7886  	return []string{
  7887  		EirpUnitsDBw,
  7888  	}
  7889  }
  7890  
  7891  const (
  7892  	// EndpointStatusCreated is a EndpointStatus enum value
  7893  	EndpointStatusCreated = "created"
  7894  
  7895  	// EndpointStatusCreating is a EndpointStatus enum value
  7896  	EndpointStatusCreating = "creating"
  7897  
  7898  	// EndpointStatusDeleted is a EndpointStatus enum value
  7899  	EndpointStatusDeleted = "deleted"
  7900  
  7901  	// EndpointStatusDeleting is a EndpointStatus enum value
  7902  	EndpointStatusDeleting = "deleting"
  7903  
  7904  	// EndpointStatusFailed is a EndpointStatus enum value
  7905  	EndpointStatusFailed = "failed"
  7906  )
  7907  
  7908  // EndpointStatus_Values returns all elements of the EndpointStatus enum
  7909  func EndpointStatus_Values() []string {
  7910  	return []string{
  7911  		EndpointStatusCreated,
  7912  		EndpointStatusCreating,
  7913  		EndpointStatusDeleted,
  7914  		EndpointStatusDeleting,
  7915  		EndpointStatusFailed,
  7916  	}
  7917  }
  7918  
  7919  const (
  7920  	// FrequencyUnitsGhz is a FrequencyUnits enum value
  7921  	FrequencyUnitsGhz = "GHz"
  7922  
  7923  	// FrequencyUnitsMhz is a FrequencyUnits enum value
  7924  	FrequencyUnitsMhz = "MHz"
  7925  
  7926  	// FrequencyUnitsKHz is a FrequencyUnits enum value
  7927  	FrequencyUnitsKHz = "kHz"
  7928  )
  7929  
  7930  // FrequencyUnits_Values returns all elements of the FrequencyUnits enum
  7931  func FrequencyUnits_Values() []string {
  7932  	return []string{
  7933  		FrequencyUnitsGhz,
  7934  		FrequencyUnitsMhz,
  7935  		FrequencyUnitsKHz,
  7936  	}
  7937  }
  7938  
  7939  const (
  7940  	// PolarizationLeftHand is a Polarization enum value
  7941  	PolarizationLeftHand = "LEFT_HAND"
  7942  
  7943  	// PolarizationNone is a Polarization enum value
  7944  	PolarizationNone = "NONE"
  7945  
  7946  	// PolarizationRightHand is a Polarization enum value
  7947  	PolarizationRightHand = "RIGHT_HAND"
  7948  )
  7949  
  7950  // Polarization_Values returns all elements of the Polarization enum
  7951  func Polarization_Values() []string {
  7952  	return []string{
  7953  		PolarizationLeftHand,
  7954  		PolarizationNone,
  7955  		PolarizationRightHand,
  7956  	}
  7957  }