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

     1  // Code generated by private/model/cli/gen-api/main.go. DO NOT EDIT.
     2  
     3  package iotwireless
     4  
     5  import (
     6  	"fmt"
     7  
     8  	"github.com/aavshr/aws-sdk-go/aws"
     9  	"github.com/aavshr/aws-sdk-go/aws/awsutil"
    10  	"github.com/aavshr/aws-sdk-go/aws/request"
    11  	"github.com/aavshr/aws-sdk-go/private/protocol"
    12  	"github.com/aavshr/aws-sdk-go/private/protocol/restjson"
    13  )
    14  
    15  const opAssociateAwsAccountWithPartnerAccount = "AssociateAwsAccountWithPartnerAccount"
    16  
    17  // AssociateAwsAccountWithPartnerAccountRequest generates a "aws/request.Request" representing the
    18  // client's request for the AssociateAwsAccountWithPartnerAccount operation. The "output" return
    19  // value will be populated with the request's response once the request completes
    20  // successfully.
    21  //
    22  // Use "Send" method on the returned Request to send the API call to the service.
    23  // the "output" return value is not valid until after Send returns without error.
    24  //
    25  // See AssociateAwsAccountWithPartnerAccount for more information on using the AssociateAwsAccountWithPartnerAccount
    26  // API call, and error handling.
    27  //
    28  // This method is useful when you want to inject custom logic or configuration
    29  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
    30  //
    31  //
    32  //    // Example sending a request using the AssociateAwsAccountWithPartnerAccountRequest method.
    33  //    req, resp := client.AssociateAwsAccountWithPartnerAccountRequest(params)
    34  //
    35  //    err := req.Send()
    36  //    if err == nil { // resp is now filled
    37  //        fmt.Println(resp)
    38  //    }
    39  //
    40  // See also, https://docs.aws.amazon.com/goto/WebAPI/iotwireless-2020-11-22/AssociateAwsAccountWithPartnerAccount
    41  func (c *IoTWireless) AssociateAwsAccountWithPartnerAccountRequest(input *AssociateAwsAccountWithPartnerAccountInput) (req *request.Request, output *AssociateAwsAccountWithPartnerAccountOutput) {
    42  	op := &request.Operation{
    43  		Name:       opAssociateAwsAccountWithPartnerAccount,
    44  		HTTPMethod: "POST",
    45  		HTTPPath:   "/partner-accounts",
    46  	}
    47  
    48  	if input == nil {
    49  		input = &AssociateAwsAccountWithPartnerAccountInput{}
    50  	}
    51  
    52  	output = &AssociateAwsAccountWithPartnerAccountOutput{}
    53  	req = c.newRequest(op, input, output)
    54  	return
    55  }
    56  
    57  // AssociateAwsAccountWithPartnerAccount API operation for AWS IoT Wireless.
    58  //
    59  // Associates a partner account with your AWS account.
    60  //
    61  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
    62  // with awserr.Error's Code and Message methods to get detailed information about
    63  // the error.
    64  //
    65  // See the AWS API reference guide for AWS IoT Wireless's
    66  // API operation AssociateAwsAccountWithPartnerAccount for usage and error information.
    67  //
    68  // Returned Error Types:
    69  //   * ValidationException
    70  //   The input did not meet the specified constraints.
    71  //
    72  //   * ResourceNotFoundException
    73  //   Resource does not exist.
    74  //
    75  //   * InternalServerException
    76  //   An unexpected error occurred while processing a request.
    77  //
    78  //   * ThrottlingException
    79  //   The request was denied because it exceeded the allowed API request rate.
    80  //
    81  //   * ConflictException
    82  //   Adding, updating, or deleting the resource can cause an inconsistent state.
    83  //
    84  //   * AccessDeniedException
    85  //   User does not have permission to perform this action.
    86  //
    87  // See also, https://docs.aws.amazon.com/goto/WebAPI/iotwireless-2020-11-22/AssociateAwsAccountWithPartnerAccount
    88  func (c *IoTWireless) AssociateAwsAccountWithPartnerAccount(input *AssociateAwsAccountWithPartnerAccountInput) (*AssociateAwsAccountWithPartnerAccountOutput, error) {
    89  	req, out := c.AssociateAwsAccountWithPartnerAccountRequest(input)
    90  	return out, req.Send()
    91  }
    92  
    93  // AssociateAwsAccountWithPartnerAccountWithContext is the same as AssociateAwsAccountWithPartnerAccount with the addition of
    94  // the ability to pass a context and additional request options.
    95  //
    96  // See AssociateAwsAccountWithPartnerAccount for details on how to use this API operation.
    97  //
    98  // The context must be non-nil and will be used for request cancellation. If
    99  // the context is nil a panic will occur. In the future the SDK may create
   100  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
   101  // for more information on using Contexts.
   102  func (c *IoTWireless) AssociateAwsAccountWithPartnerAccountWithContext(ctx aws.Context, input *AssociateAwsAccountWithPartnerAccountInput, opts ...request.Option) (*AssociateAwsAccountWithPartnerAccountOutput, error) {
   103  	req, out := c.AssociateAwsAccountWithPartnerAccountRequest(input)
   104  	req.SetContext(ctx)
   105  	req.ApplyOptions(opts...)
   106  	return out, req.Send()
   107  }
   108  
   109  const opAssociateWirelessDeviceWithThing = "AssociateWirelessDeviceWithThing"
   110  
   111  // AssociateWirelessDeviceWithThingRequest generates a "aws/request.Request" representing the
   112  // client's request for the AssociateWirelessDeviceWithThing operation. The "output" return
   113  // value will be populated with the request's response once the request completes
   114  // successfully.
   115  //
   116  // Use "Send" method on the returned Request to send the API call to the service.
   117  // the "output" return value is not valid until after Send returns without error.
   118  //
   119  // See AssociateWirelessDeviceWithThing for more information on using the AssociateWirelessDeviceWithThing
   120  // API call, and error handling.
   121  //
   122  // This method is useful when you want to inject custom logic or configuration
   123  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
   124  //
   125  //
   126  //    // Example sending a request using the AssociateWirelessDeviceWithThingRequest method.
   127  //    req, resp := client.AssociateWirelessDeviceWithThingRequest(params)
   128  //
   129  //    err := req.Send()
   130  //    if err == nil { // resp is now filled
   131  //        fmt.Println(resp)
   132  //    }
   133  //
   134  // See also, https://docs.aws.amazon.com/goto/WebAPI/iotwireless-2020-11-22/AssociateWirelessDeviceWithThing
   135  func (c *IoTWireless) AssociateWirelessDeviceWithThingRequest(input *AssociateWirelessDeviceWithThingInput) (req *request.Request, output *AssociateWirelessDeviceWithThingOutput) {
   136  	op := &request.Operation{
   137  		Name:       opAssociateWirelessDeviceWithThing,
   138  		HTTPMethod: "PUT",
   139  		HTTPPath:   "/wireless-devices/{Id}/thing",
   140  	}
   141  
   142  	if input == nil {
   143  		input = &AssociateWirelessDeviceWithThingInput{}
   144  	}
   145  
   146  	output = &AssociateWirelessDeviceWithThingOutput{}
   147  	req = c.newRequest(op, input, output)
   148  	req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
   149  	return
   150  }
   151  
   152  // AssociateWirelessDeviceWithThing API operation for AWS IoT Wireless.
   153  //
   154  // Associates a wireless device with a thing.
   155  //
   156  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
   157  // with awserr.Error's Code and Message methods to get detailed information about
   158  // the error.
   159  //
   160  // See the AWS API reference guide for AWS IoT Wireless's
   161  // API operation AssociateWirelessDeviceWithThing for usage and error information.
   162  //
   163  // Returned Error Types:
   164  //   * ValidationException
   165  //   The input did not meet the specified constraints.
   166  //
   167  //   * AccessDeniedException
   168  //   User does not have permission to perform this action.
   169  //
   170  //   * ResourceNotFoundException
   171  //   Resource does not exist.
   172  //
   173  //   * ConflictException
   174  //   Adding, updating, or deleting the resource can cause an inconsistent state.
   175  //
   176  //   * ThrottlingException
   177  //   The request was denied because it exceeded the allowed API request rate.
   178  //
   179  //   * InternalServerException
   180  //   An unexpected error occurred while processing a request.
   181  //
   182  // See also, https://docs.aws.amazon.com/goto/WebAPI/iotwireless-2020-11-22/AssociateWirelessDeviceWithThing
   183  func (c *IoTWireless) AssociateWirelessDeviceWithThing(input *AssociateWirelessDeviceWithThingInput) (*AssociateWirelessDeviceWithThingOutput, error) {
   184  	req, out := c.AssociateWirelessDeviceWithThingRequest(input)
   185  	return out, req.Send()
   186  }
   187  
   188  // AssociateWirelessDeviceWithThingWithContext is the same as AssociateWirelessDeviceWithThing with the addition of
   189  // the ability to pass a context and additional request options.
   190  //
   191  // See AssociateWirelessDeviceWithThing for details on how to use this API operation.
   192  //
   193  // The context must be non-nil and will be used for request cancellation. If
   194  // the context is nil a panic will occur. In the future the SDK may create
   195  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
   196  // for more information on using Contexts.
   197  func (c *IoTWireless) AssociateWirelessDeviceWithThingWithContext(ctx aws.Context, input *AssociateWirelessDeviceWithThingInput, opts ...request.Option) (*AssociateWirelessDeviceWithThingOutput, error) {
   198  	req, out := c.AssociateWirelessDeviceWithThingRequest(input)
   199  	req.SetContext(ctx)
   200  	req.ApplyOptions(opts...)
   201  	return out, req.Send()
   202  }
   203  
   204  const opAssociateWirelessGatewayWithCertificate = "AssociateWirelessGatewayWithCertificate"
   205  
   206  // AssociateWirelessGatewayWithCertificateRequest generates a "aws/request.Request" representing the
   207  // client's request for the AssociateWirelessGatewayWithCertificate operation. The "output" return
   208  // value will be populated with the request's response once the request completes
   209  // successfully.
   210  //
   211  // Use "Send" method on the returned Request to send the API call to the service.
   212  // the "output" return value is not valid until after Send returns without error.
   213  //
   214  // See AssociateWirelessGatewayWithCertificate for more information on using the AssociateWirelessGatewayWithCertificate
   215  // API call, and error handling.
   216  //
   217  // This method is useful when you want to inject custom logic or configuration
   218  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
   219  //
   220  //
   221  //    // Example sending a request using the AssociateWirelessGatewayWithCertificateRequest method.
   222  //    req, resp := client.AssociateWirelessGatewayWithCertificateRequest(params)
   223  //
   224  //    err := req.Send()
   225  //    if err == nil { // resp is now filled
   226  //        fmt.Println(resp)
   227  //    }
   228  //
   229  // See also, https://docs.aws.amazon.com/goto/WebAPI/iotwireless-2020-11-22/AssociateWirelessGatewayWithCertificate
   230  func (c *IoTWireless) AssociateWirelessGatewayWithCertificateRequest(input *AssociateWirelessGatewayWithCertificateInput) (req *request.Request, output *AssociateWirelessGatewayWithCertificateOutput) {
   231  	op := &request.Operation{
   232  		Name:       opAssociateWirelessGatewayWithCertificate,
   233  		HTTPMethod: "PUT",
   234  		HTTPPath:   "/wireless-gateways/{Id}/certificate",
   235  	}
   236  
   237  	if input == nil {
   238  		input = &AssociateWirelessGatewayWithCertificateInput{}
   239  	}
   240  
   241  	output = &AssociateWirelessGatewayWithCertificateOutput{}
   242  	req = c.newRequest(op, input, output)
   243  	return
   244  }
   245  
   246  // AssociateWirelessGatewayWithCertificate API operation for AWS IoT Wireless.
   247  //
   248  // Associates a wireless gateway with a certificate.
   249  //
   250  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
   251  // with awserr.Error's Code and Message methods to get detailed information about
   252  // the error.
   253  //
   254  // See the AWS API reference guide for AWS IoT Wireless's
   255  // API operation AssociateWirelessGatewayWithCertificate for usage and error information.
   256  //
   257  // Returned Error Types:
   258  //   * ValidationException
   259  //   The input did not meet the specified constraints.
   260  //
   261  //   * AccessDeniedException
   262  //   User does not have permission to perform this action.
   263  //
   264  //   * ResourceNotFoundException
   265  //   Resource does not exist.
   266  //
   267  //   * ConflictException
   268  //   Adding, updating, or deleting the resource can cause an inconsistent state.
   269  //
   270  //   * InternalServerException
   271  //   An unexpected error occurred while processing a request.
   272  //
   273  //   * ThrottlingException
   274  //   The request was denied because it exceeded the allowed API request rate.
   275  //
   276  // See also, https://docs.aws.amazon.com/goto/WebAPI/iotwireless-2020-11-22/AssociateWirelessGatewayWithCertificate
   277  func (c *IoTWireless) AssociateWirelessGatewayWithCertificate(input *AssociateWirelessGatewayWithCertificateInput) (*AssociateWirelessGatewayWithCertificateOutput, error) {
   278  	req, out := c.AssociateWirelessGatewayWithCertificateRequest(input)
   279  	return out, req.Send()
   280  }
   281  
   282  // AssociateWirelessGatewayWithCertificateWithContext is the same as AssociateWirelessGatewayWithCertificate with the addition of
   283  // the ability to pass a context and additional request options.
   284  //
   285  // See AssociateWirelessGatewayWithCertificate for details on how to use this API operation.
   286  //
   287  // The context must be non-nil and will be used for request cancellation. If
   288  // the context is nil a panic will occur. In the future the SDK may create
   289  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
   290  // for more information on using Contexts.
   291  func (c *IoTWireless) AssociateWirelessGatewayWithCertificateWithContext(ctx aws.Context, input *AssociateWirelessGatewayWithCertificateInput, opts ...request.Option) (*AssociateWirelessGatewayWithCertificateOutput, error) {
   292  	req, out := c.AssociateWirelessGatewayWithCertificateRequest(input)
   293  	req.SetContext(ctx)
   294  	req.ApplyOptions(opts...)
   295  	return out, req.Send()
   296  }
   297  
   298  const opAssociateWirelessGatewayWithThing = "AssociateWirelessGatewayWithThing"
   299  
   300  // AssociateWirelessGatewayWithThingRequest generates a "aws/request.Request" representing the
   301  // client's request for the AssociateWirelessGatewayWithThing operation. The "output" return
   302  // value will be populated with the request's response once the request completes
   303  // successfully.
   304  //
   305  // Use "Send" method on the returned Request to send the API call to the service.
   306  // the "output" return value is not valid until after Send returns without error.
   307  //
   308  // See AssociateWirelessGatewayWithThing for more information on using the AssociateWirelessGatewayWithThing
   309  // API call, and error handling.
   310  //
   311  // This method is useful when you want to inject custom logic or configuration
   312  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
   313  //
   314  //
   315  //    // Example sending a request using the AssociateWirelessGatewayWithThingRequest method.
   316  //    req, resp := client.AssociateWirelessGatewayWithThingRequest(params)
   317  //
   318  //    err := req.Send()
   319  //    if err == nil { // resp is now filled
   320  //        fmt.Println(resp)
   321  //    }
   322  //
   323  // See also, https://docs.aws.amazon.com/goto/WebAPI/iotwireless-2020-11-22/AssociateWirelessGatewayWithThing
   324  func (c *IoTWireless) AssociateWirelessGatewayWithThingRequest(input *AssociateWirelessGatewayWithThingInput) (req *request.Request, output *AssociateWirelessGatewayWithThingOutput) {
   325  	op := &request.Operation{
   326  		Name:       opAssociateWirelessGatewayWithThing,
   327  		HTTPMethod: "PUT",
   328  		HTTPPath:   "/wireless-gateways/{Id}/thing",
   329  	}
   330  
   331  	if input == nil {
   332  		input = &AssociateWirelessGatewayWithThingInput{}
   333  	}
   334  
   335  	output = &AssociateWirelessGatewayWithThingOutput{}
   336  	req = c.newRequest(op, input, output)
   337  	req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
   338  	return
   339  }
   340  
   341  // AssociateWirelessGatewayWithThing API operation for AWS IoT Wireless.
   342  //
   343  // Associates a wireless gateway with a thing.
   344  //
   345  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
   346  // with awserr.Error's Code and Message methods to get detailed information about
   347  // the error.
   348  //
   349  // See the AWS API reference guide for AWS IoT Wireless's
   350  // API operation AssociateWirelessGatewayWithThing for usage and error information.
   351  //
   352  // Returned Error Types:
   353  //   * ValidationException
   354  //   The input did not meet the specified constraints.
   355  //
   356  //   * ResourceNotFoundException
   357  //   Resource does not exist.
   358  //
   359  //   * AccessDeniedException
   360  //   User does not have permission to perform this action.
   361  //
   362  //   * ConflictException
   363  //   Adding, updating, or deleting the resource can cause an inconsistent state.
   364  //
   365  //   * ThrottlingException
   366  //   The request was denied because it exceeded the allowed API request rate.
   367  //
   368  //   * InternalServerException
   369  //   An unexpected error occurred while processing a request.
   370  //
   371  // See also, https://docs.aws.amazon.com/goto/WebAPI/iotwireless-2020-11-22/AssociateWirelessGatewayWithThing
   372  func (c *IoTWireless) AssociateWirelessGatewayWithThing(input *AssociateWirelessGatewayWithThingInput) (*AssociateWirelessGatewayWithThingOutput, error) {
   373  	req, out := c.AssociateWirelessGatewayWithThingRequest(input)
   374  	return out, req.Send()
   375  }
   376  
   377  // AssociateWirelessGatewayWithThingWithContext is the same as AssociateWirelessGatewayWithThing with the addition of
   378  // the ability to pass a context and additional request options.
   379  //
   380  // See AssociateWirelessGatewayWithThing for details on how to use this API operation.
   381  //
   382  // The context must be non-nil and will be used for request cancellation. If
   383  // the context is nil a panic will occur. In the future the SDK may create
   384  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
   385  // for more information on using Contexts.
   386  func (c *IoTWireless) AssociateWirelessGatewayWithThingWithContext(ctx aws.Context, input *AssociateWirelessGatewayWithThingInput, opts ...request.Option) (*AssociateWirelessGatewayWithThingOutput, error) {
   387  	req, out := c.AssociateWirelessGatewayWithThingRequest(input)
   388  	req.SetContext(ctx)
   389  	req.ApplyOptions(opts...)
   390  	return out, req.Send()
   391  }
   392  
   393  const opCreateDestination = "CreateDestination"
   394  
   395  // CreateDestinationRequest generates a "aws/request.Request" representing the
   396  // client's request for the CreateDestination operation. The "output" return
   397  // value will be populated with the request's response once the request completes
   398  // successfully.
   399  //
   400  // Use "Send" method on the returned Request to send the API call to the service.
   401  // the "output" return value is not valid until after Send returns without error.
   402  //
   403  // See CreateDestination for more information on using the CreateDestination
   404  // API call, and error handling.
   405  //
   406  // This method is useful when you want to inject custom logic or configuration
   407  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
   408  //
   409  //
   410  //    // Example sending a request using the CreateDestinationRequest method.
   411  //    req, resp := client.CreateDestinationRequest(params)
   412  //
   413  //    err := req.Send()
   414  //    if err == nil { // resp is now filled
   415  //        fmt.Println(resp)
   416  //    }
   417  //
   418  // See also, https://docs.aws.amazon.com/goto/WebAPI/iotwireless-2020-11-22/CreateDestination
   419  func (c *IoTWireless) CreateDestinationRequest(input *CreateDestinationInput) (req *request.Request, output *CreateDestinationOutput) {
   420  	op := &request.Operation{
   421  		Name:       opCreateDestination,
   422  		HTTPMethod: "POST",
   423  		HTTPPath:   "/destinations",
   424  	}
   425  
   426  	if input == nil {
   427  		input = &CreateDestinationInput{}
   428  	}
   429  
   430  	output = &CreateDestinationOutput{}
   431  	req = c.newRequest(op, input, output)
   432  	return
   433  }
   434  
   435  // CreateDestination API operation for AWS IoT Wireless.
   436  //
   437  // Creates a new destination that maps a device message to an AWS IoT rule.
   438  //
   439  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
   440  // with awserr.Error's Code and Message methods to get detailed information about
   441  // the error.
   442  //
   443  // See the AWS API reference guide for AWS IoT Wireless's
   444  // API operation CreateDestination for usage and error information.
   445  //
   446  // Returned Error Types:
   447  //   * ValidationException
   448  //   The input did not meet the specified constraints.
   449  //
   450  //   * ResourceNotFoundException
   451  //   Resource does not exist.
   452  //
   453  //   * AccessDeniedException
   454  //   User does not have permission to perform this action.
   455  //
   456  //   * ConflictException
   457  //   Adding, updating, or deleting the resource can cause an inconsistent state.
   458  //
   459  //   * InternalServerException
   460  //   An unexpected error occurred while processing a request.
   461  //
   462  //   * ThrottlingException
   463  //   The request was denied because it exceeded the allowed API request rate.
   464  //
   465  // See also, https://docs.aws.amazon.com/goto/WebAPI/iotwireless-2020-11-22/CreateDestination
   466  func (c *IoTWireless) CreateDestination(input *CreateDestinationInput) (*CreateDestinationOutput, error) {
   467  	req, out := c.CreateDestinationRequest(input)
   468  	return out, req.Send()
   469  }
   470  
   471  // CreateDestinationWithContext is the same as CreateDestination with the addition of
   472  // the ability to pass a context and additional request options.
   473  //
   474  // See CreateDestination for details on how to use this API operation.
   475  //
   476  // The context must be non-nil and will be used for request cancellation. If
   477  // the context is nil a panic will occur. In the future the SDK may create
   478  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
   479  // for more information on using Contexts.
   480  func (c *IoTWireless) CreateDestinationWithContext(ctx aws.Context, input *CreateDestinationInput, opts ...request.Option) (*CreateDestinationOutput, error) {
   481  	req, out := c.CreateDestinationRequest(input)
   482  	req.SetContext(ctx)
   483  	req.ApplyOptions(opts...)
   484  	return out, req.Send()
   485  }
   486  
   487  const opCreateDeviceProfile = "CreateDeviceProfile"
   488  
   489  // CreateDeviceProfileRequest generates a "aws/request.Request" representing the
   490  // client's request for the CreateDeviceProfile operation. The "output" return
   491  // value will be populated with the request's response once the request completes
   492  // successfully.
   493  //
   494  // Use "Send" method on the returned Request to send the API call to the service.
   495  // the "output" return value is not valid until after Send returns without error.
   496  //
   497  // See CreateDeviceProfile for more information on using the CreateDeviceProfile
   498  // API call, and error handling.
   499  //
   500  // This method is useful when you want to inject custom logic or configuration
   501  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
   502  //
   503  //
   504  //    // Example sending a request using the CreateDeviceProfileRequest method.
   505  //    req, resp := client.CreateDeviceProfileRequest(params)
   506  //
   507  //    err := req.Send()
   508  //    if err == nil { // resp is now filled
   509  //        fmt.Println(resp)
   510  //    }
   511  //
   512  // See also, https://docs.aws.amazon.com/goto/WebAPI/iotwireless-2020-11-22/CreateDeviceProfile
   513  func (c *IoTWireless) CreateDeviceProfileRequest(input *CreateDeviceProfileInput) (req *request.Request, output *CreateDeviceProfileOutput) {
   514  	op := &request.Operation{
   515  		Name:       opCreateDeviceProfile,
   516  		HTTPMethod: "POST",
   517  		HTTPPath:   "/device-profiles",
   518  	}
   519  
   520  	if input == nil {
   521  		input = &CreateDeviceProfileInput{}
   522  	}
   523  
   524  	output = &CreateDeviceProfileOutput{}
   525  	req = c.newRequest(op, input, output)
   526  	return
   527  }
   528  
   529  // CreateDeviceProfile API operation for AWS IoT Wireless.
   530  //
   531  // Creates a new device profile.
   532  //
   533  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
   534  // with awserr.Error's Code and Message methods to get detailed information about
   535  // the error.
   536  //
   537  // See the AWS API reference guide for AWS IoT Wireless's
   538  // API operation CreateDeviceProfile for usage and error information.
   539  //
   540  // Returned Error Types:
   541  //   * ValidationException
   542  //   The input did not meet the specified constraints.
   543  //
   544  //   * AccessDeniedException
   545  //   User does not have permission to perform this action.
   546  //
   547  //   * ConflictException
   548  //   Adding, updating, or deleting the resource can cause an inconsistent state.
   549  //
   550  //   * InternalServerException
   551  //   An unexpected error occurred while processing a request.
   552  //
   553  //   * ThrottlingException
   554  //   The request was denied because it exceeded the allowed API request rate.
   555  //
   556  // See also, https://docs.aws.amazon.com/goto/WebAPI/iotwireless-2020-11-22/CreateDeviceProfile
   557  func (c *IoTWireless) CreateDeviceProfile(input *CreateDeviceProfileInput) (*CreateDeviceProfileOutput, error) {
   558  	req, out := c.CreateDeviceProfileRequest(input)
   559  	return out, req.Send()
   560  }
   561  
   562  // CreateDeviceProfileWithContext is the same as CreateDeviceProfile with the addition of
   563  // the ability to pass a context and additional request options.
   564  //
   565  // See CreateDeviceProfile for details on how to use this API operation.
   566  //
   567  // The context must be non-nil and will be used for request cancellation. If
   568  // the context is nil a panic will occur. In the future the SDK may create
   569  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
   570  // for more information on using Contexts.
   571  func (c *IoTWireless) CreateDeviceProfileWithContext(ctx aws.Context, input *CreateDeviceProfileInput, opts ...request.Option) (*CreateDeviceProfileOutput, error) {
   572  	req, out := c.CreateDeviceProfileRequest(input)
   573  	req.SetContext(ctx)
   574  	req.ApplyOptions(opts...)
   575  	return out, req.Send()
   576  }
   577  
   578  const opCreateServiceProfile = "CreateServiceProfile"
   579  
   580  // CreateServiceProfileRequest generates a "aws/request.Request" representing the
   581  // client's request for the CreateServiceProfile operation. The "output" return
   582  // value will be populated with the request's response once the request completes
   583  // successfully.
   584  //
   585  // Use "Send" method on the returned Request to send the API call to the service.
   586  // the "output" return value is not valid until after Send returns without error.
   587  //
   588  // See CreateServiceProfile for more information on using the CreateServiceProfile
   589  // API call, and error handling.
   590  //
   591  // This method is useful when you want to inject custom logic or configuration
   592  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
   593  //
   594  //
   595  //    // Example sending a request using the CreateServiceProfileRequest method.
   596  //    req, resp := client.CreateServiceProfileRequest(params)
   597  //
   598  //    err := req.Send()
   599  //    if err == nil { // resp is now filled
   600  //        fmt.Println(resp)
   601  //    }
   602  //
   603  // See also, https://docs.aws.amazon.com/goto/WebAPI/iotwireless-2020-11-22/CreateServiceProfile
   604  func (c *IoTWireless) CreateServiceProfileRequest(input *CreateServiceProfileInput) (req *request.Request, output *CreateServiceProfileOutput) {
   605  	op := &request.Operation{
   606  		Name:       opCreateServiceProfile,
   607  		HTTPMethod: "POST",
   608  		HTTPPath:   "/service-profiles",
   609  	}
   610  
   611  	if input == nil {
   612  		input = &CreateServiceProfileInput{}
   613  	}
   614  
   615  	output = &CreateServiceProfileOutput{}
   616  	req = c.newRequest(op, input, output)
   617  	return
   618  }
   619  
   620  // CreateServiceProfile API operation for AWS IoT Wireless.
   621  //
   622  // Creates a new service profile.
   623  //
   624  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
   625  // with awserr.Error's Code and Message methods to get detailed information about
   626  // the error.
   627  //
   628  // See the AWS API reference guide for AWS IoT Wireless's
   629  // API operation CreateServiceProfile for usage and error information.
   630  //
   631  // Returned Error Types:
   632  //   * ValidationException
   633  //   The input did not meet the specified constraints.
   634  //
   635  //   * AccessDeniedException
   636  //   User does not have permission to perform this action.
   637  //
   638  //   * ConflictException
   639  //   Adding, updating, or deleting the resource can cause an inconsistent state.
   640  //
   641  //   * InternalServerException
   642  //   An unexpected error occurred while processing a request.
   643  //
   644  //   * ThrottlingException
   645  //   The request was denied because it exceeded the allowed API request rate.
   646  //
   647  // See also, https://docs.aws.amazon.com/goto/WebAPI/iotwireless-2020-11-22/CreateServiceProfile
   648  func (c *IoTWireless) CreateServiceProfile(input *CreateServiceProfileInput) (*CreateServiceProfileOutput, error) {
   649  	req, out := c.CreateServiceProfileRequest(input)
   650  	return out, req.Send()
   651  }
   652  
   653  // CreateServiceProfileWithContext is the same as CreateServiceProfile with the addition of
   654  // the ability to pass a context and additional request options.
   655  //
   656  // See CreateServiceProfile for details on how to use this API operation.
   657  //
   658  // The context must be non-nil and will be used for request cancellation. If
   659  // the context is nil a panic will occur. In the future the SDK may create
   660  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
   661  // for more information on using Contexts.
   662  func (c *IoTWireless) CreateServiceProfileWithContext(ctx aws.Context, input *CreateServiceProfileInput, opts ...request.Option) (*CreateServiceProfileOutput, error) {
   663  	req, out := c.CreateServiceProfileRequest(input)
   664  	req.SetContext(ctx)
   665  	req.ApplyOptions(opts...)
   666  	return out, req.Send()
   667  }
   668  
   669  const opCreateWirelessDevice = "CreateWirelessDevice"
   670  
   671  // CreateWirelessDeviceRequest generates a "aws/request.Request" representing the
   672  // client's request for the CreateWirelessDevice operation. The "output" return
   673  // value will be populated with the request's response once the request completes
   674  // successfully.
   675  //
   676  // Use "Send" method on the returned Request to send the API call to the service.
   677  // the "output" return value is not valid until after Send returns without error.
   678  //
   679  // See CreateWirelessDevice for more information on using the CreateWirelessDevice
   680  // API call, and error handling.
   681  //
   682  // This method is useful when you want to inject custom logic or configuration
   683  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
   684  //
   685  //
   686  //    // Example sending a request using the CreateWirelessDeviceRequest method.
   687  //    req, resp := client.CreateWirelessDeviceRequest(params)
   688  //
   689  //    err := req.Send()
   690  //    if err == nil { // resp is now filled
   691  //        fmt.Println(resp)
   692  //    }
   693  //
   694  // See also, https://docs.aws.amazon.com/goto/WebAPI/iotwireless-2020-11-22/CreateWirelessDevice
   695  func (c *IoTWireless) CreateWirelessDeviceRequest(input *CreateWirelessDeviceInput) (req *request.Request, output *CreateWirelessDeviceOutput) {
   696  	op := &request.Operation{
   697  		Name:       opCreateWirelessDevice,
   698  		HTTPMethod: "POST",
   699  		HTTPPath:   "/wireless-devices",
   700  	}
   701  
   702  	if input == nil {
   703  		input = &CreateWirelessDeviceInput{}
   704  	}
   705  
   706  	output = &CreateWirelessDeviceOutput{}
   707  	req = c.newRequest(op, input, output)
   708  	return
   709  }
   710  
   711  // CreateWirelessDevice API operation for AWS IoT Wireless.
   712  //
   713  // Provisions a wireless device.
   714  //
   715  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
   716  // with awserr.Error's Code and Message methods to get detailed information about
   717  // the error.
   718  //
   719  // See the AWS API reference guide for AWS IoT Wireless's
   720  // API operation CreateWirelessDevice for usage and error information.
   721  //
   722  // Returned Error Types:
   723  //   * ValidationException
   724  //   The input did not meet the specified constraints.
   725  //
   726  //   * ResourceNotFoundException
   727  //   Resource does not exist.
   728  //
   729  //   * AccessDeniedException
   730  //   User does not have permission to perform this action.
   731  //
   732  //   * ConflictException
   733  //   Adding, updating, or deleting the resource can cause an inconsistent state.
   734  //
   735  //   * InternalServerException
   736  //   An unexpected error occurred while processing a request.
   737  //
   738  //   * ThrottlingException
   739  //   The request was denied because it exceeded the allowed API request rate.
   740  //
   741  // See also, https://docs.aws.amazon.com/goto/WebAPI/iotwireless-2020-11-22/CreateWirelessDevice
   742  func (c *IoTWireless) CreateWirelessDevice(input *CreateWirelessDeviceInput) (*CreateWirelessDeviceOutput, error) {
   743  	req, out := c.CreateWirelessDeviceRequest(input)
   744  	return out, req.Send()
   745  }
   746  
   747  // CreateWirelessDeviceWithContext is the same as CreateWirelessDevice with the addition of
   748  // the ability to pass a context and additional request options.
   749  //
   750  // See CreateWirelessDevice for details on how to use this API operation.
   751  //
   752  // The context must be non-nil and will be used for request cancellation. If
   753  // the context is nil a panic will occur. In the future the SDK may create
   754  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
   755  // for more information on using Contexts.
   756  func (c *IoTWireless) CreateWirelessDeviceWithContext(ctx aws.Context, input *CreateWirelessDeviceInput, opts ...request.Option) (*CreateWirelessDeviceOutput, error) {
   757  	req, out := c.CreateWirelessDeviceRequest(input)
   758  	req.SetContext(ctx)
   759  	req.ApplyOptions(opts...)
   760  	return out, req.Send()
   761  }
   762  
   763  const opCreateWirelessGateway = "CreateWirelessGateway"
   764  
   765  // CreateWirelessGatewayRequest generates a "aws/request.Request" representing the
   766  // client's request for the CreateWirelessGateway operation. The "output" return
   767  // value will be populated with the request's response once the request completes
   768  // successfully.
   769  //
   770  // Use "Send" method on the returned Request to send the API call to the service.
   771  // the "output" return value is not valid until after Send returns without error.
   772  //
   773  // See CreateWirelessGateway for more information on using the CreateWirelessGateway
   774  // API call, and error handling.
   775  //
   776  // This method is useful when you want to inject custom logic or configuration
   777  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
   778  //
   779  //
   780  //    // Example sending a request using the CreateWirelessGatewayRequest method.
   781  //    req, resp := client.CreateWirelessGatewayRequest(params)
   782  //
   783  //    err := req.Send()
   784  //    if err == nil { // resp is now filled
   785  //        fmt.Println(resp)
   786  //    }
   787  //
   788  // See also, https://docs.aws.amazon.com/goto/WebAPI/iotwireless-2020-11-22/CreateWirelessGateway
   789  func (c *IoTWireless) CreateWirelessGatewayRequest(input *CreateWirelessGatewayInput) (req *request.Request, output *CreateWirelessGatewayOutput) {
   790  	op := &request.Operation{
   791  		Name:       opCreateWirelessGateway,
   792  		HTTPMethod: "POST",
   793  		HTTPPath:   "/wireless-gateways",
   794  	}
   795  
   796  	if input == nil {
   797  		input = &CreateWirelessGatewayInput{}
   798  	}
   799  
   800  	output = &CreateWirelessGatewayOutput{}
   801  	req = c.newRequest(op, input, output)
   802  	return
   803  }
   804  
   805  // CreateWirelessGateway API operation for AWS IoT Wireless.
   806  //
   807  // Provisions a wireless gateway.
   808  //
   809  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
   810  // with awserr.Error's Code and Message methods to get detailed information about
   811  // the error.
   812  //
   813  // See the AWS API reference guide for AWS IoT Wireless's
   814  // API operation CreateWirelessGateway for usage and error information.
   815  //
   816  // Returned Error Types:
   817  //   * ValidationException
   818  //   The input did not meet the specified constraints.
   819  //
   820  //   * AccessDeniedException
   821  //   User does not have permission to perform this action.
   822  //
   823  //   * ConflictException
   824  //   Adding, updating, or deleting the resource can cause an inconsistent state.
   825  //
   826  //   * InternalServerException
   827  //   An unexpected error occurred while processing a request.
   828  //
   829  //   * ThrottlingException
   830  //   The request was denied because it exceeded the allowed API request rate.
   831  //
   832  // See also, https://docs.aws.amazon.com/goto/WebAPI/iotwireless-2020-11-22/CreateWirelessGateway
   833  func (c *IoTWireless) CreateWirelessGateway(input *CreateWirelessGatewayInput) (*CreateWirelessGatewayOutput, error) {
   834  	req, out := c.CreateWirelessGatewayRequest(input)
   835  	return out, req.Send()
   836  }
   837  
   838  // CreateWirelessGatewayWithContext is the same as CreateWirelessGateway with the addition of
   839  // the ability to pass a context and additional request options.
   840  //
   841  // See CreateWirelessGateway for details on how to use this API operation.
   842  //
   843  // The context must be non-nil and will be used for request cancellation. If
   844  // the context is nil a panic will occur. In the future the SDK may create
   845  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
   846  // for more information on using Contexts.
   847  func (c *IoTWireless) CreateWirelessGatewayWithContext(ctx aws.Context, input *CreateWirelessGatewayInput, opts ...request.Option) (*CreateWirelessGatewayOutput, error) {
   848  	req, out := c.CreateWirelessGatewayRequest(input)
   849  	req.SetContext(ctx)
   850  	req.ApplyOptions(opts...)
   851  	return out, req.Send()
   852  }
   853  
   854  const opCreateWirelessGatewayTask = "CreateWirelessGatewayTask"
   855  
   856  // CreateWirelessGatewayTaskRequest generates a "aws/request.Request" representing the
   857  // client's request for the CreateWirelessGatewayTask operation. The "output" return
   858  // value will be populated with the request's response once the request completes
   859  // successfully.
   860  //
   861  // Use "Send" method on the returned Request to send the API call to the service.
   862  // the "output" return value is not valid until after Send returns without error.
   863  //
   864  // See CreateWirelessGatewayTask for more information on using the CreateWirelessGatewayTask
   865  // API call, and error handling.
   866  //
   867  // This method is useful when you want to inject custom logic or configuration
   868  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
   869  //
   870  //
   871  //    // Example sending a request using the CreateWirelessGatewayTaskRequest method.
   872  //    req, resp := client.CreateWirelessGatewayTaskRequest(params)
   873  //
   874  //    err := req.Send()
   875  //    if err == nil { // resp is now filled
   876  //        fmt.Println(resp)
   877  //    }
   878  //
   879  // See also, https://docs.aws.amazon.com/goto/WebAPI/iotwireless-2020-11-22/CreateWirelessGatewayTask
   880  func (c *IoTWireless) CreateWirelessGatewayTaskRequest(input *CreateWirelessGatewayTaskInput) (req *request.Request, output *CreateWirelessGatewayTaskOutput) {
   881  	op := &request.Operation{
   882  		Name:       opCreateWirelessGatewayTask,
   883  		HTTPMethod: "POST",
   884  		HTTPPath:   "/wireless-gateways/{Id}/tasks",
   885  	}
   886  
   887  	if input == nil {
   888  		input = &CreateWirelessGatewayTaskInput{}
   889  	}
   890  
   891  	output = &CreateWirelessGatewayTaskOutput{}
   892  	req = c.newRequest(op, input, output)
   893  	return
   894  }
   895  
   896  // CreateWirelessGatewayTask API operation for AWS IoT Wireless.
   897  //
   898  // Creates a task for a wireless gateway.
   899  //
   900  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
   901  // with awserr.Error's Code and Message methods to get detailed information about
   902  // the error.
   903  //
   904  // See the AWS API reference guide for AWS IoT Wireless's
   905  // API operation CreateWirelessGatewayTask for usage and error information.
   906  //
   907  // Returned Error Types:
   908  //   * ValidationException
   909  //   The input did not meet the specified constraints.
   910  //
   911  //   * AccessDeniedException
   912  //   User does not have permission to perform this action.
   913  //
   914  //   * ResourceNotFoundException
   915  //   Resource does not exist.
   916  //
   917  //   * ConflictException
   918  //   Adding, updating, or deleting the resource can cause an inconsistent state.
   919  //
   920  //   * InternalServerException
   921  //   An unexpected error occurred while processing a request.
   922  //
   923  //   * ThrottlingException
   924  //   The request was denied because it exceeded the allowed API request rate.
   925  //
   926  // See also, https://docs.aws.amazon.com/goto/WebAPI/iotwireless-2020-11-22/CreateWirelessGatewayTask
   927  func (c *IoTWireless) CreateWirelessGatewayTask(input *CreateWirelessGatewayTaskInput) (*CreateWirelessGatewayTaskOutput, error) {
   928  	req, out := c.CreateWirelessGatewayTaskRequest(input)
   929  	return out, req.Send()
   930  }
   931  
   932  // CreateWirelessGatewayTaskWithContext is the same as CreateWirelessGatewayTask with the addition of
   933  // the ability to pass a context and additional request options.
   934  //
   935  // See CreateWirelessGatewayTask for details on how to use this API operation.
   936  //
   937  // The context must be non-nil and will be used for request cancellation. If
   938  // the context is nil a panic will occur. In the future the SDK may create
   939  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
   940  // for more information on using Contexts.
   941  func (c *IoTWireless) CreateWirelessGatewayTaskWithContext(ctx aws.Context, input *CreateWirelessGatewayTaskInput, opts ...request.Option) (*CreateWirelessGatewayTaskOutput, error) {
   942  	req, out := c.CreateWirelessGatewayTaskRequest(input)
   943  	req.SetContext(ctx)
   944  	req.ApplyOptions(opts...)
   945  	return out, req.Send()
   946  }
   947  
   948  const opCreateWirelessGatewayTaskDefinition = "CreateWirelessGatewayTaskDefinition"
   949  
   950  // CreateWirelessGatewayTaskDefinitionRequest generates a "aws/request.Request" representing the
   951  // client's request for the CreateWirelessGatewayTaskDefinition operation. The "output" return
   952  // value will be populated with the request's response once the request completes
   953  // successfully.
   954  //
   955  // Use "Send" method on the returned Request to send the API call to the service.
   956  // the "output" return value is not valid until after Send returns without error.
   957  //
   958  // See CreateWirelessGatewayTaskDefinition for more information on using the CreateWirelessGatewayTaskDefinition
   959  // API call, and error handling.
   960  //
   961  // This method is useful when you want to inject custom logic or configuration
   962  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
   963  //
   964  //
   965  //    // Example sending a request using the CreateWirelessGatewayTaskDefinitionRequest method.
   966  //    req, resp := client.CreateWirelessGatewayTaskDefinitionRequest(params)
   967  //
   968  //    err := req.Send()
   969  //    if err == nil { // resp is now filled
   970  //        fmt.Println(resp)
   971  //    }
   972  //
   973  // See also, https://docs.aws.amazon.com/goto/WebAPI/iotwireless-2020-11-22/CreateWirelessGatewayTaskDefinition
   974  func (c *IoTWireless) CreateWirelessGatewayTaskDefinitionRequest(input *CreateWirelessGatewayTaskDefinitionInput) (req *request.Request, output *CreateWirelessGatewayTaskDefinitionOutput) {
   975  	op := &request.Operation{
   976  		Name:       opCreateWirelessGatewayTaskDefinition,
   977  		HTTPMethod: "POST",
   978  		HTTPPath:   "/wireless-gateway-task-definitions",
   979  	}
   980  
   981  	if input == nil {
   982  		input = &CreateWirelessGatewayTaskDefinitionInput{}
   983  	}
   984  
   985  	output = &CreateWirelessGatewayTaskDefinitionOutput{}
   986  	req = c.newRequest(op, input, output)
   987  	return
   988  }
   989  
   990  // CreateWirelessGatewayTaskDefinition API operation for AWS IoT Wireless.
   991  //
   992  // Creates a gateway task definition.
   993  //
   994  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
   995  // with awserr.Error's Code and Message methods to get detailed information about
   996  // the error.
   997  //
   998  // See the AWS API reference guide for AWS IoT Wireless's
   999  // API operation CreateWirelessGatewayTaskDefinition for usage and error information.
  1000  //
  1001  // Returned Error Types:
  1002  //   * ValidationException
  1003  //   The input did not meet the specified constraints.
  1004  //
  1005  //   * AccessDeniedException
  1006  //   User does not have permission to perform this action.
  1007  //
  1008  //   * ResourceNotFoundException
  1009  //   Resource does not exist.
  1010  //
  1011  //   * ConflictException
  1012  //   Adding, updating, or deleting the resource can cause an inconsistent state.
  1013  //
  1014  //   * InternalServerException
  1015  //   An unexpected error occurred while processing a request.
  1016  //
  1017  //   * ThrottlingException
  1018  //   The request was denied because it exceeded the allowed API request rate.
  1019  //
  1020  // See also, https://docs.aws.amazon.com/goto/WebAPI/iotwireless-2020-11-22/CreateWirelessGatewayTaskDefinition
  1021  func (c *IoTWireless) CreateWirelessGatewayTaskDefinition(input *CreateWirelessGatewayTaskDefinitionInput) (*CreateWirelessGatewayTaskDefinitionOutput, error) {
  1022  	req, out := c.CreateWirelessGatewayTaskDefinitionRequest(input)
  1023  	return out, req.Send()
  1024  }
  1025  
  1026  // CreateWirelessGatewayTaskDefinitionWithContext is the same as CreateWirelessGatewayTaskDefinition with the addition of
  1027  // the ability to pass a context and additional request options.
  1028  //
  1029  // See CreateWirelessGatewayTaskDefinition for details on how to use this API operation.
  1030  //
  1031  // The context must be non-nil and will be used for request cancellation. If
  1032  // the context is nil a panic will occur. In the future the SDK may create
  1033  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  1034  // for more information on using Contexts.
  1035  func (c *IoTWireless) CreateWirelessGatewayTaskDefinitionWithContext(ctx aws.Context, input *CreateWirelessGatewayTaskDefinitionInput, opts ...request.Option) (*CreateWirelessGatewayTaskDefinitionOutput, error) {
  1036  	req, out := c.CreateWirelessGatewayTaskDefinitionRequest(input)
  1037  	req.SetContext(ctx)
  1038  	req.ApplyOptions(opts...)
  1039  	return out, req.Send()
  1040  }
  1041  
  1042  const opDeleteDestination = "DeleteDestination"
  1043  
  1044  // DeleteDestinationRequest generates a "aws/request.Request" representing the
  1045  // client's request for the DeleteDestination operation. The "output" return
  1046  // value will be populated with the request's response once the request completes
  1047  // successfully.
  1048  //
  1049  // Use "Send" method on the returned Request to send the API call to the service.
  1050  // the "output" return value is not valid until after Send returns without error.
  1051  //
  1052  // See DeleteDestination for more information on using the DeleteDestination
  1053  // API call, and error handling.
  1054  //
  1055  // This method is useful when you want to inject custom logic or configuration
  1056  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  1057  //
  1058  //
  1059  //    // Example sending a request using the DeleteDestinationRequest method.
  1060  //    req, resp := client.DeleteDestinationRequest(params)
  1061  //
  1062  //    err := req.Send()
  1063  //    if err == nil { // resp is now filled
  1064  //        fmt.Println(resp)
  1065  //    }
  1066  //
  1067  // See also, https://docs.aws.amazon.com/goto/WebAPI/iotwireless-2020-11-22/DeleteDestination
  1068  func (c *IoTWireless) DeleteDestinationRequest(input *DeleteDestinationInput) (req *request.Request, output *DeleteDestinationOutput) {
  1069  	op := &request.Operation{
  1070  		Name:       opDeleteDestination,
  1071  		HTTPMethod: "DELETE",
  1072  		HTTPPath:   "/destinations/{Name}",
  1073  	}
  1074  
  1075  	if input == nil {
  1076  		input = &DeleteDestinationInput{}
  1077  	}
  1078  
  1079  	output = &DeleteDestinationOutput{}
  1080  	req = c.newRequest(op, input, output)
  1081  	req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
  1082  	return
  1083  }
  1084  
  1085  // DeleteDestination API operation for AWS IoT Wireless.
  1086  //
  1087  // Deletes a destination.
  1088  //
  1089  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  1090  // with awserr.Error's Code and Message methods to get detailed information about
  1091  // the error.
  1092  //
  1093  // See the AWS API reference guide for AWS IoT Wireless's
  1094  // API operation DeleteDestination for usage and error information.
  1095  //
  1096  // Returned Error Types:
  1097  //   * ValidationException
  1098  //   The input did not meet the specified constraints.
  1099  //
  1100  //   * ResourceNotFoundException
  1101  //   Resource does not exist.
  1102  //
  1103  //   * AccessDeniedException
  1104  //   User does not have permission to perform this action.
  1105  //
  1106  //   * InternalServerException
  1107  //   An unexpected error occurred while processing a request.
  1108  //
  1109  //   * ConflictException
  1110  //   Adding, updating, or deleting the resource can cause an inconsistent state.
  1111  //
  1112  //   * ThrottlingException
  1113  //   The request was denied because it exceeded the allowed API request rate.
  1114  //
  1115  // See also, https://docs.aws.amazon.com/goto/WebAPI/iotwireless-2020-11-22/DeleteDestination
  1116  func (c *IoTWireless) DeleteDestination(input *DeleteDestinationInput) (*DeleteDestinationOutput, error) {
  1117  	req, out := c.DeleteDestinationRequest(input)
  1118  	return out, req.Send()
  1119  }
  1120  
  1121  // DeleteDestinationWithContext is the same as DeleteDestination with the addition of
  1122  // the ability to pass a context and additional request options.
  1123  //
  1124  // See DeleteDestination for details on how to use this API operation.
  1125  //
  1126  // The context must be non-nil and will be used for request cancellation. If
  1127  // the context is nil a panic will occur. In the future the SDK may create
  1128  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  1129  // for more information on using Contexts.
  1130  func (c *IoTWireless) DeleteDestinationWithContext(ctx aws.Context, input *DeleteDestinationInput, opts ...request.Option) (*DeleteDestinationOutput, error) {
  1131  	req, out := c.DeleteDestinationRequest(input)
  1132  	req.SetContext(ctx)
  1133  	req.ApplyOptions(opts...)
  1134  	return out, req.Send()
  1135  }
  1136  
  1137  const opDeleteDeviceProfile = "DeleteDeviceProfile"
  1138  
  1139  // DeleteDeviceProfileRequest generates a "aws/request.Request" representing the
  1140  // client's request for the DeleteDeviceProfile operation. The "output" return
  1141  // value will be populated with the request's response once the request completes
  1142  // successfully.
  1143  //
  1144  // Use "Send" method on the returned Request to send the API call to the service.
  1145  // the "output" return value is not valid until after Send returns without error.
  1146  //
  1147  // See DeleteDeviceProfile for more information on using the DeleteDeviceProfile
  1148  // API call, and error handling.
  1149  //
  1150  // This method is useful when you want to inject custom logic or configuration
  1151  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  1152  //
  1153  //
  1154  //    // Example sending a request using the DeleteDeviceProfileRequest method.
  1155  //    req, resp := client.DeleteDeviceProfileRequest(params)
  1156  //
  1157  //    err := req.Send()
  1158  //    if err == nil { // resp is now filled
  1159  //        fmt.Println(resp)
  1160  //    }
  1161  //
  1162  // See also, https://docs.aws.amazon.com/goto/WebAPI/iotwireless-2020-11-22/DeleteDeviceProfile
  1163  func (c *IoTWireless) DeleteDeviceProfileRequest(input *DeleteDeviceProfileInput) (req *request.Request, output *DeleteDeviceProfileOutput) {
  1164  	op := &request.Operation{
  1165  		Name:       opDeleteDeviceProfile,
  1166  		HTTPMethod: "DELETE",
  1167  		HTTPPath:   "/device-profiles/{Id}",
  1168  	}
  1169  
  1170  	if input == nil {
  1171  		input = &DeleteDeviceProfileInput{}
  1172  	}
  1173  
  1174  	output = &DeleteDeviceProfileOutput{}
  1175  	req = c.newRequest(op, input, output)
  1176  	req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
  1177  	return
  1178  }
  1179  
  1180  // DeleteDeviceProfile API operation for AWS IoT Wireless.
  1181  //
  1182  // Deletes a device profile.
  1183  //
  1184  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  1185  // with awserr.Error's Code and Message methods to get detailed information about
  1186  // the error.
  1187  //
  1188  // See the AWS API reference guide for AWS IoT Wireless's
  1189  // API operation DeleteDeviceProfile for usage and error information.
  1190  //
  1191  // Returned Error Types:
  1192  //   * ValidationException
  1193  //   The input did not meet the specified constraints.
  1194  //
  1195  //   * AccessDeniedException
  1196  //   User does not have permission to perform this action.
  1197  //
  1198  //   * ResourceNotFoundException
  1199  //   Resource does not exist.
  1200  //
  1201  //   * InternalServerException
  1202  //   An unexpected error occurred while processing a request.
  1203  //
  1204  //   * ConflictException
  1205  //   Adding, updating, or deleting the resource can cause an inconsistent state.
  1206  //
  1207  //   * ThrottlingException
  1208  //   The request was denied because it exceeded the allowed API request rate.
  1209  //
  1210  // See also, https://docs.aws.amazon.com/goto/WebAPI/iotwireless-2020-11-22/DeleteDeviceProfile
  1211  func (c *IoTWireless) DeleteDeviceProfile(input *DeleteDeviceProfileInput) (*DeleteDeviceProfileOutput, error) {
  1212  	req, out := c.DeleteDeviceProfileRequest(input)
  1213  	return out, req.Send()
  1214  }
  1215  
  1216  // DeleteDeviceProfileWithContext is the same as DeleteDeviceProfile with the addition of
  1217  // the ability to pass a context and additional request options.
  1218  //
  1219  // See DeleteDeviceProfile for details on how to use this API operation.
  1220  //
  1221  // The context must be non-nil and will be used for request cancellation. If
  1222  // the context is nil a panic will occur. In the future the SDK may create
  1223  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  1224  // for more information on using Contexts.
  1225  func (c *IoTWireless) DeleteDeviceProfileWithContext(ctx aws.Context, input *DeleteDeviceProfileInput, opts ...request.Option) (*DeleteDeviceProfileOutput, error) {
  1226  	req, out := c.DeleteDeviceProfileRequest(input)
  1227  	req.SetContext(ctx)
  1228  	req.ApplyOptions(opts...)
  1229  	return out, req.Send()
  1230  }
  1231  
  1232  const opDeleteServiceProfile = "DeleteServiceProfile"
  1233  
  1234  // DeleteServiceProfileRequest generates a "aws/request.Request" representing the
  1235  // client's request for the DeleteServiceProfile operation. The "output" return
  1236  // value will be populated with the request's response once the request completes
  1237  // successfully.
  1238  //
  1239  // Use "Send" method on the returned Request to send the API call to the service.
  1240  // the "output" return value is not valid until after Send returns without error.
  1241  //
  1242  // See DeleteServiceProfile for more information on using the DeleteServiceProfile
  1243  // API call, and error handling.
  1244  //
  1245  // This method is useful when you want to inject custom logic or configuration
  1246  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  1247  //
  1248  //
  1249  //    // Example sending a request using the DeleteServiceProfileRequest method.
  1250  //    req, resp := client.DeleteServiceProfileRequest(params)
  1251  //
  1252  //    err := req.Send()
  1253  //    if err == nil { // resp is now filled
  1254  //        fmt.Println(resp)
  1255  //    }
  1256  //
  1257  // See also, https://docs.aws.amazon.com/goto/WebAPI/iotwireless-2020-11-22/DeleteServiceProfile
  1258  func (c *IoTWireless) DeleteServiceProfileRequest(input *DeleteServiceProfileInput) (req *request.Request, output *DeleteServiceProfileOutput) {
  1259  	op := &request.Operation{
  1260  		Name:       opDeleteServiceProfile,
  1261  		HTTPMethod: "DELETE",
  1262  		HTTPPath:   "/service-profiles/{Id}",
  1263  	}
  1264  
  1265  	if input == nil {
  1266  		input = &DeleteServiceProfileInput{}
  1267  	}
  1268  
  1269  	output = &DeleteServiceProfileOutput{}
  1270  	req = c.newRequest(op, input, output)
  1271  	req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
  1272  	return
  1273  }
  1274  
  1275  // DeleteServiceProfile API operation for AWS IoT Wireless.
  1276  //
  1277  // Deletes a service profile.
  1278  //
  1279  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  1280  // with awserr.Error's Code and Message methods to get detailed information about
  1281  // the error.
  1282  //
  1283  // See the AWS API reference guide for AWS IoT Wireless's
  1284  // API operation DeleteServiceProfile for usage and error information.
  1285  //
  1286  // Returned Error Types:
  1287  //   * ValidationException
  1288  //   The input did not meet the specified constraints.
  1289  //
  1290  //   * AccessDeniedException
  1291  //   User does not have permission to perform this action.
  1292  //
  1293  //   * ResourceNotFoundException
  1294  //   Resource does not exist.
  1295  //
  1296  //   * InternalServerException
  1297  //   An unexpected error occurred while processing a request.
  1298  //
  1299  //   * ConflictException
  1300  //   Adding, updating, or deleting the resource can cause an inconsistent state.
  1301  //
  1302  //   * ThrottlingException
  1303  //   The request was denied because it exceeded the allowed API request rate.
  1304  //
  1305  // See also, https://docs.aws.amazon.com/goto/WebAPI/iotwireless-2020-11-22/DeleteServiceProfile
  1306  func (c *IoTWireless) DeleteServiceProfile(input *DeleteServiceProfileInput) (*DeleteServiceProfileOutput, error) {
  1307  	req, out := c.DeleteServiceProfileRequest(input)
  1308  	return out, req.Send()
  1309  }
  1310  
  1311  // DeleteServiceProfileWithContext is the same as DeleteServiceProfile with the addition of
  1312  // the ability to pass a context and additional request options.
  1313  //
  1314  // See DeleteServiceProfile for details on how to use this API operation.
  1315  //
  1316  // The context must be non-nil and will be used for request cancellation. If
  1317  // the context is nil a panic will occur. In the future the SDK may create
  1318  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  1319  // for more information on using Contexts.
  1320  func (c *IoTWireless) DeleteServiceProfileWithContext(ctx aws.Context, input *DeleteServiceProfileInput, opts ...request.Option) (*DeleteServiceProfileOutput, error) {
  1321  	req, out := c.DeleteServiceProfileRequest(input)
  1322  	req.SetContext(ctx)
  1323  	req.ApplyOptions(opts...)
  1324  	return out, req.Send()
  1325  }
  1326  
  1327  const opDeleteWirelessDevice = "DeleteWirelessDevice"
  1328  
  1329  // DeleteWirelessDeviceRequest generates a "aws/request.Request" representing the
  1330  // client's request for the DeleteWirelessDevice operation. The "output" return
  1331  // value will be populated with the request's response once the request completes
  1332  // successfully.
  1333  //
  1334  // Use "Send" method on the returned Request to send the API call to the service.
  1335  // the "output" return value is not valid until after Send returns without error.
  1336  //
  1337  // See DeleteWirelessDevice for more information on using the DeleteWirelessDevice
  1338  // API call, and error handling.
  1339  //
  1340  // This method is useful when you want to inject custom logic or configuration
  1341  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  1342  //
  1343  //
  1344  //    // Example sending a request using the DeleteWirelessDeviceRequest method.
  1345  //    req, resp := client.DeleteWirelessDeviceRequest(params)
  1346  //
  1347  //    err := req.Send()
  1348  //    if err == nil { // resp is now filled
  1349  //        fmt.Println(resp)
  1350  //    }
  1351  //
  1352  // See also, https://docs.aws.amazon.com/goto/WebAPI/iotwireless-2020-11-22/DeleteWirelessDevice
  1353  func (c *IoTWireless) DeleteWirelessDeviceRequest(input *DeleteWirelessDeviceInput) (req *request.Request, output *DeleteWirelessDeviceOutput) {
  1354  	op := &request.Operation{
  1355  		Name:       opDeleteWirelessDevice,
  1356  		HTTPMethod: "DELETE",
  1357  		HTTPPath:   "/wireless-devices/{Id}",
  1358  	}
  1359  
  1360  	if input == nil {
  1361  		input = &DeleteWirelessDeviceInput{}
  1362  	}
  1363  
  1364  	output = &DeleteWirelessDeviceOutput{}
  1365  	req = c.newRequest(op, input, output)
  1366  	req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
  1367  	return
  1368  }
  1369  
  1370  // DeleteWirelessDevice API operation for AWS IoT Wireless.
  1371  //
  1372  // Deletes a wireless device.
  1373  //
  1374  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  1375  // with awserr.Error's Code and Message methods to get detailed information about
  1376  // the error.
  1377  //
  1378  // See the AWS API reference guide for AWS IoT Wireless's
  1379  // API operation DeleteWirelessDevice for usage and error information.
  1380  //
  1381  // Returned Error Types:
  1382  //   * ValidationException
  1383  //   The input did not meet the specified constraints.
  1384  //
  1385  //   * ResourceNotFoundException
  1386  //   Resource does not exist.
  1387  //
  1388  //   * AccessDeniedException
  1389  //   User does not have permission to perform this action.
  1390  //
  1391  //   * InternalServerException
  1392  //   An unexpected error occurred while processing a request.
  1393  //
  1394  //   * ThrottlingException
  1395  //   The request was denied because it exceeded the allowed API request rate.
  1396  //
  1397  // See also, https://docs.aws.amazon.com/goto/WebAPI/iotwireless-2020-11-22/DeleteWirelessDevice
  1398  func (c *IoTWireless) DeleteWirelessDevice(input *DeleteWirelessDeviceInput) (*DeleteWirelessDeviceOutput, error) {
  1399  	req, out := c.DeleteWirelessDeviceRequest(input)
  1400  	return out, req.Send()
  1401  }
  1402  
  1403  // DeleteWirelessDeviceWithContext is the same as DeleteWirelessDevice with the addition of
  1404  // the ability to pass a context and additional request options.
  1405  //
  1406  // See DeleteWirelessDevice for details on how to use this API operation.
  1407  //
  1408  // The context must be non-nil and will be used for request cancellation. If
  1409  // the context is nil a panic will occur. In the future the SDK may create
  1410  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  1411  // for more information on using Contexts.
  1412  func (c *IoTWireless) DeleteWirelessDeviceWithContext(ctx aws.Context, input *DeleteWirelessDeviceInput, opts ...request.Option) (*DeleteWirelessDeviceOutput, error) {
  1413  	req, out := c.DeleteWirelessDeviceRequest(input)
  1414  	req.SetContext(ctx)
  1415  	req.ApplyOptions(opts...)
  1416  	return out, req.Send()
  1417  }
  1418  
  1419  const opDeleteWirelessGateway = "DeleteWirelessGateway"
  1420  
  1421  // DeleteWirelessGatewayRequest generates a "aws/request.Request" representing the
  1422  // client's request for the DeleteWirelessGateway operation. The "output" return
  1423  // value will be populated with the request's response once the request completes
  1424  // successfully.
  1425  //
  1426  // Use "Send" method on the returned Request to send the API call to the service.
  1427  // the "output" return value is not valid until after Send returns without error.
  1428  //
  1429  // See DeleteWirelessGateway for more information on using the DeleteWirelessGateway
  1430  // API call, and error handling.
  1431  //
  1432  // This method is useful when you want to inject custom logic or configuration
  1433  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  1434  //
  1435  //
  1436  //    // Example sending a request using the DeleteWirelessGatewayRequest method.
  1437  //    req, resp := client.DeleteWirelessGatewayRequest(params)
  1438  //
  1439  //    err := req.Send()
  1440  //    if err == nil { // resp is now filled
  1441  //        fmt.Println(resp)
  1442  //    }
  1443  //
  1444  // See also, https://docs.aws.amazon.com/goto/WebAPI/iotwireless-2020-11-22/DeleteWirelessGateway
  1445  func (c *IoTWireless) DeleteWirelessGatewayRequest(input *DeleteWirelessGatewayInput) (req *request.Request, output *DeleteWirelessGatewayOutput) {
  1446  	op := &request.Operation{
  1447  		Name:       opDeleteWirelessGateway,
  1448  		HTTPMethod: "DELETE",
  1449  		HTTPPath:   "/wireless-gateways/{Id}",
  1450  	}
  1451  
  1452  	if input == nil {
  1453  		input = &DeleteWirelessGatewayInput{}
  1454  	}
  1455  
  1456  	output = &DeleteWirelessGatewayOutput{}
  1457  	req = c.newRequest(op, input, output)
  1458  	req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
  1459  	return
  1460  }
  1461  
  1462  // DeleteWirelessGateway API operation for AWS IoT Wireless.
  1463  //
  1464  // Deletes a wireless gateway.
  1465  //
  1466  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  1467  // with awserr.Error's Code and Message methods to get detailed information about
  1468  // the error.
  1469  //
  1470  // See the AWS API reference guide for AWS IoT Wireless's
  1471  // API operation DeleteWirelessGateway for usage and error information.
  1472  //
  1473  // Returned Error Types:
  1474  //   * ValidationException
  1475  //   The input did not meet the specified constraints.
  1476  //
  1477  //   * ResourceNotFoundException
  1478  //   Resource does not exist.
  1479  //
  1480  //   * AccessDeniedException
  1481  //   User does not have permission to perform this action.
  1482  //
  1483  //   * InternalServerException
  1484  //   An unexpected error occurred while processing a request.
  1485  //
  1486  //   * ThrottlingException
  1487  //   The request was denied because it exceeded the allowed API request rate.
  1488  //
  1489  // See also, https://docs.aws.amazon.com/goto/WebAPI/iotwireless-2020-11-22/DeleteWirelessGateway
  1490  func (c *IoTWireless) DeleteWirelessGateway(input *DeleteWirelessGatewayInput) (*DeleteWirelessGatewayOutput, error) {
  1491  	req, out := c.DeleteWirelessGatewayRequest(input)
  1492  	return out, req.Send()
  1493  }
  1494  
  1495  // DeleteWirelessGatewayWithContext is the same as DeleteWirelessGateway with the addition of
  1496  // the ability to pass a context and additional request options.
  1497  //
  1498  // See DeleteWirelessGateway for details on how to use this API operation.
  1499  //
  1500  // The context must be non-nil and will be used for request cancellation. If
  1501  // the context is nil a panic will occur. In the future the SDK may create
  1502  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  1503  // for more information on using Contexts.
  1504  func (c *IoTWireless) DeleteWirelessGatewayWithContext(ctx aws.Context, input *DeleteWirelessGatewayInput, opts ...request.Option) (*DeleteWirelessGatewayOutput, error) {
  1505  	req, out := c.DeleteWirelessGatewayRequest(input)
  1506  	req.SetContext(ctx)
  1507  	req.ApplyOptions(opts...)
  1508  	return out, req.Send()
  1509  }
  1510  
  1511  const opDeleteWirelessGatewayTask = "DeleteWirelessGatewayTask"
  1512  
  1513  // DeleteWirelessGatewayTaskRequest generates a "aws/request.Request" representing the
  1514  // client's request for the DeleteWirelessGatewayTask operation. The "output" return
  1515  // value will be populated with the request's response once the request completes
  1516  // successfully.
  1517  //
  1518  // Use "Send" method on the returned Request to send the API call to the service.
  1519  // the "output" return value is not valid until after Send returns without error.
  1520  //
  1521  // See DeleteWirelessGatewayTask for more information on using the DeleteWirelessGatewayTask
  1522  // API call, and error handling.
  1523  //
  1524  // This method is useful when you want to inject custom logic or configuration
  1525  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  1526  //
  1527  //
  1528  //    // Example sending a request using the DeleteWirelessGatewayTaskRequest method.
  1529  //    req, resp := client.DeleteWirelessGatewayTaskRequest(params)
  1530  //
  1531  //    err := req.Send()
  1532  //    if err == nil { // resp is now filled
  1533  //        fmt.Println(resp)
  1534  //    }
  1535  //
  1536  // See also, https://docs.aws.amazon.com/goto/WebAPI/iotwireless-2020-11-22/DeleteWirelessGatewayTask
  1537  func (c *IoTWireless) DeleteWirelessGatewayTaskRequest(input *DeleteWirelessGatewayTaskInput) (req *request.Request, output *DeleteWirelessGatewayTaskOutput) {
  1538  	op := &request.Operation{
  1539  		Name:       opDeleteWirelessGatewayTask,
  1540  		HTTPMethod: "DELETE",
  1541  		HTTPPath:   "/wireless-gateways/{Id}/tasks",
  1542  	}
  1543  
  1544  	if input == nil {
  1545  		input = &DeleteWirelessGatewayTaskInput{}
  1546  	}
  1547  
  1548  	output = &DeleteWirelessGatewayTaskOutput{}
  1549  	req = c.newRequest(op, input, output)
  1550  	req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
  1551  	return
  1552  }
  1553  
  1554  // DeleteWirelessGatewayTask API operation for AWS IoT Wireless.
  1555  //
  1556  // Deletes a wireless gateway task.
  1557  //
  1558  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  1559  // with awserr.Error's Code and Message methods to get detailed information about
  1560  // the error.
  1561  //
  1562  // See the AWS API reference guide for AWS IoT Wireless's
  1563  // API operation DeleteWirelessGatewayTask for usage and error information.
  1564  //
  1565  // Returned Error Types:
  1566  //   * ValidationException
  1567  //   The input did not meet the specified constraints.
  1568  //
  1569  //   * AccessDeniedException
  1570  //   User does not have permission to perform this action.
  1571  //
  1572  //   * ResourceNotFoundException
  1573  //   Resource does not exist.
  1574  //
  1575  //   * InternalServerException
  1576  //   An unexpected error occurred while processing a request.
  1577  //
  1578  //   * ThrottlingException
  1579  //   The request was denied because it exceeded the allowed API request rate.
  1580  //
  1581  // See also, https://docs.aws.amazon.com/goto/WebAPI/iotwireless-2020-11-22/DeleteWirelessGatewayTask
  1582  func (c *IoTWireless) DeleteWirelessGatewayTask(input *DeleteWirelessGatewayTaskInput) (*DeleteWirelessGatewayTaskOutput, error) {
  1583  	req, out := c.DeleteWirelessGatewayTaskRequest(input)
  1584  	return out, req.Send()
  1585  }
  1586  
  1587  // DeleteWirelessGatewayTaskWithContext is the same as DeleteWirelessGatewayTask with the addition of
  1588  // the ability to pass a context and additional request options.
  1589  //
  1590  // See DeleteWirelessGatewayTask for details on how to use this API operation.
  1591  //
  1592  // The context must be non-nil and will be used for request cancellation. If
  1593  // the context is nil a panic will occur. In the future the SDK may create
  1594  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  1595  // for more information on using Contexts.
  1596  func (c *IoTWireless) DeleteWirelessGatewayTaskWithContext(ctx aws.Context, input *DeleteWirelessGatewayTaskInput, opts ...request.Option) (*DeleteWirelessGatewayTaskOutput, error) {
  1597  	req, out := c.DeleteWirelessGatewayTaskRequest(input)
  1598  	req.SetContext(ctx)
  1599  	req.ApplyOptions(opts...)
  1600  	return out, req.Send()
  1601  }
  1602  
  1603  const opDeleteWirelessGatewayTaskDefinition = "DeleteWirelessGatewayTaskDefinition"
  1604  
  1605  // DeleteWirelessGatewayTaskDefinitionRequest generates a "aws/request.Request" representing the
  1606  // client's request for the DeleteWirelessGatewayTaskDefinition operation. The "output" return
  1607  // value will be populated with the request's response once the request completes
  1608  // successfully.
  1609  //
  1610  // Use "Send" method on the returned Request to send the API call to the service.
  1611  // the "output" return value is not valid until after Send returns without error.
  1612  //
  1613  // See DeleteWirelessGatewayTaskDefinition for more information on using the DeleteWirelessGatewayTaskDefinition
  1614  // API call, and error handling.
  1615  //
  1616  // This method is useful when you want to inject custom logic or configuration
  1617  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  1618  //
  1619  //
  1620  //    // Example sending a request using the DeleteWirelessGatewayTaskDefinitionRequest method.
  1621  //    req, resp := client.DeleteWirelessGatewayTaskDefinitionRequest(params)
  1622  //
  1623  //    err := req.Send()
  1624  //    if err == nil { // resp is now filled
  1625  //        fmt.Println(resp)
  1626  //    }
  1627  //
  1628  // See also, https://docs.aws.amazon.com/goto/WebAPI/iotwireless-2020-11-22/DeleteWirelessGatewayTaskDefinition
  1629  func (c *IoTWireless) DeleteWirelessGatewayTaskDefinitionRequest(input *DeleteWirelessGatewayTaskDefinitionInput) (req *request.Request, output *DeleteWirelessGatewayTaskDefinitionOutput) {
  1630  	op := &request.Operation{
  1631  		Name:       opDeleteWirelessGatewayTaskDefinition,
  1632  		HTTPMethod: "DELETE",
  1633  		HTTPPath:   "/wireless-gateway-task-definitions/{Id}",
  1634  	}
  1635  
  1636  	if input == nil {
  1637  		input = &DeleteWirelessGatewayTaskDefinitionInput{}
  1638  	}
  1639  
  1640  	output = &DeleteWirelessGatewayTaskDefinitionOutput{}
  1641  	req = c.newRequest(op, input, output)
  1642  	req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
  1643  	return
  1644  }
  1645  
  1646  // DeleteWirelessGatewayTaskDefinition API operation for AWS IoT Wireless.
  1647  //
  1648  // Deletes a wireless gateway task definition. Deleting this task definition
  1649  // does not affect tasks that are currently in progress.
  1650  //
  1651  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  1652  // with awserr.Error's Code and Message methods to get detailed information about
  1653  // the error.
  1654  //
  1655  // See the AWS API reference guide for AWS IoT Wireless's
  1656  // API operation DeleteWirelessGatewayTaskDefinition for usage and error information.
  1657  //
  1658  // Returned Error Types:
  1659  //   * ValidationException
  1660  //   The input did not meet the specified constraints.
  1661  //
  1662  //   * AccessDeniedException
  1663  //   User does not have permission to perform this action.
  1664  //
  1665  //   * ResourceNotFoundException
  1666  //   Resource does not exist.
  1667  //
  1668  //   * InternalServerException
  1669  //   An unexpected error occurred while processing a request.
  1670  //
  1671  //   * ThrottlingException
  1672  //   The request was denied because it exceeded the allowed API request rate.
  1673  //
  1674  // See also, https://docs.aws.amazon.com/goto/WebAPI/iotwireless-2020-11-22/DeleteWirelessGatewayTaskDefinition
  1675  func (c *IoTWireless) DeleteWirelessGatewayTaskDefinition(input *DeleteWirelessGatewayTaskDefinitionInput) (*DeleteWirelessGatewayTaskDefinitionOutput, error) {
  1676  	req, out := c.DeleteWirelessGatewayTaskDefinitionRequest(input)
  1677  	return out, req.Send()
  1678  }
  1679  
  1680  // DeleteWirelessGatewayTaskDefinitionWithContext is the same as DeleteWirelessGatewayTaskDefinition with the addition of
  1681  // the ability to pass a context and additional request options.
  1682  //
  1683  // See DeleteWirelessGatewayTaskDefinition for details on how to use this API operation.
  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 *IoTWireless) DeleteWirelessGatewayTaskDefinitionWithContext(ctx aws.Context, input *DeleteWirelessGatewayTaskDefinitionInput, opts ...request.Option) (*DeleteWirelessGatewayTaskDefinitionOutput, error) {
  1690  	req, out := c.DeleteWirelessGatewayTaskDefinitionRequest(input)
  1691  	req.SetContext(ctx)
  1692  	req.ApplyOptions(opts...)
  1693  	return out, req.Send()
  1694  }
  1695  
  1696  const opDisassociateAwsAccountFromPartnerAccount = "DisassociateAwsAccountFromPartnerAccount"
  1697  
  1698  // DisassociateAwsAccountFromPartnerAccountRequest generates a "aws/request.Request" representing the
  1699  // client's request for the DisassociateAwsAccountFromPartnerAccount operation. The "output" return
  1700  // value will be populated with the request's response once the request completes
  1701  // successfully.
  1702  //
  1703  // Use "Send" method on the returned Request to send the API call to the service.
  1704  // the "output" return value is not valid until after Send returns without error.
  1705  //
  1706  // See DisassociateAwsAccountFromPartnerAccount for more information on using the DisassociateAwsAccountFromPartnerAccount
  1707  // API call, and error handling.
  1708  //
  1709  // This method is useful when you want to inject custom logic or configuration
  1710  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  1711  //
  1712  //
  1713  //    // Example sending a request using the DisassociateAwsAccountFromPartnerAccountRequest method.
  1714  //    req, resp := client.DisassociateAwsAccountFromPartnerAccountRequest(params)
  1715  //
  1716  //    err := req.Send()
  1717  //    if err == nil { // resp is now filled
  1718  //        fmt.Println(resp)
  1719  //    }
  1720  //
  1721  // See also, https://docs.aws.amazon.com/goto/WebAPI/iotwireless-2020-11-22/DisassociateAwsAccountFromPartnerAccount
  1722  func (c *IoTWireless) DisassociateAwsAccountFromPartnerAccountRequest(input *DisassociateAwsAccountFromPartnerAccountInput) (req *request.Request, output *DisassociateAwsAccountFromPartnerAccountOutput) {
  1723  	op := &request.Operation{
  1724  		Name:       opDisassociateAwsAccountFromPartnerAccount,
  1725  		HTTPMethod: "DELETE",
  1726  		HTTPPath:   "/partner-accounts/{PartnerAccountId}",
  1727  	}
  1728  
  1729  	if input == nil {
  1730  		input = &DisassociateAwsAccountFromPartnerAccountInput{}
  1731  	}
  1732  
  1733  	output = &DisassociateAwsAccountFromPartnerAccountOutput{}
  1734  	req = c.newRequest(op, input, output)
  1735  	req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
  1736  	return
  1737  }
  1738  
  1739  // DisassociateAwsAccountFromPartnerAccount API operation for AWS IoT Wireless.
  1740  //
  1741  // Disassociates your AWS account from a partner account. If PartnerAccountId
  1742  // and PartnerType are null, disassociates your AWS account from all partner
  1743  // accounts.
  1744  //
  1745  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  1746  // with awserr.Error's Code and Message methods to get detailed information about
  1747  // the error.
  1748  //
  1749  // See the AWS API reference guide for AWS IoT Wireless's
  1750  // API operation DisassociateAwsAccountFromPartnerAccount for usage and error information.
  1751  //
  1752  // Returned Error Types:
  1753  //   * ValidationException
  1754  //   The input did not meet the specified constraints.
  1755  //
  1756  //   * ResourceNotFoundException
  1757  //   Resource does not exist.
  1758  //
  1759  //   * InternalServerException
  1760  //   An unexpected error occurred while processing a request.
  1761  //
  1762  //   * ThrottlingException
  1763  //   The request was denied because it exceeded the allowed API request rate.
  1764  //
  1765  // See also, https://docs.aws.amazon.com/goto/WebAPI/iotwireless-2020-11-22/DisassociateAwsAccountFromPartnerAccount
  1766  func (c *IoTWireless) DisassociateAwsAccountFromPartnerAccount(input *DisassociateAwsAccountFromPartnerAccountInput) (*DisassociateAwsAccountFromPartnerAccountOutput, error) {
  1767  	req, out := c.DisassociateAwsAccountFromPartnerAccountRequest(input)
  1768  	return out, req.Send()
  1769  }
  1770  
  1771  // DisassociateAwsAccountFromPartnerAccountWithContext is the same as DisassociateAwsAccountFromPartnerAccount with the addition of
  1772  // the ability to pass a context and additional request options.
  1773  //
  1774  // See DisassociateAwsAccountFromPartnerAccount for details on how to use this API operation.
  1775  //
  1776  // The context must be non-nil and will be used for request cancellation. If
  1777  // the context is nil a panic will occur. In the future the SDK may create
  1778  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  1779  // for more information on using Contexts.
  1780  func (c *IoTWireless) DisassociateAwsAccountFromPartnerAccountWithContext(ctx aws.Context, input *DisassociateAwsAccountFromPartnerAccountInput, opts ...request.Option) (*DisassociateAwsAccountFromPartnerAccountOutput, error) {
  1781  	req, out := c.DisassociateAwsAccountFromPartnerAccountRequest(input)
  1782  	req.SetContext(ctx)
  1783  	req.ApplyOptions(opts...)
  1784  	return out, req.Send()
  1785  }
  1786  
  1787  const opDisassociateWirelessDeviceFromThing = "DisassociateWirelessDeviceFromThing"
  1788  
  1789  // DisassociateWirelessDeviceFromThingRequest generates a "aws/request.Request" representing the
  1790  // client's request for the DisassociateWirelessDeviceFromThing operation. The "output" return
  1791  // value will be populated with the request's response once the request completes
  1792  // successfully.
  1793  //
  1794  // Use "Send" method on the returned Request to send the API call to the service.
  1795  // the "output" return value is not valid until after Send returns without error.
  1796  //
  1797  // See DisassociateWirelessDeviceFromThing for more information on using the DisassociateWirelessDeviceFromThing
  1798  // API call, and error handling.
  1799  //
  1800  // This method is useful when you want to inject custom logic or configuration
  1801  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  1802  //
  1803  //
  1804  //    // Example sending a request using the DisassociateWirelessDeviceFromThingRequest method.
  1805  //    req, resp := client.DisassociateWirelessDeviceFromThingRequest(params)
  1806  //
  1807  //    err := req.Send()
  1808  //    if err == nil { // resp is now filled
  1809  //        fmt.Println(resp)
  1810  //    }
  1811  //
  1812  // See also, https://docs.aws.amazon.com/goto/WebAPI/iotwireless-2020-11-22/DisassociateWirelessDeviceFromThing
  1813  func (c *IoTWireless) DisassociateWirelessDeviceFromThingRequest(input *DisassociateWirelessDeviceFromThingInput) (req *request.Request, output *DisassociateWirelessDeviceFromThingOutput) {
  1814  	op := &request.Operation{
  1815  		Name:       opDisassociateWirelessDeviceFromThing,
  1816  		HTTPMethod: "DELETE",
  1817  		HTTPPath:   "/wireless-devices/{Id}/thing",
  1818  	}
  1819  
  1820  	if input == nil {
  1821  		input = &DisassociateWirelessDeviceFromThingInput{}
  1822  	}
  1823  
  1824  	output = &DisassociateWirelessDeviceFromThingOutput{}
  1825  	req = c.newRequest(op, input, output)
  1826  	req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
  1827  	return
  1828  }
  1829  
  1830  // DisassociateWirelessDeviceFromThing API operation for AWS IoT Wireless.
  1831  //
  1832  // Disassociates a wireless device from its currently associated thing.
  1833  //
  1834  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  1835  // with awserr.Error's Code and Message methods to get detailed information about
  1836  // the error.
  1837  //
  1838  // See the AWS API reference guide for AWS IoT Wireless's
  1839  // API operation DisassociateWirelessDeviceFromThing for usage and error information.
  1840  //
  1841  // Returned Error Types:
  1842  //   * ValidationException
  1843  //   The input did not meet the specified constraints.
  1844  //
  1845  //   * AccessDeniedException
  1846  //   User does not have permission to perform this action.
  1847  //
  1848  //   * ResourceNotFoundException
  1849  //   Resource does not exist.
  1850  //
  1851  //   * ConflictException
  1852  //   Adding, updating, or deleting the resource can cause an inconsistent state.
  1853  //
  1854  //   * ThrottlingException
  1855  //   The request was denied because it exceeded the allowed API request rate.
  1856  //
  1857  //   * InternalServerException
  1858  //   An unexpected error occurred while processing a request.
  1859  //
  1860  // See also, https://docs.aws.amazon.com/goto/WebAPI/iotwireless-2020-11-22/DisassociateWirelessDeviceFromThing
  1861  func (c *IoTWireless) DisassociateWirelessDeviceFromThing(input *DisassociateWirelessDeviceFromThingInput) (*DisassociateWirelessDeviceFromThingOutput, error) {
  1862  	req, out := c.DisassociateWirelessDeviceFromThingRequest(input)
  1863  	return out, req.Send()
  1864  }
  1865  
  1866  // DisassociateWirelessDeviceFromThingWithContext is the same as DisassociateWirelessDeviceFromThing with the addition of
  1867  // the ability to pass a context and additional request options.
  1868  //
  1869  // See DisassociateWirelessDeviceFromThing for details on how to use this API operation.
  1870  //
  1871  // The context must be non-nil and will be used for request cancellation. If
  1872  // the context is nil a panic will occur. In the future the SDK may create
  1873  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  1874  // for more information on using Contexts.
  1875  func (c *IoTWireless) DisassociateWirelessDeviceFromThingWithContext(ctx aws.Context, input *DisassociateWirelessDeviceFromThingInput, opts ...request.Option) (*DisassociateWirelessDeviceFromThingOutput, error) {
  1876  	req, out := c.DisassociateWirelessDeviceFromThingRequest(input)
  1877  	req.SetContext(ctx)
  1878  	req.ApplyOptions(opts...)
  1879  	return out, req.Send()
  1880  }
  1881  
  1882  const opDisassociateWirelessGatewayFromCertificate = "DisassociateWirelessGatewayFromCertificate"
  1883  
  1884  // DisassociateWirelessGatewayFromCertificateRequest generates a "aws/request.Request" representing the
  1885  // client's request for the DisassociateWirelessGatewayFromCertificate operation. The "output" return
  1886  // value will be populated with the request's response once the request completes
  1887  // successfully.
  1888  //
  1889  // Use "Send" method on the returned Request to send the API call to the service.
  1890  // the "output" return value is not valid until after Send returns without error.
  1891  //
  1892  // See DisassociateWirelessGatewayFromCertificate for more information on using the DisassociateWirelessGatewayFromCertificate
  1893  // API call, and error handling.
  1894  //
  1895  // This method is useful when you want to inject custom logic or configuration
  1896  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  1897  //
  1898  //
  1899  //    // Example sending a request using the DisassociateWirelessGatewayFromCertificateRequest method.
  1900  //    req, resp := client.DisassociateWirelessGatewayFromCertificateRequest(params)
  1901  //
  1902  //    err := req.Send()
  1903  //    if err == nil { // resp is now filled
  1904  //        fmt.Println(resp)
  1905  //    }
  1906  //
  1907  // See also, https://docs.aws.amazon.com/goto/WebAPI/iotwireless-2020-11-22/DisassociateWirelessGatewayFromCertificate
  1908  func (c *IoTWireless) DisassociateWirelessGatewayFromCertificateRequest(input *DisassociateWirelessGatewayFromCertificateInput) (req *request.Request, output *DisassociateWirelessGatewayFromCertificateOutput) {
  1909  	op := &request.Operation{
  1910  		Name:       opDisassociateWirelessGatewayFromCertificate,
  1911  		HTTPMethod: "DELETE",
  1912  		HTTPPath:   "/wireless-gateways/{Id}/certificate",
  1913  	}
  1914  
  1915  	if input == nil {
  1916  		input = &DisassociateWirelessGatewayFromCertificateInput{}
  1917  	}
  1918  
  1919  	output = &DisassociateWirelessGatewayFromCertificateOutput{}
  1920  	req = c.newRequest(op, input, output)
  1921  	req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
  1922  	return
  1923  }
  1924  
  1925  // DisassociateWirelessGatewayFromCertificate API operation for AWS IoT Wireless.
  1926  //
  1927  // Disassociates a wireless gateway from its currently associated certificate.
  1928  //
  1929  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  1930  // with awserr.Error's Code and Message methods to get detailed information about
  1931  // the error.
  1932  //
  1933  // See the AWS API reference guide for AWS IoT Wireless's
  1934  // API operation DisassociateWirelessGatewayFromCertificate for usage and error information.
  1935  //
  1936  // Returned Error Types:
  1937  //   * ValidationException
  1938  //   The input did not meet the specified constraints.
  1939  //
  1940  //   * AccessDeniedException
  1941  //   User does not have permission to perform this action.
  1942  //
  1943  //   * ResourceNotFoundException
  1944  //   Resource does not exist.
  1945  //
  1946  //   * InternalServerException
  1947  //   An unexpected error occurred while processing a request.
  1948  //
  1949  //   * ThrottlingException
  1950  //   The request was denied because it exceeded the allowed API request rate.
  1951  //
  1952  // See also, https://docs.aws.amazon.com/goto/WebAPI/iotwireless-2020-11-22/DisassociateWirelessGatewayFromCertificate
  1953  func (c *IoTWireless) DisassociateWirelessGatewayFromCertificate(input *DisassociateWirelessGatewayFromCertificateInput) (*DisassociateWirelessGatewayFromCertificateOutput, error) {
  1954  	req, out := c.DisassociateWirelessGatewayFromCertificateRequest(input)
  1955  	return out, req.Send()
  1956  }
  1957  
  1958  // DisassociateWirelessGatewayFromCertificateWithContext is the same as DisassociateWirelessGatewayFromCertificate with the addition of
  1959  // the ability to pass a context and additional request options.
  1960  //
  1961  // See DisassociateWirelessGatewayFromCertificate for details on how to use this API operation.
  1962  //
  1963  // The context must be non-nil and will be used for request cancellation. If
  1964  // the context is nil a panic will occur. In the future the SDK may create
  1965  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  1966  // for more information on using Contexts.
  1967  func (c *IoTWireless) DisassociateWirelessGatewayFromCertificateWithContext(ctx aws.Context, input *DisassociateWirelessGatewayFromCertificateInput, opts ...request.Option) (*DisassociateWirelessGatewayFromCertificateOutput, error) {
  1968  	req, out := c.DisassociateWirelessGatewayFromCertificateRequest(input)
  1969  	req.SetContext(ctx)
  1970  	req.ApplyOptions(opts...)
  1971  	return out, req.Send()
  1972  }
  1973  
  1974  const opDisassociateWirelessGatewayFromThing = "DisassociateWirelessGatewayFromThing"
  1975  
  1976  // DisassociateWirelessGatewayFromThingRequest generates a "aws/request.Request" representing the
  1977  // client's request for the DisassociateWirelessGatewayFromThing operation. The "output" return
  1978  // value will be populated with the request's response once the request completes
  1979  // successfully.
  1980  //
  1981  // Use "Send" method on the returned Request to send the API call to the service.
  1982  // the "output" return value is not valid until after Send returns without error.
  1983  //
  1984  // See DisassociateWirelessGatewayFromThing for more information on using the DisassociateWirelessGatewayFromThing
  1985  // API call, and error handling.
  1986  //
  1987  // This method is useful when you want to inject custom logic or configuration
  1988  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  1989  //
  1990  //
  1991  //    // Example sending a request using the DisassociateWirelessGatewayFromThingRequest method.
  1992  //    req, resp := client.DisassociateWirelessGatewayFromThingRequest(params)
  1993  //
  1994  //    err := req.Send()
  1995  //    if err == nil { // resp is now filled
  1996  //        fmt.Println(resp)
  1997  //    }
  1998  //
  1999  // See also, https://docs.aws.amazon.com/goto/WebAPI/iotwireless-2020-11-22/DisassociateWirelessGatewayFromThing
  2000  func (c *IoTWireless) DisassociateWirelessGatewayFromThingRequest(input *DisassociateWirelessGatewayFromThingInput) (req *request.Request, output *DisassociateWirelessGatewayFromThingOutput) {
  2001  	op := &request.Operation{
  2002  		Name:       opDisassociateWirelessGatewayFromThing,
  2003  		HTTPMethod: "DELETE",
  2004  		HTTPPath:   "/wireless-gateways/{Id}/thing",
  2005  	}
  2006  
  2007  	if input == nil {
  2008  		input = &DisassociateWirelessGatewayFromThingInput{}
  2009  	}
  2010  
  2011  	output = &DisassociateWirelessGatewayFromThingOutput{}
  2012  	req = c.newRequest(op, input, output)
  2013  	req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
  2014  	return
  2015  }
  2016  
  2017  // DisassociateWirelessGatewayFromThing API operation for AWS IoT Wireless.
  2018  //
  2019  // Disassociates a wireless gateway from its currently associated thing.
  2020  //
  2021  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  2022  // with awserr.Error's Code and Message methods to get detailed information about
  2023  // the error.
  2024  //
  2025  // See the AWS API reference guide for AWS IoT Wireless's
  2026  // API operation DisassociateWirelessGatewayFromThing for usage and error information.
  2027  //
  2028  // Returned Error Types:
  2029  //   * ValidationException
  2030  //   The input did not meet the specified constraints.
  2031  //
  2032  //   * AccessDeniedException
  2033  //   User does not have permission to perform this action.
  2034  //
  2035  //   * ResourceNotFoundException
  2036  //   Resource does not exist.
  2037  //
  2038  //   * ConflictException
  2039  //   Adding, updating, or deleting the resource can cause an inconsistent state.
  2040  //
  2041  //   * ThrottlingException
  2042  //   The request was denied because it exceeded the allowed API request rate.
  2043  //
  2044  //   * InternalServerException
  2045  //   An unexpected error occurred while processing a request.
  2046  //
  2047  // See also, https://docs.aws.amazon.com/goto/WebAPI/iotwireless-2020-11-22/DisassociateWirelessGatewayFromThing
  2048  func (c *IoTWireless) DisassociateWirelessGatewayFromThing(input *DisassociateWirelessGatewayFromThingInput) (*DisassociateWirelessGatewayFromThingOutput, error) {
  2049  	req, out := c.DisassociateWirelessGatewayFromThingRequest(input)
  2050  	return out, req.Send()
  2051  }
  2052  
  2053  // DisassociateWirelessGatewayFromThingWithContext is the same as DisassociateWirelessGatewayFromThing with the addition of
  2054  // the ability to pass a context and additional request options.
  2055  //
  2056  // See DisassociateWirelessGatewayFromThing for details on how to use this API operation.
  2057  //
  2058  // The context must be non-nil and will be used for request cancellation. If
  2059  // the context is nil a panic will occur. In the future the SDK may create
  2060  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  2061  // for more information on using Contexts.
  2062  func (c *IoTWireless) DisassociateWirelessGatewayFromThingWithContext(ctx aws.Context, input *DisassociateWirelessGatewayFromThingInput, opts ...request.Option) (*DisassociateWirelessGatewayFromThingOutput, error) {
  2063  	req, out := c.DisassociateWirelessGatewayFromThingRequest(input)
  2064  	req.SetContext(ctx)
  2065  	req.ApplyOptions(opts...)
  2066  	return out, req.Send()
  2067  }
  2068  
  2069  const opGetDestination = "GetDestination"
  2070  
  2071  // GetDestinationRequest generates a "aws/request.Request" representing the
  2072  // client's request for the GetDestination operation. The "output" return
  2073  // value will be populated with the request's response once the request completes
  2074  // successfully.
  2075  //
  2076  // Use "Send" method on the returned Request to send the API call to the service.
  2077  // the "output" return value is not valid until after Send returns without error.
  2078  //
  2079  // See GetDestination for more information on using the GetDestination
  2080  // API call, and error handling.
  2081  //
  2082  // This method is useful when you want to inject custom logic or configuration
  2083  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  2084  //
  2085  //
  2086  //    // Example sending a request using the GetDestinationRequest method.
  2087  //    req, resp := client.GetDestinationRequest(params)
  2088  //
  2089  //    err := req.Send()
  2090  //    if err == nil { // resp is now filled
  2091  //        fmt.Println(resp)
  2092  //    }
  2093  //
  2094  // See also, https://docs.aws.amazon.com/goto/WebAPI/iotwireless-2020-11-22/GetDestination
  2095  func (c *IoTWireless) GetDestinationRequest(input *GetDestinationInput) (req *request.Request, output *GetDestinationOutput) {
  2096  	op := &request.Operation{
  2097  		Name:       opGetDestination,
  2098  		HTTPMethod: "GET",
  2099  		HTTPPath:   "/destinations/{Name}",
  2100  	}
  2101  
  2102  	if input == nil {
  2103  		input = &GetDestinationInput{}
  2104  	}
  2105  
  2106  	output = &GetDestinationOutput{}
  2107  	req = c.newRequest(op, input, output)
  2108  	return
  2109  }
  2110  
  2111  // GetDestination API operation for AWS IoT Wireless.
  2112  //
  2113  // Gets information about a destination.
  2114  //
  2115  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  2116  // with awserr.Error's Code and Message methods to get detailed information about
  2117  // the error.
  2118  //
  2119  // See the AWS API reference guide for AWS IoT Wireless's
  2120  // API operation GetDestination for usage and error information.
  2121  //
  2122  // Returned Error Types:
  2123  //   * ValidationException
  2124  //   The input did not meet the specified constraints.
  2125  //
  2126  //   * ResourceNotFoundException
  2127  //   Resource does not exist.
  2128  //
  2129  //   * AccessDeniedException
  2130  //   User does not have permission to perform this action.
  2131  //
  2132  //   * InternalServerException
  2133  //   An unexpected error occurred while processing a request.
  2134  //
  2135  //   * ThrottlingException
  2136  //   The request was denied because it exceeded the allowed API request rate.
  2137  //
  2138  // See also, https://docs.aws.amazon.com/goto/WebAPI/iotwireless-2020-11-22/GetDestination
  2139  func (c *IoTWireless) GetDestination(input *GetDestinationInput) (*GetDestinationOutput, error) {
  2140  	req, out := c.GetDestinationRequest(input)
  2141  	return out, req.Send()
  2142  }
  2143  
  2144  // GetDestinationWithContext is the same as GetDestination with the addition of
  2145  // the ability to pass a context and additional request options.
  2146  //
  2147  // See GetDestination for details on how to use this API operation.
  2148  //
  2149  // The context must be non-nil and will be used for request cancellation. If
  2150  // the context is nil a panic will occur. In the future the SDK may create
  2151  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  2152  // for more information on using Contexts.
  2153  func (c *IoTWireless) GetDestinationWithContext(ctx aws.Context, input *GetDestinationInput, opts ...request.Option) (*GetDestinationOutput, error) {
  2154  	req, out := c.GetDestinationRequest(input)
  2155  	req.SetContext(ctx)
  2156  	req.ApplyOptions(opts...)
  2157  	return out, req.Send()
  2158  }
  2159  
  2160  const opGetDeviceProfile = "GetDeviceProfile"
  2161  
  2162  // GetDeviceProfileRequest generates a "aws/request.Request" representing the
  2163  // client's request for the GetDeviceProfile operation. The "output" return
  2164  // value will be populated with the request's response once the request completes
  2165  // successfully.
  2166  //
  2167  // Use "Send" method on the returned Request to send the API call to the service.
  2168  // the "output" return value is not valid until after Send returns without error.
  2169  //
  2170  // See GetDeviceProfile for more information on using the GetDeviceProfile
  2171  // API call, and error handling.
  2172  //
  2173  // This method is useful when you want to inject custom logic or configuration
  2174  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  2175  //
  2176  //
  2177  //    // Example sending a request using the GetDeviceProfileRequest method.
  2178  //    req, resp := client.GetDeviceProfileRequest(params)
  2179  //
  2180  //    err := req.Send()
  2181  //    if err == nil { // resp is now filled
  2182  //        fmt.Println(resp)
  2183  //    }
  2184  //
  2185  // See also, https://docs.aws.amazon.com/goto/WebAPI/iotwireless-2020-11-22/GetDeviceProfile
  2186  func (c *IoTWireless) GetDeviceProfileRequest(input *GetDeviceProfileInput) (req *request.Request, output *GetDeviceProfileOutput) {
  2187  	op := &request.Operation{
  2188  		Name:       opGetDeviceProfile,
  2189  		HTTPMethod: "GET",
  2190  		HTTPPath:   "/device-profiles/{Id}",
  2191  	}
  2192  
  2193  	if input == nil {
  2194  		input = &GetDeviceProfileInput{}
  2195  	}
  2196  
  2197  	output = &GetDeviceProfileOutput{}
  2198  	req = c.newRequest(op, input, output)
  2199  	return
  2200  }
  2201  
  2202  // GetDeviceProfile API operation for AWS IoT Wireless.
  2203  //
  2204  // Gets information about a device profile.
  2205  //
  2206  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  2207  // with awserr.Error's Code and Message methods to get detailed information about
  2208  // the error.
  2209  //
  2210  // See the AWS API reference guide for AWS IoT Wireless's
  2211  // API operation GetDeviceProfile for usage and error information.
  2212  //
  2213  // Returned Error Types:
  2214  //   * ValidationException
  2215  //   The input did not meet the specified constraints.
  2216  //
  2217  //   * AccessDeniedException
  2218  //   User does not have permission to perform this action.
  2219  //
  2220  //   * ResourceNotFoundException
  2221  //   Resource does not exist.
  2222  //
  2223  //   * InternalServerException
  2224  //   An unexpected error occurred while processing a request.
  2225  //
  2226  //   * ThrottlingException
  2227  //   The request was denied because it exceeded the allowed API request rate.
  2228  //
  2229  // See also, https://docs.aws.amazon.com/goto/WebAPI/iotwireless-2020-11-22/GetDeviceProfile
  2230  func (c *IoTWireless) GetDeviceProfile(input *GetDeviceProfileInput) (*GetDeviceProfileOutput, error) {
  2231  	req, out := c.GetDeviceProfileRequest(input)
  2232  	return out, req.Send()
  2233  }
  2234  
  2235  // GetDeviceProfileWithContext is the same as GetDeviceProfile with the addition of
  2236  // the ability to pass a context and additional request options.
  2237  //
  2238  // See GetDeviceProfile for details on how to use this API operation.
  2239  //
  2240  // The context must be non-nil and will be used for request cancellation. If
  2241  // the context is nil a panic will occur. In the future the SDK may create
  2242  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  2243  // for more information on using Contexts.
  2244  func (c *IoTWireless) GetDeviceProfileWithContext(ctx aws.Context, input *GetDeviceProfileInput, opts ...request.Option) (*GetDeviceProfileOutput, error) {
  2245  	req, out := c.GetDeviceProfileRequest(input)
  2246  	req.SetContext(ctx)
  2247  	req.ApplyOptions(opts...)
  2248  	return out, req.Send()
  2249  }
  2250  
  2251  const opGetLogLevelsByResourceTypes = "GetLogLevelsByResourceTypes"
  2252  
  2253  // GetLogLevelsByResourceTypesRequest generates a "aws/request.Request" representing the
  2254  // client's request for the GetLogLevelsByResourceTypes operation. The "output" return
  2255  // value will be populated with the request's response once the request completes
  2256  // successfully.
  2257  //
  2258  // Use "Send" method on the returned Request to send the API call to the service.
  2259  // the "output" return value is not valid until after Send returns without error.
  2260  //
  2261  // See GetLogLevelsByResourceTypes for more information on using the GetLogLevelsByResourceTypes
  2262  // API call, and error handling.
  2263  //
  2264  // This method is useful when you want to inject custom logic or configuration
  2265  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  2266  //
  2267  //
  2268  //    // Example sending a request using the GetLogLevelsByResourceTypesRequest method.
  2269  //    req, resp := client.GetLogLevelsByResourceTypesRequest(params)
  2270  //
  2271  //    err := req.Send()
  2272  //    if err == nil { // resp is now filled
  2273  //        fmt.Println(resp)
  2274  //    }
  2275  //
  2276  // See also, https://docs.aws.amazon.com/goto/WebAPI/iotwireless-2020-11-22/GetLogLevelsByResourceTypes
  2277  func (c *IoTWireless) GetLogLevelsByResourceTypesRequest(input *GetLogLevelsByResourceTypesInput) (req *request.Request, output *GetLogLevelsByResourceTypesOutput) {
  2278  	op := &request.Operation{
  2279  		Name:       opGetLogLevelsByResourceTypes,
  2280  		HTTPMethod: "GET",
  2281  		HTTPPath:   "/log-levels",
  2282  	}
  2283  
  2284  	if input == nil {
  2285  		input = &GetLogLevelsByResourceTypesInput{}
  2286  	}
  2287  
  2288  	output = &GetLogLevelsByResourceTypesOutput{}
  2289  	req = c.newRequest(op, input, output)
  2290  	return
  2291  }
  2292  
  2293  // GetLogLevelsByResourceTypes API operation for AWS IoT Wireless.
  2294  //
  2295  // Returns current default log levels or log levels by resource types. Based
  2296  // on resource types, log levels can be for wireless device log options or wireless
  2297  // gateway log options.
  2298  //
  2299  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  2300  // with awserr.Error's Code and Message methods to get detailed information about
  2301  // the error.
  2302  //
  2303  // See the AWS API reference guide for AWS IoT Wireless's
  2304  // API operation GetLogLevelsByResourceTypes for usage and error information.
  2305  //
  2306  // Returned Error Types:
  2307  //   * AccessDeniedException
  2308  //   User does not have permission to perform this action.
  2309  //
  2310  //   * InternalServerException
  2311  //   An unexpected error occurred while processing a request.
  2312  //
  2313  //   * ResourceNotFoundException
  2314  //   Resource does not exist.
  2315  //
  2316  //   * ThrottlingException
  2317  //   The request was denied because it exceeded the allowed API request rate.
  2318  //
  2319  //   * ValidationException
  2320  //   The input did not meet the specified constraints.
  2321  //
  2322  // See also, https://docs.aws.amazon.com/goto/WebAPI/iotwireless-2020-11-22/GetLogLevelsByResourceTypes
  2323  func (c *IoTWireless) GetLogLevelsByResourceTypes(input *GetLogLevelsByResourceTypesInput) (*GetLogLevelsByResourceTypesOutput, error) {
  2324  	req, out := c.GetLogLevelsByResourceTypesRequest(input)
  2325  	return out, req.Send()
  2326  }
  2327  
  2328  // GetLogLevelsByResourceTypesWithContext is the same as GetLogLevelsByResourceTypes with the addition of
  2329  // the ability to pass a context and additional request options.
  2330  //
  2331  // See GetLogLevelsByResourceTypes for details on how to use this API operation.
  2332  //
  2333  // The context must be non-nil and will be used for request cancellation. If
  2334  // the context is nil a panic will occur. In the future the SDK may create
  2335  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  2336  // for more information on using Contexts.
  2337  func (c *IoTWireless) GetLogLevelsByResourceTypesWithContext(ctx aws.Context, input *GetLogLevelsByResourceTypesInput, opts ...request.Option) (*GetLogLevelsByResourceTypesOutput, error) {
  2338  	req, out := c.GetLogLevelsByResourceTypesRequest(input)
  2339  	req.SetContext(ctx)
  2340  	req.ApplyOptions(opts...)
  2341  	return out, req.Send()
  2342  }
  2343  
  2344  const opGetPartnerAccount = "GetPartnerAccount"
  2345  
  2346  // GetPartnerAccountRequest generates a "aws/request.Request" representing the
  2347  // client's request for the GetPartnerAccount operation. The "output" return
  2348  // value will be populated with the request's response once the request completes
  2349  // successfully.
  2350  //
  2351  // Use "Send" method on the returned Request to send the API call to the service.
  2352  // the "output" return value is not valid until after Send returns without error.
  2353  //
  2354  // See GetPartnerAccount for more information on using the GetPartnerAccount
  2355  // API call, and error handling.
  2356  //
  2357  // This method is useful when you want to inject custom logic or configuration
  2358  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  2359  //
  2360  //
  2361  //    // Example sending a request using the GetPartnerAccountRequest method.
  2362  //    req, resp := client.GetPartnerAccountRequest(params)
  2363  //
  2364  //    err := req.Send()
  2365  //    if err == nil { // resp is now filled
  2366  //        fmt.Println(resp)
  2367  //    }
  2368  //
  2369  // See also, https://docs.aws.amazon.com/goto/WebAPI/iotwireless-2020-11-22/GetPartnerAccount
  2370  func (c *IoTWireless) GetPartnerAccountRequest(input *GetPartnerAccountInput) (req *request.Request, output *GetPartnerAccountOutput) {
  2371  	op := &request.Operation{
  2372  		Name:       opGetPartnerAccount,
  2373  		HTTPMethod: "GET",
  2374  		HTTPPath:   "/partner-accounts/{PartnerAccountId}",
  2375  	}
  2376  
  2377  	if input == nil {
  2378  		input = &GetPartnerAccountInput{}
  2379  	}
  2380  
  2381  	output = &GetPartnerAccountOutput{}
  2382  	req = c.newRequest(op, input, output)
  2383  	return
  2384  }
  2385  
  2386  // GetPartnerAccount API operation for AWS IoT Wireless.
  2387  //
  2388  // Gets information about a partner account. If PartnerAccountId and PartnerType
  2389  // are null, returns all partner accounts.
  2390  //
  2391  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  2392  // with awserr.Error's Code and Message methods to get detailed information about
  2393  // the error.
  2394  //
  2395  // See the AWS API reference guide for AWS IoT Wireless's
  2396  // API operation GetPartnerAccount for usage and error information.
  2397  //
  2398  // Returned Error Types:
  2399  //   * ValidationException
  2400  //   The input did not meet the specified constraints.
  2401  //
  2402  //   * ResourceNotFoundException
  2403  //   Resource does not exist.
  2404  //
  2405  //   * InternalServerException
  2406  //   An unexpected error occurred while processing a request.
  2407  //
  2408  //   * ThrottlingException
  2409  //   The request was denied because it exceeded the allowed API request rate.
  2410  //
  2411  // See also, https://docs.aws.amazon.com/goto/WebAPI/iotwireless-2020-11-22/GetPartnerAccount
  2412  func (c *IoTWireless) GetPartnerAccount(input *GetPartnerAccountInput) (*GetPartnerAccountOutput, error) {
  2413  	req, out := c.GetPartnerAccountRequest(input)
  2414  	return out, req.Send()
  2415  }
  2416  
  2417  // GetPartnerAccountWithContext is the same as GetPartnerAccount with the addition of
  2418  // the ability to pass a context and additional request options.
  2419  //
  2420  // See GetPartnerAccount for details on how to use this API operation.
  2421  //
  2422  // The context must be non-nil and will be used for request cancellation. If
  2423  // the context is nil a panic will occur. In the future the SDK may create
  2424  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  2425  // for more information on using Contexts.
  2426  func (c *IoTWireless) GetPartnerAccountWithContext(ctx aws.Context, input *GetPartnerAccountInput, opts ...request.Option) (*GetPartnerAccountOutput, error) {
  2427  	req, out := c.GetPartnerAccountRequest(input)
  2428  	req.SetContext(ctx)
  2429  	req.ApplyOptions(opts...)
  2430  	return out, req.Send()
  2431  }
  2432  
  2433  const opGetResourceLogLevel = "GetResourceLogLevel"
  2434  
  2435  // GetResourceLogLevelRequest generates a "aws/request.Request" representing the
  2436  // client's request for the GetResourceLogLevel operation. The "output" return
  2437  // value will be populated with the request's response once the request completes
  2438  // successfully.
  2439  //
  2440  // Use "Send" method on the returned Request to send the API call to the service.
  2441  // the "output" return value is not valid until after Send returns without error.
  2442  //
  2443  // See GetResourceLogLevel for more information on using the GetResourceLogLevel
  2444  // API call, and error handling.
  2445  //
  2446  // This method is useful when you want to inject custom logic or configuration
  2447  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  2448  //
  2449  //
  2450  //    // Example sending a request using the GetResourceLogLevelRequest method.
  2451  //    req, resp := client.GetResourceLogLevelRequest(params)
  2452  //
  2453  //    err := req.Send()
  2454  //    if err == nil { // resp is now filled
  2455  //        fmt.Println(resp)
  2456  //    }
  2457  //
  2458  // See also, https://docs.aws.amazon.com/goto/WebAPI/iotwireless-2020-11-22/GetResourceLogLevel
  2459  func (c *IoTWireless) GetResourceLogLevelRequest(input *GetResourceLogLevelInput) (req *request.Request, output *GetResourceLogLevelOutput) {
  2460  	op := &request.Operation{
  2461  		Name:       opGetResourceLogLevel,
  2462  		HTTPMethod: "GET",
  2463  		HTTPPath:   "/log-levels/{ResourceIdentifier}",
  2464  	}
  2465  
  2466  	if input == nil {
  2467  		input = &GetResourceLogLevelInput{}
  2468  	}
  2469  
  2470  	output = &GetResourceLogLevelOutput{}
  2471  	req = c.newRequest(op, input, output)
  2472  	return
  2473  }
  2474  
  2475  // GetResourceLogLevel API operation for AWS IoT Wireless.
  2476  //
  2477  // Fetches the log-level override, if any, for a given resource-ID and resource-type.
  2478  // It can be used for a wireless device or a wireless gateway.
  2479  //
  2480  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  2481  // with awserr.Error's Code and Message methods to get detailed information about
  2482  // the error.
  2483  //
  2484  // See the AWS API reference guide for AWS IoT Wireless's
  2485  // API operation GetResourceLogLevel for usage and error information.
  2486  //
  2487  // Returned Error Types:
  2488  //   * AccessDeniedException
  2489  //   User does not have permission to perform this action.
  2490  //
  2491  //   * InternalServerException
  2492  //   An unexpected error occurred while processing a request.
  2493  //
  2494  //   * ResourceNotFoundException
  2495  //   Resource does not exist.
  2496  //
  2497  //   * ThrottlingException
  2498  //   The request was denied because it exceeded the allowed API request rate.
  2499  //
  2500  //   * ValidationException
  2501  //   The input did not meet the specified constraints.
  2502  //
  2503  // See also, https://docs.aws.amazon.com/goto/WebAPI/iotwireless-2020-11-22/GetResourceLogLevel
  2504  func (c *IoTWireless) GetResourceLogLevel(input *GetResourceLogLevelInput) (*GetResourceLogLevelOutput, error) {
  2505  	req, out := c.GetResourceLogLevelRequest(input)
  2506  	return out, req.Send()
  2507  }
  2508  
  2509  // GetResourceLogLevelWithContext is the same as GetResourceLogLevel with the addition of
  2510  // the ability to pass a context and additional request options.
  2511  //
  2512  // See GetResourceLogLevel for details on how to use this API operation.
  2513  //
  2514  // The context must be non-nil and will be used for request cancellation. If
  2515  // the context is nil a panic will occur. In the future the SDK may create
  2516  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  2517  // for more information on using Contexts.
  2518  func (c *IoTWireless) GetResourceLogLevelWithContext(ctx aws.Context, input *GetResourceLogLevelInput, opts ...request.Option) (*GetResourceLogLevelOutput, error) {
  2519  	req, out := c.GetResourceLogLevelRequest(input)
  2520  	req.SetContext(ctx)
  2521  	req.ApplyOptions(opts...)
  2522  	return out, req.Send()
  2523  }
  2524  
  2525  const opGetServiceEndpoint = "GetServiceEndpoint"
  2526  
  2527  // GetServiceEndpointRequest generates a "aws/request.Request" representing the
  2528  // client's request for the GetServiceEndpoint operation. The "output" return
  2529  // value will be populated with the request's response once the request completes
  2530  // successfully.
  2531  //
  2532  // Use "Send" method on the returned Request to send the API call to the service.
  2533  // the "output" return value is not valid until after Send returns without error.
  2534  //
  2535  // See GetServiceEndpoint for more information on using the GetServiceEndpoint
  2536  // API call, and error handling.
  2537  //
  2538  // This method is useful when you want to inject custom logic or configuration
  2539  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  2540  //
  2541  //
  2542  //    // Example sending a request using the GetServiceEndpointRequest method.
  2543  //    req, resp := client.GetServiceEndpointRequest(params)
  2544  //
  2545  //    err := req.Send()
  2546  //    if err == nil { // resp is now filled
  2547  //        fmt.Println(resp)
  2548  //    }
  2549  //
  2550  // See also, https://docs.aws.amazon.com/goto/WebAPI/iotwireless-2020-11-22/GetServiceEndpoint
  2551  func (c *IoTWireless) GetServiceEndpointRequest(input *GetServiceEndpointInput) (req *request.Request, output *GetServiceEndpointOutput) {
  2552  	op := &request.Operation{
  2553  		Name:       opGetServiceEndpoint,
  2554  		HTTPMethod: "GET",
  2555  		HTTPPath:   "/service-endpoint",
  2556  	}
  2557  
  2558  	if input == nil {
  2559  		input = &GetServiceEndpointInput{}
  2560  	}
  2561  
  2562  	output = &GetServiceEndpointOutput{}
  2563  	req = c.newRequest(op, input, output)
  2564  	return
  2565  }
  2566  
  2567  // GetServiceEndpoint API operation for AWS IoT Wireless.
  2568  //
  2569  // Gets the account-specific endpoint for Configuration and Update Server (CUPS)
  2570  // protocol or LoRaWAN Network Server (LNS) connections.
  2571  //
  2572  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  2573  // with awserr.Error's Code and Message methods to get detailed information about
  2574  // the error.
  2575  //
  2576  // See the AWS API reference guide for AWS IoT Wireless's
  2577  // API operation GetServiceEndpoint for usage and error information.
  2578  //
  2579  // Returned Error Types:
  2580  //   * ValidationException
  2581  //   The input did not meet the specified constraints.
  2582  //
  2583  //   * AccessDeniedException
  2584  //   User does not have permission to perform this action.
  2585  //
  2586  //   * InternalServerException
  2587  //   An unexpected error occurred while processing a request.
  2588  //
  2589  //   * ThrottlingException
  2590  //   The request was denied because it exceeded the allowed API request rate.
  2591  //
  2592  // See also, https://docs.aws.amazon.com/goto/WebAPI/iotwireless-2020-11-22/GetServiceEndpoint
  2593  func (c *IoTWireless) GetServiceEndpoint(input *GetServiceEndpointInput) (*GetServiceEndpointOutput, error) {
  2594  	req, out := c.GetServiceEndpointRequest(input)
  2595  	return out, req.Send()
  2596  }
  2597  
  2598  // GetServiceEndpointWithContext is the same as GetServiceEndpoint with the addition of
  2599  // the ability to pass a context and additional request options.
  2600  //
  2601  // See GetServiceEndpoint for details on how to use this API operation.
  2602  //
  2603  // The context must be non-nil and will be used for request cancellation. If
  2604  // the context is nil a panic will occur. In the future the SDK may create
  2605  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  2606  // for more information on using Contexts.
  2607  func (c *IoTWireless) GetServiceEndpointWithContext(ctx aws.Context, input *GetServiceEndpointInput, opts ...request.Option) (*GetServiceEndpointOutput, error) {
  2608  	req, out := c.GetServiceEndpointRequest(input)
  2609  	req.SetContext(ctx)
  2610  	req.ApplyOptions(opts...)
  2611  	return out, req.Send()
  2612  }
  2613  
  2614  const opGetServiceProfile = "GetServiceProfile"
  2615  
  2616  // GetServiceProfileRequest generates a "aws/request.Request" representing the
  2617  // client's request for the GetServiceProfile operation. The "output" return
  2618  // value will be populated with the request's response once the request completes
  2619  // successfully.
  2620  //
  2621  // Use "Send" method on the returned Request to send the API call to the service.
  2622  // the "output" return value is not valid until after Send returns without error.
  2623  //
  2624  // See GetServiceProfile for more information on using the GetServiceProfile
  2625  // API call, and error handling.
  2626  //
  2627  // This method is useful when you want to inject custom logic or configuration
  2628  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  2629  //
  2630  //
  2631  //    // Example sending a request using the GetServiceProfileRequest method.
  2632  //    req, resp := client.GetServiceProfileRequest(params)
  2633  //
  2634  //    err := req.Send()
  2635  //    if err == nil { // resp is now filled
  2636  //        fmt.Println(resp)
  2637  //    }
  2638  //
  2639  // See also, https://docs.aws.amazon.com/goto/WebAPI/iotwireless-2020-11-22/GetServiceProfile
  2640  func (c *IoTWireless) GetServiceProfileRequest(input *GetServiceProfileInput) (req *request.Request, output *GetServiceProfileOutput) {
  2641  	op := &request.Operation{
  2642  		Name:       opGetServiceProfile,
  2643  		HTTPMethod: "GET",
  2644  		HTTPPath:   "/service-profiles/{Id}",
  2645  	}
  2646  
  2647  	if input == nil {
  2648  		input = &GetServiceProfileInput{}
  2649  	}
  2650  
  2651  	output = &GetServiceProfileOutput{}
  2652  	req = c.newRequest(op, input, output)
  2653  	return
  2654  }
  2655  
  2656  // GetServiceProfile API operation for AWS IoT Wireless.
  2657  //
  2658  // Gets information about a service profile.
  2659  //
  2660  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  2661  // with awserr.Error's Code and Message methods to get detailed information about
  2662  // the error.
  2663  //
  2664  // See the AWS API reference guide for AWS IoT Wireless's
  2665  // API operation GetServiceProfile for usage and error information.
  2666  //
  2667  // Returned Error Types:
  2668  //   * ValidationException
  2669  //   The input did not meet the specified constraints.
  2670  //
  2671  //   * AccessDeniedException
  2672  //   User does not have permission to perform this action.
  2673  //
  2674  //   * ResourceNotFoundException
  2675  //   Resource does not exist.
  2676  //
  2677  //   * InternalServerException
  2678  //   An unexpected error occurred while processing a request.
  2679  //
  2680  //   * ThrottlingException
  2681  //   The request was denied because it exceeded the allowed API request rate.
  2682  //
  2683  // See also, https://docs.aws.amazon.com/goto/WebAPI/iotwireless-2020-11-22/GetServiceProfile
  2684  func (c *IoTWireless) GetServiceProfile(input *GetServiceProfileInput) (*GetServiceProfileOutput, error) {
  2685  	req, out := c.GetServiceProfileRequest(input)
  2686  	return out, req.Send()
  2687  }
  2688  
  2689  // GetServiceProfileWithContext is the same as GetServiceProfile with the addition of
  2690  // the ability to pass a context and additional request options.
  2691  //
  2692  // See GetServiceProfile for details on how to use this API operation.
  2693  //
  2694  // The context must be non-nil and will be used for request cancellation. If
  2695  // the context is nil a panic will occur. In the future the SDK may create
  2696  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  2697  // for more information on using Contexts.
  2698  func (c *IoTWireless) GetServiceProfileWithContext(ctx aws.Context, input *GetServiceProfileInput, opts ...request.Option) (*GetServiceProfileOutput, error) {
  2699  	req, out := c.GetServiceProfileRequest(input)
  2700  	req.SetContext(ctx)
  2701  	req.ApplyOptions(opts...)
  2702  	return out, req.Send()
  2703  }
  2704  
  2705  const opGetWirelessDevice = "GetWirelessDevice"
  2706  
  2707  // GetWirelessDeviceRequest generates a "aws/request.Request" representing the
  2708  // client's request for the GetWirelessDevice operation. The "output" return
  2709  // value will be populated with the request's response once the request completes
  2710  // successfully.
  2711  //
  2712  // Use "Send" method on the returned Request to send the API call to the service.
  2713  // the "output" return value is not valid until after Send returns without error.
  2714  //
  2715  // See GetWirelessDevice for more information on using the GetWirelessDevice
  2716  // API call, and error handling.
  2717  //
  2718  // This method is useful when you want to inject custom logic or configuration
  2719  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  2720  //
  2721  //
  2722  //    // Example sending a request using the GetWirelessDeviceRequest method.
  2723  //    req, resp := client.GetWirelessDeviceRequest(params)
  2724  //
  2725  //    err := req.Send()
  2726  //    if err == nil { // resp is now filled
  2727  //        fmt.Println(resp)
  2728  //    }
  2729  //
  2730  // See also, https://docs.aws.amazon.com/goto/WebAPI/iotwireless-2020-11-22/GetWirelessDevice
  2731  func (c *IoTWireless) GetWirelessDeviceRequest(input *GetWirelessDeviceInput) (req *request.Request, output *GetWirelessDeviceOutput) {
  2732  	op := &request.Operation{
  2733  		Name:       opGetWirelessDevice,
  2734  		HTTPMethod: "GET",
  2735  		HTTPPath:   "/wireless-devices/{Identifier}",
  2736  	}
  2737  
  2738  	if input == nil {
  2739  		input = &GetWirelessDeviceInput{}
  2740  	}
  2741  
  2742  	output = &GetWirelessDeviceOutput{}
  2743  	req = c.newRequest(op, input, output)
  2744  	return
  2745  }
  2746  
  2747  // GetWirelessDevice API operation for AWS IoT Wireless.
  2748  //
  2749  // Gets information about a wireless device.
  2750  //
  2751  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  2752  // with awserr.Error's Code and Message methods to get detailed information about
  2753  // the error.
  2754  //
  2755  // See the AWS API reference guide for AWS IoT Wireless's
  2756  // API operation GetWirelessDevice for usage and error information.
  2757  //
  2758  // Returned Error Types:
  2759  //   * ValidationException
  2760  //   The input did not meet the specified constraints.
  2761  //
  2762  //   * AccessDeniedException
  2763  //   User does not have permission to perform this action.
  2764  //
  2765  //   * ResourceNotFoundException
  2766  //   Resource does not exist.
  2767  //
  2768  //   * InternalServerException
  2769  //   An unexpected error occurred while processing a request.
  2770  //
  2771  //   * ThrottlingException
  2772  //   The request was denied because it exceeded the allowed API request rate.
  2773  //
  2774  // See also, https://docs.aws.amazon.com/goto/WebAPI/iotwireless-2020-11-22/GetWirelessDevice
  2775  func (c *IoTWireless) GetWirelessDevice(input *GetWirelessDeviceInput) (*GetWirelessDeviceOutput, error) {
  2776  	req, out := c.GetWirelessDeviceRequest(input)
  2777  	return out, req.Send()
  2778  }
  2779  
  2780  // GetWirelessDeviceWithContext is the same as GetWirelessDevice with the addition of
  2781  // the ability to pass a context and additional request options.
  2782  //
  2783  // See GetWirelessDevice for details on how to use this API operation.
  2784  //
  2785  // The context must be non-nil and will be used for request cancellation. If
  2786  // the context is nil a panic will occur. In the future the SDK may create
  2787  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  2788  // for more information on using Contexts.
  2789  func (c *IoTWireless) GetWirelessDeviceWithContext(ctx aws.Context, input *GetWirelessDeviceInput, opts ...request.Option) (*GetWirelessDeviceOutput, error) {
  2790  	req, out := c.GetWirelessDeviceRequest(input)
  2791  	req.SetContext(ctx)
  2792  	req.ApplyOptions(opts...)
  2793  	return out, req.Send()
  2794  }
  2795  
  2796  const opGetWirelessDeviceStatistics = "GetWirelessDeviceStatistics"
  2797  
  2798  // GetWirelessDeviceStatisticsRequest generates a "aws/request.Request" representing the
  2799  // client's request for the GetWirelessDeviceStatistics operation. The "output" return
  2800  // value will be populated with the request's response once the request completes
  2801  // successfully.
  2802  //
  2803  // Use "Send" method on the returned Request to send the API call to the service.
  2804  // the "output" return value is not valid until after Send returns without error.
  2805  //
  2806  // See GetWirelessDeviceStatistics for more information on using the GetWirelessDeviceStatistics
  2807  // API call, and error handling.
  2808  //
  2809  // This method is useful when you want to inject custom logic or configuration
  2810  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  2811  //
  2812  //
  2813  //    // Example sending a request using the GetWirelessDeviceStatisticsRequest method.
  2814  //    req, resp := client.GetWirelessDeviceStatisticsRequest(params)
  2815  //
  2816  //    err := req.Send()
  2817  //    if err == nil { // resp is now filled
  2818  //        fmt.Println(resp)
  2819  //    }
  2820  //
  2821  // See also, https://docs.aws.amazon.com/goto/WebAPI/iotwireless-2020-11-22/GetWirelessDeviceStatistics
  2822  func (c *IoTWireless) GetWirelessDeviceStatisticsRequest(input *GetWirelessDeviceStatisticsInput) (req *request.Request, output *GetWirelessDeviceStatisticsOutput) {
  2823  	op := &request.Operation{
  2824  		Name:       opGetWirelessDeviceStatistics,
  2825  		HTTPMethod: "GET",
  2826  		HTTPPath:   "/wireless-devices/{Id}/statistics",
  2827  	}
  2828  
  2829  	if input == nil {
  2830  		input = &GetWirelessDeviceStatisticsInput{}
  2831  	}
  2832  
  2833  	output = &GetWirelessDeviceStatisticsOutput{}
  2834  	req = c.newRequest(op, input, output)
  2835  	return
  2836  }
  2837  
  2838  // GetWirelessDeviceStatistics API operation for AWS IoT Wireless.
  2839  //
  2840  // Gets operating information about a wireless device.
  2841  //
  2842  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  2843  // with awserr.Error's Code and Message methods to get detailed information about
  2844  // the error.
  2845  //
  2846  // See the AWS API reference guide for AWS IoT Wireless's
  2847  // API operation GetWirelessDeviceStatistics for usage and error information.
  2848  //
  2849  // Returned Error Types:
  2850  //   * ValidationException
  2851  //   The input did not meet the specified constraints.
  2852  //
  2853  //   * AccessDeniedException
  2854  //   User does not have permission to perform this action.
  2855  //
  2856  //   * ResourceNotFoundException
  2857  //   Resource does not exist.
  2858  //
  2859  //   * InternalServerException
  2860  //   An unexpected error occurred while processing a request.
  2861  //
  2862  //   * ThrottlingException
  2863  //   The request was denied because it exceeded the allowed API request rate.
  2864  //
  2865  // See also, https://docs.aws.amazon.com/goto/WebAPI/iotwireless-2020-11-22/GetWirelessDeviceStatistics
  2866  func (c *IoTWireless) GetWirelessDeviceStatistics(input *GetWirelessDeviceStatisticsInput) (*GetWirelessDeviceStatisticsOutput, error) {
  2867  	req, out := c.GetWirelessDeviceStatisticsRequest(input)
  2868  	return out, req.Send()
  2869  }
  2870  
  2871  // GetWirelessDeviceStatisticsWithContext is the same as GetWirelessDeviceStatistics with the addition of
  2872  // the ability to pass a context and additional request options.
  2873  //
  2874  // See GetWirelessDeviceStatistics for details on how to use this API operation.
  2875  //
  2876  // The context must be non-nil and will be used for request cancellation. If
  2877  // the context is nil a panic will occur. In the future the SDK may create
  2878  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  2879  // for more information on using Contexts.
  2880  func (c *IoTWireless) GetWirelessDeviceStatisticsWithContext(ctx aws.Context, input *GetWirelessDeviceStatisticsInput, opts ...request.Option) (*GetWirelessDeviceStatisticsOutput, error) {
  2881  	req, out := c.GetWirelessDeviceStatisticsRequest(input)
  2882  	req.SetContext(ctx)
  2883  	req.ApplyOptions(opts...)
  2884  	return out, req.Send()
  2885  }
  2886  
  2887  const opGetWirelessGateway = "GetWirelessGateway"
  2888  
  2889  // GetWirelessGatewayRequest generates a "aws/request.Request" representing the
  2890  // client's request for the GetWirelessGateway operation. The "output" return
  2891  // value will be populated with the request's response once the request completes
  2892  // successfully.
  2893  //
  2894  // Use "Send" method on the returned Request to send the API call to the service.
  2895  // the "output" return value is not valid until after Send returns without error.
  2896  //
  2897  // See GetWirelessGateway for more information on using the GetWirelessGateway
  2898  // API call, and error handling.
  2899  //
  2900  // This method is useful when you want to inject custom logic or configuration
  2901  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  2902  //
  2903  //
  2904  //    // Example sending a request using the GetWirelessGatewayRequest method.
  2905  //    req, resp := client.GetWirelessGatewayRequest(params)
  2906  //
  2907  //    err := req.Send()
  2908  //    if err == nil { // resp is now filled
  2909  //        fmt.Println(resp)
  2910  //    }
  2911  //
  2912  // See also, https://docs.aws.amazon.com/goto/WebAPI/iotwireless-2020-11-22/GetWirelessGateway
  2913  func (c *IoTWireless) GetWirelessGatewayRequest(input *GetWirelessGatewayInput) (req *request.Request, output *GetWirelessGatewayOutput) {
  2914  	op := &request.Operation{
  2915  		Name:       opGetWirelessGateway,
  2916  		HTTPMethod: "GET",
  2917  		HTTPPath:   "/wireless-gateways/{Identifier}",
  2918  	}
  2919  
  2920  	if input == nil {
  2921  		input = &GetWirelessGatewayInput{}
  2922  	}
  2923  
  2924  	output = &GetWirelessGatewayOutput{}
  2925  	req = c.newRequest(op, input, output)
  2926  	return
  2927  }
  2928  
  2929  // GetWirelessGateway API operation for AWS IoT Wireless.
  2930  //
  2931  // Gets information about a wireless gateway.
  2932  //
  2933  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  2934  // with awserr.Error's Code and Message methods to get detailed information about
  2935  // the error.
  2936  //
  2937  // See the AWS API reference guide for AWS IoT Wireless's
  2938  // API operation GetWirelessGateway for usage and error information.
  2939  //
  2940  // Returned Error Types:
  2941  //   * ValidationException
  2942  //   The input did not meet the specified constraints.
  2943  //
  2944  //   * ResourceNotFoundException
  2945  //   Resource does not exist.
  2946  //
  2947  //   * AccessDeniedException
  2948  //   User does not have permission to perform this action.
  2949  //
  2950  //   * InternalServerException
  2951  //   An unexpected error occurred while processing a request.
  2952  //
  2953  //   * ThrottlingException
  2954  //   The request was denied because it exceeded the allowed API request rate.
  2955  //
  2956  // See also, https://docs.aws.amazon.com/goto/WebAPI/iotwireless-2020-11-22/GetWirelessGateway
  2957  func (c *IoTWireless) GetWirelessGateway(input *GetWirelessGatewayInput) (*GetWirelessGatewayOutput, error) {
  2958  	req, out := c.GetWirelessGatewayRequest(input)
  2959  	return out, req.Send()
  2960  }
  2961  
  2962  // GetWirelessGatewayWithContext is the same as GetWirelessGateway with the addition of
  2963  // the ability to pass a context and additional request options.
  2964  //
  2965  // See GetWirelessGateway for details on how to use this API operation.
  2966  //
  2967  // The context must be non-nil and will be used for request cancellation. If
  2968  // the context is nil a panic will occur. In the future the SDK may create
  2969  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  2970  // for more information on using Contexts.
  2971  func (c *IoTWireless) GetWirelessGatewayWithContext(ctx aws.Context, input *GetWirelessGatewayInput, opts ...request.Option) (*GetWirelessGatewayOutput, error) {
  2972  	req, out := c.GetWirelessGatewayRequest(input)
  2973  	req.SetContext(ctx)
  2974  	req.ApplyOptions(opts...)
  2975  	return out, req.Send()
  2976  }
  2977  
  2978  const opGetWirelessGatewayCertificate = "GetWirelessGatewayCertificate"
  2979  
  2980  // GetWirelessGatewayCertificateRequest generates a "aws/request.Request" representing the
  2981  // client's request for the GetWirelessGatewayCertificate operation. The "output" return
  2982  // value will be populated with the request's response once the request completes
  2983  // successfully.
  2984  //
  2985  // Use "Send" method on the returned Request to send the API call to the service.
  2986  // the "output" return value is not valid until after Send returns without error.
  2987  //
  2988  // See GetWirelessGatewayCertificate for more information on using the GetWirelessGatewayCertificate
  2989  // API call, and error handling.
  2990  //
  2991  // This method is useful when you want to inject custom logic or configuration
  2992  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  2993  //
  2994  //
  2995  //    // Example sending a request using the GetWirelessGatewayCertificateRequest method.
  2996  //    req, resp := client.GetWirelessGatewayCertificateRequest(params)
  2997  //
  2998  //    err := req.Send()
  2999  //    if err == nil { // resp is now filled
  3000  //        fmt.Println(resp)
  3001  //    }
  3002  //
  3003  // See also, https://docs.aws.amazon.com/goto/WebAPI/iotwireless-2020-11-22/GetWirelessGatewayCertificate
  3004  func (c *IoTWireless) GetWirelessGatewayCertificateRequest(input *GetWirelessGatewayCertificateInput) (req *request.Request, output *GetWirelessGatewayCertificateOutput) {
  3005  	op := &request.Operation{
  3006  		Name:       opGetWirelessGatewayCertificate,
  3007  		HTTPMethod: "GET",
  3008  		HTTPPath:   "/wireless-gateways/{Id}/certificate",
  3009  	}
  3010  
  3011  	if input == nil {
  3012  		input = &GetWirelessGatewayCertificateInput{}
  3013  	}
  3014  
  3015  	output = &GetWirelessGatewayCertificateOutput{}
  3016  	req = c.newRequest(op, input, output)
  3017  	return
  3018  }
  3019  
  3020  // GetWirelessGatewayCertificate API operation for AWS IoT Wireless.
  3021  //
  3022  // Gets the ID of the certificate that is currently associated with a wireless
  3023  // gateway.
  3024  //
  3025  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  3026  // with awserr.Error's Code and Message methods to get detailed information about
  3027  // the error.
  3028  //
  3029  // See the AWS API reference guide for AWS IoT Wireless's
  3030  // API operation GetWirelessGatewayCertificate for usage and error information.
  3031  //
  3032  // Returned Error Types:
  3033  //   * ValidationException
  3034  //   The input did not meet the specified constraints.
  3035  //
  3036  //   * AccessDeniedException
  3037  //   User does not have permission to perform this action.
  3038  //
  3039  //   * ResourceNotFoundException
  3040  //   Resource does not exist.
  3041  //
  3042  //   * InternalServerException
  3043  //   An unexpected error occurred while processing a request.
  3044  //
  3045  //   * ThrottlingException
  3046  //   The request was denied because it exceeded the allowed API request rate.
  3047  //
  3048  // See also, https://docs.aws.amazon.com/goto/WebAPI/iotwireless-2020-11-22/GetWirelessGatewayCertificate
  3049  func (c *IoTWireless) GetWirelessGatewayCertificate(input *GetWirelessGatewayCertificateInput) (*GetWirelessGatewayCertificateOutput, error) {
  3050  	req, out := c.GetWirelessGatewayCertificateRequest(input)
  3051  	return out, req.Send()
  3052  }
  3053  
  3054  // GetWirelessGatewayCertificateWithContext is the same as GetWirelessGatewayCertificate with the addition of
  3055  // the ability to pass a context and additional request options.
  3056  //
  3057  // See GetWirelessGatewayCertificate for details on how to use this API operation.
  3058  //
  3059  // The context must be non-nil and will be used for request cancellation. If
  3060  // the context is nil a panic will occur. In the future the SDK may create
  3061  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  3062  // for more information on using Contexts.
  3063  func (c *IoTWireless) GetWirelessGatewayCertificateWithContext(ctx aws.Context, input *GetWirelessGatewayCertificateInput, opts ...request.Option) (*GetWirelessGatewayCertificateOutput, error) {
  3064  	req, out := c.GetWirelessGatewayCertificateRequest(input)
  3065  	req.SetContext(ctx)
  3066  	req.ApplyOptions(opts...)
  3067  	return out, req.Send()
  3068  }
  3069  
  3070  const opGetWirelessGatewayFirmwareInformation = "GetWirelessGatewayFirmwareInformation"
  3071  
  3072  // GetWirelessGatewayFirmwareInformationRequest generates a "aws/request.Request" representing the
  3073  // client's request for the GetWirelessGatewayFirmwareInformation operation. The "output" return
  3074  // value will be populated with the request's response once the request completes
  3075  // successfully.
  3076  //
  3077  // Use "Send" method on the returned Request to send the API call to the service.
  3078  // the "output" return value is not valid until after Send returns without error.
  3079  //
  3080  // See GetWirelessGatewayFirmwareInformation for more information on using the GetWirelessGatewayFirmwareInformation
  3081  // API call, and error handling.
  3082  //
  3083  // This method is useful when you want to inject custom logic or configuration
  3084  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  3085  //
  3086  //
  3087  //    // Example sending a request using the GetWirelessGatewayFirmwareInformationRequest method.
  3088  //    req, resp := client.GetWirelessGatewayFirmwareInformationRequest(params)
  3089  //
  3090  //    err := req.Send()
  3091  //    if err == nil { // resp is now filled
  3092  //        fmt.Println(resp)
  3093  //    }
  3094  //
  3095  // See also, https://docs.aws.amazon.com/goto/WebAPI/iotwireless-2020-11-22/GetWirelessGatewayFirmwareInformation
  3096  func (c *IoTWireless) GetWirelessGatewayFirmwareInformationRequest(input *GetWirelessGatewayFirmwareInformationInput) (req *request.Request, output *GetWirelessGatewayFirmwareInformationOutput) {
  3097  	op := &request.Operation{
  3098  		Name:       opGetWirelessGatewayFirmwareInformation,
  3099  		HTTPMethod: "GET",
  3100  		HTTPPath:   "/wireless-gateways/{Id}/firmware-information",
  3101  	}
  3102  
  3103  	if input == nil {
  3104  		input = &GetWirelessGatewayFirmwareInformationInput{}
  3105  	}
  3106  
  3107  	output = &GetWirelessGatewayFirmwareInformationOutput{}
  3108  	req = c.newRequest(op, input, output)
  3109  	return
  3110  }
  3111  
  3112  // GetWirelessGatewayFirmwareInformation API operation for AWS IoT Wireless.
  3113  //
  3114  // Gets the firmware version and other information about a wireless gateway.
  3115  //
  3116  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  3117  // with awserr.Error's Code and Message methods to get detailed information about
  3118  // the error.
  3119  //
  3120  // See the AWS API reference guide for AWS IoT Wireless's
  3121  // API operation GetWirelessGatewayFirmwareInformation for usage and error information.
  3122  //
  3123  // Returned Error Types:
  3124  //   * ValidationException
  3125  //   The input did not meet the specified constraints.
  3126  //
  3127  //   * AccessDeniedException
  3128  //   User does not have permission to perform this action.
  3129  //
  3130  //   * ResourceNotFoundException
  3131  //   Resource does not exist.
  3132  //
  3133  //   * InternalServerException
  3134  //   An unexpected error occurred while processing a request.
  3135  //
  3136  //   * ThrottlingException
  3137  //   The request was denied because it exceeded the allowed API request rate.
  3138  //
  3139  // See also, https://docs.aws.amazon.com/goto/WebAPI/iotwireless-2020-11-22/GetWirelessGatewayFirmwareInformation
  3140  func (c *IoTWireless) GetWirelessGatewayFirmwareInformation(input *GetWirelessGatewayFirmwareInformationInput) (*GetWirelessGatewayFirmwareInformationOutput, error) {
  3141  	req, out := c.GetWirelessGatewayFirmwareInformationRequest(input)
  3142  	return out, req.Send()
  3143  }
  3144  
  3145  // GetWirelessGatewayFirmwareInformationWithContext is the same as GetWirelessGatewayFirmwareInformation with the addition of
  3146  // the ability to pass a context and additional request options.
  3147  //
  3148  // See GetWirelessGatewayFirmwareInformation for details on how to use this API operation.
  3149  //
  3150  // The context must be non-nil and will be used for request cancellation. If
  3151  // the context is nil a panic will occur. In the future the SDK may create
  3152  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  3153  // for more information on using Contexts.
  3154  func (c *IoTWireless) GetWirelessGatewayFirmwareInformationWithContext(ctx aws.Context, input *GetWirelessGatewayFirmwareInformationInput, opts ...request.Option) (*GetWirelessGatewayFirmwareInformationOutput, error) {
  3155  	req, out := c.GetWirelessGatewayFirmwareInformationRequest(input)
  3156  	req.SetContext(ctx)
  3157  	req.ApplyOptions(opts...)
  3158  	return out, req.Send()
  3159  }
  3160  
  3161  const opGetWirelessGatewayStatistics = "GetWirelessGatewayStatistics"
  3162  
  3163  // GetWirelessGatewayStatisticsRequest generates a "aws/request.Request" representing the
  3164  // client's request for the GetWirelessGatewayStatistics operation. The "output" return
  3165  // value will be populated with the request's response once the request completes
  3166  // successfully.
  3167  //
  3168  // Use "Send" method on the returned Request to send the API call to the service.
  3169  // the "output" return value is not valid until after Send returns without error.
  3170  //
  3171  // See GetWirelessGatewayStatistics for more information on using the GetWirelessGatewayStatistics
  3172  // API call, and error handling.
  3173  //
  3174  // This method is useful when you want to inject custom logic or configuration
  3175  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  3176  //
  3177  //
  3178  //    // Example sending a request using the GetWirelessGatewayStatisticsRequest method.
  3179  //    req, resp := client.GetWirelessGatewayStatisticsRequest(params)
  3180  //
  3181  //    err := req.Send()
  3182  //    if err == nil { // resp is now filled
  3183  //        fmt.Println(resp)
  3184  //    }
  3185  //
  3186  // See also, https://docs.aws.amazon.com/goto/WebAPI/iotwireless-2020-11-22/GetWirelessGatewayStatistics
  3187  func (c *IoTWireless) GetWirelessGatewayStatisticsRequest(input *GetWirelessGatewayStatisticsInput) (req *request.Request, output *GetWirelessGatewayStatisticsOutput) {
  3188  	op := &request.Operation{
  3189  		Name:       opGetWirelessGatewayStatistics,
  3190  		HTTPMethod: "GET",
  3191  		HTTPPath:   "/wireless-gateways/{Id}/statistics",
  3192  	}
  3193  
  3194  	if input == nil {
  3195  		input = &GetWirelessGatewayStatisticsInput{}
  3196  	}
  3197  
  3198  	output = &GetWirelessGatewayStatisticsOutput{}
  3199  	req = c.newRequest(op, input, output)
  3200  	return
  3201  }
  3202  
  3203  // GetWirelessGatewayStatistics API operation for AWS IoT Wireless.
  3204  //
  3205  // Gets operating information about a wireless gateway.
  3206  //
  3207  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  3208  // with awserr.Error's Code and Message methods to get detailed information about
  3209  // the error.
  3210  //
  3211  // See the AWS API reference guide for AWS IoT Wireless's
  3212  // API operation GetWirelessGatewayStatistics for usage and error information.
  3213  //
  3214  // Returned Error Types:
  3215  //   * ValidationException
  3216  //   The input did not meet the specified constraints.
  3217  //
  3218  //   * AccessDeniedException
  3219  //   User does not have permission to perform this action.
  3220  //
  3221  //   * ResourceNotFoundException
  3222  //   Resource does not exist.
  3223  //
  3224  //   * InternalServerException
  3225  //   An unexpected error occurred while processing a request.
  3226  //
  3227  //   * ThrottlingException
  3228  //   The request was denied because it exceeded the allowed API request rate.
  3229  //
  3230  // See also, https://docs.aws.amazon.com/goto/WebAPI/iotwireless-2020-11-22/GetWirelessGatewayStatistics
  3231  func (c *IoTWireless) GetWirelessGatewayStatistics(input *GetWirelessGatewayStatisticsInput) (*GetWirelessGatewayStatisticsOutput, error) {
  3232  	req, out := c.GetWirelessGatewayStatisticsRequest(input)
  3233  	return out, req.Send()
  3234  }
  3235  
  3236  // GetWirelessGatewayStatisticsWithContext is the same as GetWirelessGatewayStatistics with the addition of
  3237  // the ability to pass a context and additional request options.
  3238  //
  3239  // See GetWirelessGatewayStatistics for details on how to use this API operation.
  3240  //
  3241  // The context must be non-nil and will be used for request cancellation. If
  3242  // the context is nil a panic will occur. In the future the SDK may create
  3243  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  3244  // for more information on using Contexts.
  3245  func (c *IoTWireless) GetWirelessGatewayStatisticsWithContext(ctx aws.Context, input *GetWirelessGatewayStatisticsInput, opts ...request.Option) (*GetWirelessGatewayStatisticsOutput, error) {
  3246  	req, out := c.GetWirelessGatewayStatisticsRequest(input)
  3247  	req.SetContext(ctx)
  3248  	req.ApplyOptions(opts...)
  3249  	return out, req.Send()
  3250  }
  3251  
  3252  const opGetWirelessGatewayTask = "GetWirelessGatewayTask"
  3253  
  3254  // GetWirelessGatewayTaskRequest generates a "aws/request.Request" representing the
  3255  // client's request for the GetWirelessGatewayTask operation. The "output" return
  3256  // value will be populated with the request's response once the request completes
  3257  // successfully.
  3258  //
  3259  // Use "Send" method on the returned Request to send the API call to the service.
  3260  // the "output" return value is not valid until after Send returns without error.
  3261  //
  3262  // See GetWirelessGatewayTask for more information on using the GetWirelessGatewayTask
  3263  // API call, and error handling.
  3264  //
  3265  // This method is useful when you want to inject custom logic or configuration
  3266  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  3267  //
  3268  //
  3269  //    // Example sending a request using the GetWirelessGatewayTaskRequest method.
  3270  //    req, resp := client.GetWirelessGatewayTaskRequest(params)
  3271  //
  3272  //    err := req.Send()
  3273  //    if err == nil { // resp is now filled
  3274  //        fmt.Println(resp)
  3275  //    }
  3276  //
  3277  // See also, https://docs.aws.amazon.com/goto/WebAPI/iotwireless-2020-11-22/GetWirelessGatewayTask
  3278  func (c *IoTWireless) GetWirelessGatewayTaskRequest(input *GetWirelessGatewayTaskInput) (req *request.Request, output *GetWirelessGatewayTaskOutput) {
  3279  	op := &request.Operation{
  3280  		Name:       opGetWirelessGatewayTask,
  3281  		HTTPMethod: "GET",
  3282  		HTTPPath:   "/wireless-gateways/{Id}/tasks",
  3283  	}
  3284  
  3285  	if input == nil {
  3286  		input = &GetWirelessGatewayTaskInput{}
  3287  	}
  3288  
  3289  	output = &GetWirelessGatewayTaskOutput{}
  3290  	req = c.newRequest(op, input, output)
  3291  	return
  3292  }
  3293  
  3294  // GetWirelessGatewayTask API operation for AWS IoT Wireless.
  3295  //
  3296  // Gets information about a wireless gateway task.
  3297  //
  3298  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  3299  // with awserr.Error's Code and Message methods to get detailed information about
  3300  // the error.
  3301  //
  3302  // See the AWS API reference guide for AWS IoT Wireless's
  3303  // API operation GetWirelessGatewayTask for usage and error information.
  3304  //
  3305  // Returned Error Types:
  3306  //   * ValidationException
  3307  //   The input did not meet the specified constraints.
  3308  //
  3309  //   * AccessDeniedException
  3310  //   User does not have permission to perform this action.
  3311  //
  3312  //   * ResourceNotFoundException
  3313  //   Resource does not exist.
  3314  //
  3315  //   * InternalServerException
  3316  //   An unexpected error occurred while processing a request.
  3317  //
  3318  //   * ThrottlingException
  3319  //   The request was denied because it exceeded the allowed API request rate.
  3320  //
  3321  // See also, https://docs.aws.amazon.com/goto/WebAPI/iotwireless-2020-11-22/GetWirelessGatewayTask
  3322  func (c *IoTWireless) GetWirelessGatewayTask(input *GetWirelessGatewayTaskInput) (*GetWirelessGatewayTaskOutput, error) {
  3323  	req, out := c.GetWirelessGatewayTaskRequest(input)
  3324  	return out, req.Send()
  3325  }
  3326  
  3327  // GetWirelessGatewayTaskWithContext is the same as GetWirelessGatewayTask with the addition of
  3328  // the ability to pass a context and additional request options.
  3329  //
  3330  // See GetWirelessGatewayTask for details on how to use this API operation.
  3331  //
  3332  // The context must be non-nil and will be used for request cancellation. If
  3333  // the context is nil a panic will occur. In the future the SDK may create
  3334  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  3335  // for more information on using Contexts.
  3336  func (c *IoTWireless) GetWirelessGatewayTaskWithContext(ctx aws.Context, input *GetWirelessGatewayTaskInput, opts ...request.Option) (*GetWirelessGatewayTaskOutput, error) {
  3337  	req, out := c.GetWirelessGatewayTaskRequest(input)
  3338  	req.SetContext(ctx)
  3339  	req.ApplyOptions(opts...)
  3340  	return out, req.Send()
  3341  }
  3342  
  3343  const opGetWirelessGatewayTaskDefinition = "GetWirelessGatewayTaskDefinition"
  3344  
  3345  // GetWirelessGatewayTaskDefinitionRequest generates a "aws/request.Request" representing the
  3346  // client's request for the GetWirelessGatewayTaskDefinition operation. The "output" return
  3347  // value will be populated with the request's response once the request completes
  3348  // successfully.
  3349  //
  3350  // Use "Send" method on the returned Request to send the API call to the service.
  3351  // the "output" return value is not valid until after Send returns without error.
  3352  //
  3353  // See GetWirelessGatewayTaskDefinition for more information on using the GetWirelessGatewayTaskDefinition
  3354  // API call, and error handling.
  3355  //
  3356  // This method is useful when you want to inject custom logic or configuration
  3357  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  3358  //
  3359  //
  3360  //    // Example sending a request using the GetWirelessGatewayTaskDefinitionRequest method.
  3361  //    req, resp := client.GetWirelessGatewayTaskDefinitionRequest(params)
  3362  //
  3363  //    err := req.Send()
  3364  //    if err == nil { // resp is now filled
  3365  //        fmt.Println(resp)
  3366  //    }
  3367  //
  3368  // See also, https://docs.aws.amazon.com/goto/WebAPI/iotwireless-2020-11-22/GetWirelessGatewayTaskDefinition
  3369  func (c *IoTWireless) GetWirelessGatewayTaskDefinitionRequest(input *GetWirelessGatewayTaskDefinitionInput) (req *request.Request, output *GetWirelessGatewayTaskDefinitionOutput) {
  3370  	op := &request.Operation{
  3371  		Name:       opGetWirelessGatewayTaskDefinition,
  3372  		HTTPMethod: "GET",
  3373  		HTTPPath:   "/wireless-gateway-task-definitions/{Id}",
  3374  	}
  3375  
  3376  	if input == nil {
  3377  		input = &GetWirelessGatewayTaskDefinitionInput{}
  3378  	}
  3379  
  3380  	output = &GetWirelessGatewayTaskDefinitionOutput{}
  3381  	req = c.newRequest(op, input, output)
  3382  	return
  3383  }
  3384  
  3385  // GetWirelessGatewayTaskDefinition API operation for AWS IoT Wireless.
  3386  //
  3387  // Gets information about a wireless gateway task definition.
  3388  //
  3389  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  3390  // with awserr.Error's Code and Message methods to get detailed information about
  3391  // the error.
  3392  //
  3393  // See the AWS API reference guide for AWS IoT Wireless's
  3394  // API operation GetWirelessGatewayTaskDefinition for usage and error information.
  3395  //
  3396  // Returned Error Types:
  3397  //   * ValidationException
  3398  //   The input did not meet the specified constraints.
  3399  //
  3400  //   * AccessDeniedException
  3401  //   User does not have permission to perform this action.
  3402  //
  3403  //   * ResourceNotFoundException
  3404  //   Resource does not exist.
  3405  //
  3406  //   * InternalServerException
  3407  //   An unexpected error occurred while processing a request.
  3408  //
  3409  //   * ThrottlingException
  3410  //   The request was denied because it exceeded the allowed API request rate.
  3411  //
  3412  // See also, https://docs.aws.amazon.com/goto/WebAPI/iotwireless-2020-11-22/GetWirelessGatewayTaskDefinition
  3413  func (c *IoTWireless) GetWirelessGatewayTaskDefinition(input *GetWirelessGatewayTaskDefinitionInput) (*GetWirelessGatewayTaskDefinitionOutput, error) {
  3414  	req, out := c.GetWirelessGatewayTaskDefinitionRequest(input)
  3415  	return out, req.Send()
  3416  }
  3417  
  3418  // GetWirelessGatewayTaskDefinitionWithContext is the same as GetWirelessGatewayTaskDefinition with the addition of
  3419  // the ability to pass a context and additional request options.
  3420  //
  3421  // See GetWirelessGatewayTaskDefinition for details on how to use this API operation.
  3422  //
  3423  // The context must be non-nil and will be used for request cancellation. If
  3424  // the context is nil a panic will occur. In the future the SDK may create
  3425  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  3426  // for more information on using Contexts.
  3427  func (c *IoTWireless) GetWirelessGatewayTaskDefinitionWithContext(ctx aws.Context, input *GetWirelessGatewayTaskDefinitionInput, opts ...request.Option) (*GetWirelessGatewayTaskDefinitionOutput, error) {
  3428  	req, out := c.GetWirelessGatewayTaskDefinitionRequest(input)
  3429  	req.SetContext(ctx)
  3430  	req.ApplyOptions(opts...)
  3431  	return out, req.Send()
  3432  }
  3433  
  3434  const opListDestinations = "ListDestinations"
  3435  
  3436  // ListDestinationsRequest generates a "aws/request.Request" representing the
  3437  // client's request for the ListDestinations operation. The "output" return
  3438  // value will be populated with the request's response once the request completes
  3439  // successfully.
  3440  //
  3441  // Use "Send" method on the returned Request to send the API call to the service.
  3442  // the "output" return value is not valid until after Send returns without error.
  3443  //
  3444  // See ListDestinations for more information on using the ListDestinations
  3445  // API call, and error handling.
  3446  //
  3447  // This method is useful when you want to inject custom logic or configuration
  3448  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  3449  //
  3450  //
  3451  //    // Example sending a request using the ListDestinationsRequest method.
  3452  //    req, resp := client.ListDestinationsRequest(params)
  3453  //
  3454  //    err := req.Send()
  3455  //    if err == nil { // resp is now filled
  3456  //        fmt.Println(resp)
  3457  //    }
  3458  //
  3459  // See also, https://docs.aws.amazon.com/goto/WebAPI/iotwireless-2020-11-22/ListDestinations
  3460  func (c *IoTWireless) ListDestinationsRequest(input *ListDestinationsInput) (req *request.Request, output *ListDestinationsOutput) {
  3461  	op := &request.Operation{
  3462  		Name:       opListDestinations,
  3463  		HTTPMethod: "GET",
  3464  		HTTPPath:   "/destinations",
  3465  		Paginator: &request.Paginator{
  3466  			InputTokens:     []string{"NextToken"},
  3467  			OutputTokens:    []string{"NextToken"},
  3468  			LimitToken:      "MaxResults",
  3469  			TruncationToken: "",
  3470  		},
  3471  	}
  3472  
  3473  	if input == nil {
  3474  		input = &ListDestinationsInput{}
  3475  	}
  3476  
  3477  	output = &ListDestinationsOutput{}
  3478  	req = c.newRequest(op, input, output)
  3479  	return
  3480  }
  3481  
  3482  // ListDestinations API operation for AWS IoT Wireless.
  3483  //
  3484  // Lists the destinations registered to your AWS account.
  3485  //
  3486  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  3487  // with awserr.Error's Code and Message methods to get detailed information about
  3488  // the error.
  3489  //
  3490  // See the AWS API reference guide for AWS IoT Wireless's
  3491  // API operation ListDestinations for usage and error information.
  3492  //
  3493  // Returned Error Types:
  3494  //   * ValidationException
  3495  //   The input did not meet the specified constraints.
  3496  //
  3497  //   * AccessDeniedException
  3498  //   User does not have permission to perform this action.
  3499  //
  3500  //   * InternalServerException
  3501  //   An unexpected error occurred while processing a request.
  3502  //
  3503  //   * ThrottlingException
  3504  //   The request was denied because it exceeded the allowed API request rate.
  3505  //
  3506  // See also, https://docs.aws.amazon.com/goto/WebAPI/iotwireless-2020-11-22/ListDestinations
  3507  func (c *IoTWireless) ListDestinations(input *ListDestinationsInput) (*ListDestinationsOutput, error) {
  3508  	req, out := c.ListDestinationsRequest(input)
  3509  	return out, req.Send()
  3510  }
  3511  
  3512  // ListDestinationsWithContext is the same as ListDestinations with the addition of
  3513  // the ability to pass a context and additional request options.
  3514  //
  3515  // See ListDestinations for details on how to use this API operation.
  3516  //
  3517  // The context must be non-nil and will be used for request cancellation. If
  3518  // the context is nil a panic will occur. In the future the SDK may create
  3519  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  3520  // for more information on using Contexts.
  3521  func (c *IoTWireless) ListDestinationsWithContext(ctx aws.Context, input *ListDestinationsInput, opts ...request.Option) (*ListDestinationsOutput, error) {
  3522  	req, out := c.ListDestinationsRequest(input)
  3523  	req.SetContext(ctx)
  3524  	req.ApplyOptions(opts...)
  3525  	return out, req.Send()
  3526  }
  3527  
  3528  // ListDestinationsPages iterates over the pages of a ListDestinations operation,
  3529  // calling the "fn" function with the response data for each page. To stop
  3530  // iterating, return false from the fn function.
  3531  //
  3532  // See ListDestinations method for more information on how to use this operation.
  3533  //
  3534  // Note: This operation can generate multiple requests to a service.
  3535  //
  3536  //    // Example iterating over at most 3 pages of a ListDestinations operation.
  3537  //    pageNum := 0
  3538  //    err := client.ListDestinationsPages(params,
  3539  //        func(page *iotwireless.ListDestinationsOutput, lastPage bool) bool {
  3540  //            pageNum++
  3541  //            fmt.Println(page)
  3542  //            return pageNum <= 3
  3543  //        })
  3544  //
  3545  func (c *IoTWireless) ListDestinationsPages(input *ListDestinationsInput, fn func(*ListDestinationsOutput, bool) bool) error {
  3546  	return c.ListDestinationsPagesWithContext(aws.BackgroundContext(), input, fn)
  3547  }
  3548  
  3549  // ListDestinationsPagesWithContext same as ListDestinationsPages except
  3550  // it takes a Context and allows setting request options on the pages.
  3551  //
  3552  // The context must be non-nil and will be used for request cancellation. If
  3553  // the context is nil a panic will occur. In the future the SDK may create
  3554  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  3555  // for more information on using Contexts.
  3556  func (c *IoTWireless) ListDestinationsPagesWithContext(ctx aws.Context, input *ListDestinationsInput, fn func(*ListDestinationsOutput, bool) bool, opts ...request.Option) error {
  3557  	p := request.Pagination{
  3558  		NewRequest: func() (*request.Request, error) {
  3559  			var inCpy *ListDestinationsInput
  3560  			if input != nil {
  3561  				tmp := *input
  3562  				inCpy = &tmp
  3563  			}
  3564  			req, _ := c.ListDestinationsRequest(inCpy)
  3565  			req.SetContext(ctx)
  3566  			req.ApplyOptions(opts...)
  3567  			return req, nil
  3568  		},
  3569  	}
  3570  
  3571  	for p.Next() {
  3572  		if !fn(p.Page().(*ListDestinationsOutput), !p.HasNextPage()) {
  3573  			break
  3574  		}
  3575  	}
  3576  
  3577  	return p.Err()
  3578  }
  3579  
  3580  const opListDeviceProfiles = "ListDeviceProfiles"
  3581  
  3582  // ListDeviceProfilesRequest generates a "aws/request.Request" representing the
  3583  // client's request for the ListDeviceProfiles operation. The "output" return
  3584  // value will be populated with the request's response once the request completes
  3585  // successfully.
  3586  //
  3587  // Use "Send" method on the returned Request to send the API call to the service.
  3588  // the "output" return value is not valid until after Send returns without error.
  3589  //
  3590  // See ListDeviceProfiles for more information on using the ListDeviceProfiles
  3591  // API call, and error handling.
  3592  //
  3593  // This method is useful when you want to inject custom logic or configuration
  3594  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  3595  //
  3596  //
  3597  //    // Example sending a request using the ListDeviceProfilesRequest method.
  3598  //    req, resp := client.ListDeviceProfilesRequest(params)
  3599  //
  3600  //    err := req.Send()
  3601  //    if err == nil { // resp is now filled
  3602  //        fmt.Println(resp)
  3603  //    }
  3604  //
  3605  // See also, https://docs.aws.amazon.com/goto/WebAPI/iotwireless-2020-11-22/ListDeviceProfiles
  3606  func (c *IoTWireless) ListDeviceProfilesRequest(input *ListDeviceProfilesInput) (req *request.Request, output *ListDeviceProfilesOutput) {
  3607  	op := &request.Operation{
  3608  		Name:       opListDeviceProfiles,
  3609  		HTTPMethod: "GET",
  3610  		HTTPPath:   "/device-profiles",
  3611  		Paginator: &request.Paginator{
  3612  			InputTokens:     []string{"NextToken"},
  3613  			OutputTokens:    []string{"NextToken"},
  3614  			LimitToken:      "MaxResults",
  3615  			TruncationToken: "",
  3616  		},
  3617  	}
  3618  
  3619  	if input == nil {
  3620  		input = &ListDeviceProfilesInput{}
  3621  	}
  3622  
  3623  	output = &ListDeviceProfilesOutput{}
  3624  	req = c.newRequest(op, input, output)
  3625  	return
  3626  }
  3627  
  3628  // ListDeviceProfiles API operation for AWS IoT Wireless.
  3629  //
  3630  // Lists the device profiles registered to your AWS account.
  3631  //
  3632  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  3633  // with awserr.Error's Code and Message methods to get detailed information about
  3634  // the error.
  3635  //
  3636  // See the AWS API reference guide for AWS IoT Wireless's
  3637  // API operation ListDeviceProfiles for usage and error information.
  3638  //
  3639  // Returned Error Types:
  3640  //   * ValidationException
  3641  //   The input did not meet the specified constraints.
  3642  //
  3643  //   * AccessDeniedException
  3644  //   User does not have permission to perform this action.
  3645  //
  3646  //   * InternalServerException
  3647  //   An unexpected error occurred while processing a request.
  3648  //
  3649  //   * ThrottlingException
  3650  //   The request was denied because it exceeded the allowed API request rate.
  3651  //
  3652  // See also, https://docs.aws.amazon.com/goto/WebAPI/iotwireless-2020-11-22/ListDeviceProfiles
  3653  func (c *IoTWireless) ListDeviceProfiles(input *ListDeviceProfilesInput) (*ListDeviceProfilesOutput, error) {
  3654  	req, out := c.ListDeviceProfilesRequest(input)
  3655  	return out, req.Send()
  3656  }
  3657  
  3658  // ListDeviceProfilesWithContext is the same as ListDeviceProfiles with the addition of
  3659  // the ability to pass a context and additional request options.
  3660  //
  3661  // See ListDeviceProfiles for details on how to use this API operation.
  3662  //
  3663  // The context must be non-nil and will be used for request cancellation. If
  3664  // the context is nil a panic will occur. In the future the SDK may create
  3665  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  3666  // for more information on using Contexts.
  3667  func (c *IoTWireless) ListDeviceProfilesWithContext(ctx aws.Context, input *ListDeviceProfilesInput, opts ...request.Option) (*ListDeviceProfilesOutput, error) {
  3668  	req, out := c.ListDeviceProfilesRequest(input)
  3669  	req.SetContext(ctx)
  3670  	req.ApplyOptions(opts...)
  3671  	return out, req.Send()
  3672  }
  3673  
  3674  // ListDeviceProfilesPages iterates over the pages of a ListDeviceProfiles operation,
  3675  // calling the "fn" function with the response data for each page. To stop
  3676  // iterating, return false from the fn function.
  3677  //
  3678  // See ListDeviceProfiles method for more information on how to use this operation.
  3679  //
  3680  // Note: This operation can generate multiple requests to a service.
  3681  //
  3682  //    // Example iterating over at most 3 pages of a ListDeviceProfiles operation.
  3683  //    pageNum := 0
  3684  //    err := client.ListDeviceProfilesPages(params,
  3685  //        func(page *iotwireless.ListDeviceProfilesOutput, lastPage bool) bool {
  3686  //            pageNum++
  3687  //            fmt.Println(page)
  3688  //            return pageNum <= 3
  3689  //        })
  3690  //
  3691  func (c *IoTWireless) ListDeviceProfilesPages(input *ListDeviceProfilesInput, fn func(*ListDeviceProfilesOutput, bool) bool) error {
  3692  	return c.ListDeviceProfilesPagesWithContext(aws.BackgroundContext(), input, fn)
  3693  }
  3694  
  3695  // ListDeviceProfilesPagesWithContext same as ListDeviceProfilesPages except
  3696  // it takes a Context and allows setting request options on the pages.
  3697  //
  3698  // The context must be non-nil and will be used for request cancellation. If
  3699  // the context is nil a panic will occur. In the future the SDK may create
  3700  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  3701  // for more information on using Contexts.
  3702  func (c *IoTWireless) ListDeviceProfilesPagesWithContext(ctx aws.Context, input *ListDeviceProfilesInput, fn func(*ListDeviceProfilesOutput, bool) bool, opts ...request.Option) error {
  3703  	p := request.Pagination{
  3704  		NewRequest: func() (*request.Request, error) {
  3705  			var inCpy *ListDeviceProfilesInput
  3706  			if input != nil {
  3707  				tmp := *input
  3708  				inCpy = &tmp
  3709  			}
  3710  			req, _ := c.ListDeviceProfilesRequest(inCpy)
  3711  			req.SetContext(ctx)
  3712  			req.ApplyOptions(opts...)
  3713  			return req, nil
  3714  		},
  3715  	}
  3716  
  3717  	for p.Next() {
  3718  		if !fn(p.Page().(*ListDeviceProfilesOutput), !p.HasNextPage()) {
  3719  			break
  3720  		}
  3721  	}
  3722  
  3723  	return p.Err()
  3724  }
  3725  
  3726  const opListPartnerAccounts = "ListPartnerAccounts"
  3727  
  3728  // ListPartnerAccountsRequest generates a "aws/request.Request" representing the
  3729  // client's request for the ListPartnerAccounts operation. The "output" return
  3730  // value will be populated with the request's response once the request completes
  3731  // successfully.
  3732  //
  3733  // Use "Send" method on the returned Request to send the API call to the service.
  3734  // the "output" return value is not valid until after Send returns without error.
  3735  //
  3736  // See ListPartnerAccounts for more information on using the ListPartnerAccounts
  3737  // API call, and error handling.
  3738  //
  3739  // This method is useful when you want to inject custom logic or configuration
  3740  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  3741  //
  3742  //
  3743  //    // Example sending a request using the ListPartnerAccountsRequest method.
  3744  //    req, resp := client.ListPartnerAccountsRequest(params)
  3745  //
  3746  //    err := req.Send()
  3747  //    if err == nil { // resp is now filled
  3748  //        fmt.Println(resp)
  3749  //    }
  3750  //
  3751  // See also, https://docs.aws.amazon.com/goto/WebAPI/iotwireless-2020-11-22/ListPartnerAccounts
  3752  func (c *IoTWireless) ListPartnerAccountsRequest(input *ListPartnerAccountsInput) (req *request.Request, output *ListPartnerAccountsOutput) {
  3753  	op := &request.Operation{
  3754  		Name:       opListPartnerAccounts,
  3755  		HTTPMethod: "GET",
  3756  		HTTPPath:   "/partner-accounts",
  3757  	}
  3758  
  3759  	if input == nil {
  3760  		input = &ListPartnerAccountsInput{}
  3761  	}
  3762  
  3763  	output = &ListPartnerAccountsOutput{}
  3764  	req = c.newRequest(op, input, output)
  3765  	return
  3766  }
  3767  
  3768  // ListPartnerAccounts API operation for AWS IoT Wireless.
  3769  //
  3770  // Lists the partner accounts associated with your AWS account.
  3771  //
  3772  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  3773  // with awserr.Error's Code and Message methods to get detailed information about
  3774  // the error.
  3775  //
  3776  // See the AWS API reference guide for AWS IoT Wireless's
  3777  // API operation ListPartnerAccounts for usage and error information.
  3778  //
  3779  // Returned Error Types:
  3780  //   * ValidationException
  3781  //   The input did not meet the specified constraints.
  3782  //
  3783  //   * ResourceNotFoundException
  3784  //   Resource does not exist.
  3785  //
  3786  //   * InternalServerException
  3787  //   An unexpected error occurred while processing a request.
  3788  //
  3789  //   * ThrottlingException
  3790  //   The request was denied because it exceeded the allowed API request rate.
  3791  //
  3792  // See also, https://docs.aws.amazon.com/goto/WebAPI/iotwireless-2020-11-22/ListPartnerAccounts
  3793  func (c *IoTWireless) ListPartnerAccounts(input *ListPartnerAccountsInput) (*ListPartnerAccountsOutput, error) {
  3794  	req, out := c.ListPartnerAccountsRequest(input)
  3795  	return out, req.Send()
  3796  }
  3797  
  3798  // ListPartnerAccountsWithContext is the same as ListPartnerAccounts with the addition of
  3799  // the ability to pass a context and additional request options.
  3800  //
  3801  // See ListPartnerAccounts for details on how to use this API operation.
  3802  //
  3803  // The context must be non-nil and will be used for request cancellation. If
  3804  // the context is nil a panic will occur. In the future the SDK may create
  3805  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  3806  // for more information on using Contexts.
  3807  func (c *IoTWireless) ListPartnerAccountsWithContext(ctx aws.Context, input *ListPartnerAccountsInput, opts ...request.Option) (*ListPartnerAccountsOutput, error) {
  3808  	req, out := c.ListPartnerAccountsRequest(input)
  3809  	req.SetContext(ctx)
  3810  	req.ApplyOptions(opts...)
  3811  	return out, req.Send()
  3812  }
  3813  
  3814  const opListServiceProfiles = "ListServiceProfiles"
  3815  
  3816  // ListServiceProfilesRequest generates a "aws/request.Request" representing the
  3817  // client's request for the ListServiceProfiles operation. The "output" return
  3818  // value will be populated with the request's response once the request completes
  3819  // successfully.
  3820  //
  3821  // Use "Send" method on the returned Request to send the API call to the service.
  3822  // the "output" return value is not valid until after Send returns without error.
  3823  //
  3824  // See ListServiceProfiles for more information on using the ListServiceProfiles
  3825  // API call, and error handling.
  3826  //
  3827  // This method is useful when you want to inject custom logic or configuration
  3828  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  3829  //
  3830  //
  3831  //    // Example sending a request using the ListServiceProfilesRequest method.
  3832  //    req, resp := client.ListServiceProfilesRequest(params)
  3833  //
  3834  //    err := req.Send()
  3835  //    if err == nil { // resp is now filled
  3836  //        fmt.Println(resp)
  3837  //    }
  3838  //
  3839  // See also, https://docs.aws.amazon.com/goto/WebAPI/iotwireless-2020-11-22/ListServiceProfiles
  3840  func (c *IoTWireless) ListServiceProfilesRequest(input *ListServiceProfilesInput) (req *request.Request, output *ListServiceProfilesOutput) {
  3841  	op := &request.Operation{
  3842  		Name:       opListServiceProfiles,
  3843  		HTTPMethod: "GET",
  3844  		HTTPPath:   "/service-profiles",
  3845  		Paginator: &request.Paginator{
  3846  			InputTokens:     []string{"NextToken"},
  3847  			OutputTokens:    []string{"NextToken"},
  3848  			LimitToken:      "MaxResults",
  3849  			TruncationToken: "",
  3850  		},
  3851  	}
  3852  
  3853  	if input == nil {
  3854  		input = &ListServiceProfilesInput{}
  3855  	}
  3856  
  3857  	output = &ListServiceProfilesOutput{}
  3858  	req = c.newRequest(op, input, output)
  3859  	return
  3860  }
  3861  
  3862  // ListServiceProfiles API operation for AWS IoT Wireless.
  3863  //
  3864  // Lists the service profiles registered to your AWS account.
  3865  //
  3866  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  3867  // with awserr.Error's Code and Message methods to get detailed information about
  3868  // the error.
  3869  //
  3870  // See the AWS API reference guide for AWS IoT Wireless's
  3871  // API operation ListServiceProfiles for usage and error information.
  3872  //
  3873  // Returned Error Types:
  3874  //   * ValidationException
  3875  //   The input did not meet the specified constraints.
  3876  //
  3877  //   * AccessDeniedException
  3878  //   User does not have permission to perform this action.
  3879  //
  3880  //   * InternalServerException
  3881  //   An unexpected error occurred while processing a request.
  3882  //
  3883  //   * ThrottlingException
  3884  //   The request was denied because it exceeded the allowed API request rate.
  3885  //
  3886  // See also, https://docs.aws.amazon.com/goto/WebAPI/iotwireless-2020-11-22/ListServiceProfiles
  3887  func (c *IoTWireless) ListServiceProfiles(input *ListServiceProfilesInput) (*ListServiceProfilesOutput, error) {
  3888  	req, out := c.ListServiceProfilesRequest(input)
  3889  	return out, req.Send()
  3890  }
  3891  
  3892  // ListServiceProfilesWithContext is the same as ListServiceProfiles with the addition of
  3893  // the ability to pass a context and additional request options.
  3894  //
  3895  // See ListServiceProfiles for details on how to use this API operation.
  3896  //
  3897  // The context must be non-nil and will be used for request cancellation. If
  3898  // the context is nil a panic will occur. In the future the SDK may create
  3899  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  3900  // for more information on using Contexts.
  3901  func (c *IoTWireless) ListServiceProfilesWithContext(ctx aws.Context, input *ListServiceProfilesInput, opts ...request.Option) (*ListServiceProfilesOutput, error) {
  3902  	req, out := c.ListServiceProfilesRequest(input)
  3903  	req.SetContext(ctx)
  3904  	req.ApplyOptions(opts...)
  3905  	return out, req.Send()
  3906  }
  3907  
  3908  // ListServiceProfilesPages iterates over the pages of a ListServiceProfiles operation,
  3909  // calling the "fn" function with the response data for each page. To stop
  3910  // iterating, return false from the fn function.
  3911  //
  3912  // See ListServiceProfiles method for more information on how to use this operation.
  3913  //
  3914  // Note: This operation can generate multiple requests to a service.
  3915  //
  3916  //    // Example iterating over at most 3 pages of a ListServiceProfiles operation.
  3917  //    pageNum := 0
  3918  //    err := client.ListServiceProfilesPages(params,
  3919  //        func(page *iotwireless.ListServiceProfilesOutput, lastPage bool) bool {
  3920  //            pageNum++
  3921  //            fmt.Println(page)
  3922  //            return pageNum <= 3
  3923  //        })
  3924  //
  3925  func (c *IoTWireless) ListServiceProfilesPages(input *ListServiceProfilesInput, fn func(*ListServiceProfilesOutput, bool) bool) error {
  3926  	return c.ListServiceProfilesPagesWithContext(aws.BackgroundContext(), input, fn)
  3927  }
  3928  
  3929  // ListServiceProfilesPagesWithContext same as ListServiceProfilesPages except
  3930  // it takes a Context and allows setting request options on the pages.
  3931  //
  3932  // The context must be non-nil and will be used for request cancellation. If
  3933  // the context is nil a panic will occur. In the future the SDK may create
  3934  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  3935  // for more information on using Contexts.
  3936  func (c *IoTWireless) ListServiceProfilesPagesWithContext(ctx aws.Context, input *ListServiceProfilesInput, fn func(*ListServiceProfilesOutput, bool) bool, opts ...request.Option) error {
  3937  	p := request.Pagination{
  3938  		NewRequest: func() (*request.Request, error) {
  3939  			var inCpy *ListServiceProfilesInput
  3940  			if input != nil {
  3941  				tmp := *input
  3942  				inCpy = &tmp
  3943  			}
  3944  			req, _ := c.ListServiceProfilesRequest(inCpy)
  3945  			req.SetContext(ctx)
  3946  			req.ApplyOptions(opts...)
  3947  			return req, nil
  3948  		},
  3949  	}
  3950  
  3951  	for p.Next() {
  3952  		if !fn(p.Page().(*ListServiceProfilesOutput), !p.HasNextPage()) {
  3953  			break
  3954  		}
  3955  	}
  3956  
  3957  	return p.Err()
  3958  }
  3959  
  3960  const opListTagsForResource = "ListTagsForResource"
  3961  
  3962  // ListTagsForResourceRequest generates a "aws/request.Request" representing the
  3963  // client's request for the ListTagsForResource operation. The "output" return
  3964  // value will be populated with the request's response once the request completes
  3965  // successfully.
  3966  //
  3967  // Use "Send" method on the returned Request to send the API call to the service.
  3968  // the "output" return value is not valid until after Send returns without error.
  3969  //
  3970  // See ListTagsForResource for more information on using the ListTagsForResource
  3971  // API call, and error handling.
  3972  //
  3973  // This method is useful when you want to inject custom logic or configuration
  3974  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  3975  //
  3976  //
  3977  //    // Example sending a request using the ListTagsForResourceRequest method.
  3978  //    req, resp := client.ListTagsForResourceRequest(params)
  3979  //
  3980  //    err := req.Send()
  3981  //    if err == nil { // resp is now filled
  3982  //        fmt.Println(resp)
  3983  //    }
  3984  //
  3985  // See also, https://docs.aws.amazon.com/goto/WebAPI/iotwireless-2020-11-22/ListTagsForResource
  3986  func (c *IoTWireless) ListTagsForResourceRequest(input *ListTagsForResourceInput) (req *request.Request, output *ListTagsForResourceOutput) {
  3987  	op := &request.Operation{
  3988  		Name:       opListTagsForResource,
  3989  		HTTPMethod: "GET",
  3990  		HTTPPath:   "/tags",
  3991  	}
  3992  
  3993  	if input == nil {
  3994  		input = &ListTagsForResourceInput{}
  3995  	}
  3996  
  3997  	output = &ListTagsForResourceOutput{}
  3998  	req = c.newRequest(op, input, output)
  3999  	return
  4000  }
  4001  
  4002  // ListTagsForResource API operation for AWS IoT Wireless.
  4003  //
  4004  // Lists the tags (metadata) you have assigned to the resource.
  4005  //
  4006  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  4007  // with awserr.Error's Code and Message methods to get detailed information about
  4008  // the error.
  4009  //
  4010  // See the AWS API reference guide for AWS IoT Wireless's
  4011  // API operation ListTagsForResource for usage and error information.
  4012  //
  4013  // Returned Error Types:
  4014  //   * ValidationException
  4015  //   The input did not meet the specified constraints.
  4016  //
  4017  //   * ResourceNotFoundException
  4018  //   Resource does not exist.
  4019  //
  4020  //   * ConflictException
  4021  //   Adding, updating, or deleting the resource can cause an inconsistent state.
  4022  //
  4023  //   * InternalServerException
  4024  //   An unexpected error occurred while processing a request.
  4025  //
  4026  //   * ThrottlingException
  4027  //   The request was denied because it exceeded the allowed API request rate.
  4028  //
  4029  // See also, https://docs.aws.amazon.com/goto/WebAPI/iotwireless-2020-11-22/ListTagsForResource
  4030  func (c *IoTWireless) ListTagsForResource(input *ListTagsForResourceInput) (*ListTagsForResourceOutput, error) {
  4031  	req, out := c.ListTagsForResourceRequest(input)
  4032  	return out, req.Send()
  4033  }
  4034  
  4035  // ListTagsForResourceWithContext is the same as ListTagsForResource with the addition of
  4036  // the ability to pass a context and additional request options.
  4037  //
  4038  // See ListTagsForResource for details on how to use this API operation.
  4039  //
  4040  // The context must be non-nil and will be used for request cancellation. If
  4041  // the context is nil a panic will occur. In the future the SDK may create
  4042  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  4043  // for more information on using Contexts.
  4044  func (c *IoTWireless) ListTagsForResourceWithContext(ctx aws.Context, input *ListTagsForResourceInput, opts ...request.Option) (*ListTagsForResourceOutput, error) {
  4045  	req, out := c.ListTagsForResourceRequest(input)
  4046  	req.SetContext(ctx)
  4047  	req.ApplyOptions(opts...)
  4048  	return out, req.Send()
  4049  }
  4050  
  4051  const opListWirelessDevices = "ListWirelessDevices"
  4052  
  4053  // ListWirelessDevicesRequest generates a "aws/request.Request" representing the
  4054  // client's request for the ListWirelessDevices operation. The "output" return
  4055  // value will be populated with the request's response once the request completes
  4056  // successfully.
  4057  //
  4058  // Use "Send" method on the returned Request to send the API call to the service.
  4059  // the "output" return value is not valid until after Send returns without error.
  4060  //
  4061  // See ListWirelessDevices for more information on using the ListWirelessDevices
  4062  // API call, and error handling.
  4063  //
  4064  // This method is useful when you want to inject custom logic or configuration
  4065  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  4066  //
  4067  //
  4068  //    // Example sending a request using the ListWirelessDevicesRequest method.
  4069  //    req, resp := client.ListWirelessDevicesRequest(params)
  4070  //
  4071  //    err := req.Send()
  4072  //    if err == nil { // resp is now filled
  4073  //        fmt.Println(resp)
  4074  //    }
  4075  //
  4076  // See also, https://docs.aws.amazon.com/goto/WebAPI/iotwireless-2020-11-22/ListWirelessDevices
  4077  func (c *IoTWireless) ListWirelessDevicesRequest(input *ListWirelessDevicesInput) (req *request.Request, output *ListWirelessDevicesOutput) {
  4078  	op := &request.Operation{
  4079  		Name:       opListWirelessDevices,
  4080  		HTTPMethod: "GET",
  4081  		HTTPPath:   "/wireless-devices",
  4082  		Paginator: &request.Paginator{
  4083  			InputTokens:     []string{"NextToken"},
  4084  			OutputTokens:    []string{"NextToken"},
  4085  			LimitToken:      "MaxResults",
  4086  			TruncationToken: "",
  4087  		},
  4088  	}
  4089  
  4090  	if input == nil {
  4091  		input = &ListWirelessDevicesInput{}
  4092  	}
  4093  
  4094  	output = &ListWirelessDevicesOutput{}
  4095  	req = c.newRequest(op, input, output)
  4096  	return
  4097  }
  4098  
  4099  // ListWirelessDevices API operation for AWS IoT Wireless.
  4100  //
  4101  // Lists the wireless devices registered to your AWS account.
  4102  //
  4103  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  4104  // with awserr.Error's Code and Message methods to get detailed information about
  4105  // the error.
  4106  //
  4107  // See the AWS API reference guide for AWS IoT Wireless's
  4108  // API operation ListWirelessDevices for usage and error information.
  4109  //
  4110  // Returned Error Types:
  4111  //   * ValidationException
  4112  //   The input did not meet the specified constraints.
  4113  //
  4114  //   * InternalServerException
  4115  //   An unexpected error occurred while processing a request.
  4116  //
  4117  //   * ThrottlingException
  4118  //   The request was denied because it exceeded the allowed API request rate.
  4119  //
  4120  //   * AccessDeniedException
  4121  //   User does not have permission to perform this action.
  4122  //
  4123  // See also, https://docs.aws.amazon.com/goto/WebAPI/iotwireless-2020-11-22/ListWirelessDevices
  4124  func (c *IoTWireless) ListWirelessDevices(input *ListWirelessDevicesInput) (*ListWirelessDevicesOutput, error) {
  4125  	req, out := c.ListWirelessDevicesRequest(input)
  4126  	return out, req.Send()
  4127  }
  4128  
  4129  // ListWirelessDevicesWithContext is the same as ListWirelessDevices with the addition of
  4130  // the ability to pass a context and additional request options.
  4131  //
  4132  // See ListWirelessDevices for details on how to use this API operation.
  4133  //
  4134  // The context must be non-nil and will be used for request cancellation. If
  4135  // the context is nil a panic will occur. In the future the SDK may create
  4136  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  4137  // for more information on using Contexts.
  4138  func (c *IoTWireless) ListWirelessDevicesWithContext(ctx aws.Context, input *ListWirelessDevicesInput, opts ...request.Option) (*ListWirelessDevicesOutput, error) {
  4139  	req, out := c.ListWirelessDevicesRequest(input)
  4140  	req.SetContext(ctx)
  4141  	req.ApplyOptions(opts...)
  4142  	return out, req.Send()
  4143  }
  4144  
  4145  // ListWirelessDevicesPages iterates over the pages of a ListWirelessDevices operation,
  4146  // calling the "fn" function with the response data for each page. To stop
  4147  // iterating, return false from the fn function.
  4148  //
  4149  // See ListWirelessDevices method for more information on how to use this operation.
  4150  //
  4151  // Note: This operation can generate multiple requests to a service.
  4152  //
  4153  //    // Example iterating over at most 3 pages of a ListWirelessDevices operation.
  4154  //    pageNum := 0
  4155  //    err := client.ListWirelessDevicesPages(params,
  4156  //        func(page *iotwireless.ListWirelessDevicesOutput, lastPage bool) bool {
  4157  //            pageNum++
  4158  //            fmt.Println(page)
  4159  //            return pageNum <= 3
  4160  //        })
  4161  //
  4162  func (c *IoTWireless) ListWirelessDevicesPages(input *ListWirelessDevicesInput, fn func(*ListWirelessDevicesOutput, bool) bool) error {
  4163  	return c.ListWirelessDevicesPagesWithContext(aws.BackgroundContext(), input, fn)
  4164  }
  4165  
  4166  // ListWirelessDevicesPagesWithContext same as ListWirelessDevicesPages except
  4167  // it takes a Context and allows setting request options on the pages.
  4168  //
  4169  // The context must be non-nil and will be used for request cancellation. If
  4170  // the context is nil a panic will occur. In the future the SDK may create
  4171  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  4172  // for more information on using Contexts.
  4173  func (c *IoTWireless) ListWirelessDevicesPagesWithContext(ctx aws.Context, input *ListWirelessDevicesInput, fn func(*ListWirelessDevicesOutput, bool) bool, opts ...request.Option) error {
  4174  	p := request.Pagination{
  4175  		NewRequest: func() (*request.Request, error) {
  4176  			var inCpy *ListWirelessDevicesInput
  4177  			if input != nil {
  4178  				tmp := *input
  4179  				inCpy = &tmp
  4180  			}
  4181  			req, _ := c.ListWirelessDevicesRequest(inCpy)
  4182  			req.SetContext(ctx)
  4183  			req.ApplyOptions(opts...)
  4184  			return req, nil
  4185  		},
  4186  	}
  4187  
  4188  	for p.Next() {
  4189  		if !fn(p.Page().(*ListWirelessDevicesOutput), !p.HasNextPage()) {
  4190  			break
  4191  		}
  4192  	}
  4193  
  4194  	return p.Err()
  4195  }
  4196  
  4197  const opListWirelessGatewayTaskDefinitions = "ListWirelessGatewayTaskDefinitions"
  4198  
  4199  // ListWirelessGatewayTaskDefinitionsRequest generates a "aws/request.Request" representing the
  4200  // client's request for the ListWirelessGatewayTaskDefinitions operation. The "output" return
  4201  // value will be populated with the request's response once the request completes
  4202  // successfully.
  4203  //
  4204  // Use "Send" method on the returned Request to send the API call to the service.
  4205  // the "output" return value is not valid until after Send returns without error.
  4206  //
  4207  // See ListWirelessGatewayTaskDefinitions for more information on using the ListWirelessGatewayTaskDefinitions
  4208  // API call, and error handling.
  4209  //
  4210  // This method is useful when you want to inject custom logic or configuration
  4211  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  4212  //
  4213  //
  4214  //    // Example sending a request using the ListWirelessGatewayTaskDefinitionsRequest method.
  4215  //    req, resp := client.ListWirelessGatewayTaskDefinitionsRequest(params)
  4216  //
  4217  //    err := req.Send()
  4218  //    if err == nil { // resp is now filled
  4219  //        fmt.Println(resp)
  4220  //    }
  4221  //
  4222  // See also, https://docs.aws.amazon.com/goto/WebAPI/iotwireless-2020-11-22/ListWirelessGatewayTaskDefinitions
  4223  func (c *IoTWireless) ListWirelessGatewayTaskDefinitionsRequest(input *ListWirelessGatewayTaskDefinitionsInput) (req *request.Request, output *ListWirelessGatewayTaskDefinitionsOutput) {
  4224  	op := &request.Operation{
  4225  		Name:       opListWirelessGatewayTaskDefinitions,
  4226  		HTTPMethod: "GET",
  4227  		HTTPPath:   "/wireless-gateway-task-definitions",
  4228  	}
  4229  
  4230  	if input == nil {
  4231  		input = &ListWirelessGatewayTaskDefinitionsInput{}
  4232  	}
  4233  
  4234  	output = &ListWirelessGatewayTaskDefinitionsOutput{}
  4235  	req = c.newRequest(op, input, output)
  4236  	return
  4237  }
  4238  
  4239  // ListWirelessGatewayTaskDefinitions API operation for AWS IoT Wireless.
  4240  //
  4241  // List the wireless gateway tasks definitions registered to your AWS account.
  4242  //
  4243  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  4244  // with awserr.Error's Code and Message methods to get detailed information about
  4245  // the error.
  4246  //
  4247  // See the AWS API reference guide for AWS IoT Wireless's
  4248  // API operation ListWirelessGatewayTaskDefinitions for usage and error information.
  4249  //
  4250  // Returned Error Types:
  4251  //   * ValidationException
  4252  //   The input did not meet the specified constraints.
  4253  //
  4254  //   * AccessDeniedException
  4255  //   User does not have permission to perform this action.
  4256  //
  4257  //   * InternalServerException
  4258  //   An unexpected error occurred while processing a request.
  4259  //
  4260  //   * ThrottlingException
  4261  //   The request was denied because it exceeded the allowed API request rate.
  4262  //
  4263  // See also, https://docs.aws.amazon.com/goto/WebAPI/iotwireless-2020-11-22/ListWirelessGatewayTaskDefinitions
  4264  func (c *IoTWireless) ListWirelessGatewayTaskDefinitions(input *ListWirelessGatewayTaskDefinitionsInput) (*ListWirelessGatewayTaskDefinitionsOutput, error) {
  4265  	req, out := c.ListWirelessGatewayTaskDefinitionsRequest(input)
  4266  	return out, req.Send()
  4267  }
  4268  
  4269  // ListWirelessGatewayTaskDefinitionsWithContext is the same as ListWirelessGatewayTaskDefinitions with the addition of
  4270  // the ability to pass a context and additional request options.
  4271  //
  4272  // See ListWirelessGatewayTaskDefinitions for details on how to use this API operation.
  4273  //
  4274  // The context must be non-nil and will be used for request cancellation. If
  4275  // the context is nil a panic will occur. In the future the SDK may create
  4276  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  4277  // for more information on using Contexts.
  4278  func (c *IoTWireless) ListWirelessGatewayTaskDefinitionsWithContext(ctx aws.Context, input *ListWirelessGatewayTaskDefinitionsInput, opts ...request.Option) (*ListWirelessGatewayTaskDefinitionsOutput, error) {
  4279  	req, out := c.ListWirelessGatewayTaskDefinitionsRequest(input)
  4280  	req.SetContext(ctx)
  4281  	req.ApplyOptions(opts...)
  4282  	return out, req.Send()
  4283  }
  4284  
  4285  const opListWirelessGateways = "ListWirelessGateways"
  4286  
  4287  // ListWirelessGatewaysRequest generates a "aws/request.Request" representing the
  4288  // client's request for the ListWirelessGateways operation. The "output" return
  4289  // value will be populated with the request's response once the request completes
  4290  // successfully.
  4291  //
  4292  // Use "Send" method on the returned Request to send the API call to the service.
  4293  // the "output" return value is not valid until after Send returns without error.
  4294  //
  4295  // See ListWirelessGateways for more information on using the ListWirelessGateways
  4296  // API call, and error handling.
  4297  //
  4298  // This method is useful when you want to inject custom logic or configuration
  4299  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  4300  //
  4301  //
  4302  //    // Example sending a request using the ListWirelessGatewaysRequest method.
  4303  //    req, resp := client.ListWirelessGatewaysRequest(params)
  4304  //
  4305  //    err := req.Send()
  4306  //    if err == nil { // resp is now filled
  4307  //        fmt.Println(resp)
  4308  //    }
  4309  //
  4310  // See also, https://docs.aws.amazon.com/goto/WebAPI/iotwireless-2020-11-22/ListWirelessGateways
  4311  func (c *IoTWireless) ListWirelessGatewaysRequest(input *ListWirelessGatewaysInput) (req *request.Request, output *ListWirelessGatewaysOutput) {
  4312  	op := &request.Operation{
  4313  		Name:       opListWirelessGateways,
  4314  		HTTPMethod: "GET",
  4315  		HTTPPath:   "/wireless-gateways",
  4316  		Paginator: &request.Paginator{
  4317  			InputTokens:     []string{"NextToken"},
  4318  			OutputTokens:    []string{"NextToken"},
  4319  			LimitToken:      "MaxResults",
  4320  			TruncationToken: "",
  4321  		},
  4322  	}
  4323  
  4324  	if input == nil {
  4325  		input = &ListWirelessGatewaysInput{}
  4326  	}
  4327  
  4328  	output = &ListWirelessGatewaysOutput{}
  4329  	req = c.newRequest(op, input, output)
  4330  	return
  4331  }
  4332  
  4333  // ListWirelessGateways API operation for AWS IoT Wireless.
  4334  //
  4335  // Lists the wireless gateways registered to your AWS account.
  4336  //
  4337  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  4338  // with awserr.Error's Code and Message methods to get detailed information about
  4339  // the error.
  4340  //
  4341  // See the AWS API reference guide for AWS IoT Wireless's
  4342  // API operation ListWirelessGateways for usage and error information.
  4343  //
  4344  // Returned Error Types:
  4345  //   * ValidationException
  4346  //   The input did not meet the specified constraints.
  4347  //
  4348  //   * InternalServerException
  4349  //   An unexpected error occurred while processing a request.
  4350  //
  4351  //   * ThrottlingException
  4352  //   The request was denied because it exceeded the allowed API request rate.
  4353  //
  4354  //   * AccessDeniedException
  4355  //   User does not have permission to perform this action.
  4356  //
  4357  // See also, https://docs.aws.amazon.com/goto/WebAPI/iotwireless-2020-11-22/ListWirelessGateways
  4358  func (c *IoTWireless) ListWirelessGateways(input *ListWirelessGatewaysInput) (*ListWirelessGatewaysOutput, error) {
  4359  	req, out := c.ListWirelessGatewaysRequest(input)
  4360  	return out, req.Send()
  4361  }
  4362  
  4363  // ListWirelessGatewaysWithContext is the same as ListWirelessGateways with the addition of
  4364  // the ability to pass a context and additional request options.
  4365  //
  4366  // See ListWirelessGateways for details on how to use this API operation.
  4367  //
  4368  // The context must be non-nil and will be used for request cancellation. If
  4369  // the context is nil a panic will occur. In the future the SDK may create
  4370  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  4371  // for more information on using Contexts.
  4372  func (c *IoTWireless) ListWirelessGatewaysWithContext(ctx aws.Context, input *ListWirelessGatewaysInput, opts ...request.Option) (*ListWirelessGatewaysOutput, error) {
  4373  	req, out := c.ListWirelessGatewaysRequest(input)
  4374  	req.SetContext(ctx)
  4375  	req.ApplyOptions(opts...)
  4376  	return out, req.Send()
  4377  }
  4378  
  4379  // ListWirelessGatewaysPages iterates over the pages of a ListWirelessGateways operation,
  4380  // calling the "fn" function with the response data for each page. To stop
  4381  // iterating, return false from the fn function.
  4382  //
  4383  // See ListWirelessGateways method for more information on how to use this operation.
  4384  //
  4385  // Note: This operation can generate multiple requests to a service.
  4386  //
  4387  //    // Example iterating over at most 3 pages of a ListWirelessGateways operation.
  4388  //    pageNum := 0
  4389  //    err := client.ListWirelessGatewaysPages(params,
  4390  //        func(page *iotwireless.ListWirelessGatewaysOutput, lastPage bool) bool {
  4391  //            pageNum++
  4392  //            fmt.Println(page)
  4393  //            return pageNum <= 3
  4394  //        })
  4395  //
  4396  func (c *IoTWireless) ListWirelessGatewaysPages(input *ListWirelessGatewaysInput, fn func(*ListWirelessGatewaysOutput, bool) bool) error {
  4397  	return c.ListWirelessGatewaysPagesWithContext(aws.BackgroundContext(), input, fn)
  4398  }
  4399  
  4400  // ListWirelessGatewaysPagesWithContext same as ListWirelessGatewaysPages except
  4401  // it takes a Context and allows setting request options on the pages.
  4402  //
  4403  // The context must be non-nil and will be used for request cancellation. If
  4404  // the context is nil a panic will occur. In the future the SDK may create
  4405  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  4406  // for more information on using Contexts.
  4407  func (c *IoTWireless) ListWirelessGatewaysPagesWithContext(ctx aws.Context, input *ListWirelessGatewaysInput, fn func(*ListWirelessGatewaysOutput, bool) bool, opts ...request.Option) error {
  4408  	p := request.Pagination{
  4409  		NewRequest: func() (*request.Request, error) {
  4410  			var inCpy *ListWirelessGatewaysInput
  4411  			if input != nil {
  4412  				tmp := *input
  4413  				inCpy = &tmp
  4414  			}
  4415  			req, _ := c.ListWirelessGatewaysRequest(inCpy)
  4416  			req.SetContext(ctx)
  4417  			req.ApplyOptions(opts...)
  4418  			return req, nil
  4419  		},
  4420  	}
  4421  
  4422  	for p.Next() {
  4423  		if !fn(p.Page().(*ListWirelessGatewaysOutput), !p.HasNextPage()) {
  4424  			break
  4425  		}
  4426  	}
  4427  
  4428  	return p.Err()
  4429  }
  4430  
  4431  const opPutResourceLogLevel = "PutResourceLogLevel"
  4432  
  4433  // PutResourceLogLevelRequest generates a "aws/request.Request" representing the
  4434  // client's request for the PutResourceLogLevel operation. The "output" return
  4435  // value will be populated with the request's response once the request completes
  4436  // successfully.
  4437  //
  4438  // Use "Send" method on the returned Request to send the API call to the service.
  4439  // the "output" return value is not valid until after Send returns without error.
  4440  //
  4441  // See PutResourceLogLevel for more information on using the PutResourceLogLevel
  4442  // API call, and error handling.
  4443  //
  4444  // This method is useful when you want to inject custom logic or configuration
  4445  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  4446  //
  4447  //
  4448  //    // Example sending a request using the PutResourceLogLevelRequest method.
  4449  //    req, resp := client.PutResourceLogLevelRequest(params)
  4450  //
  4451  //    err := req.Send()
  4452  //    if err == nil { // resp is now filled
  4453  //        fmt.Println(resp)
  4454  //    }
  4455  //
  4456  // See also, https://docs.aws.amazon.com/goto/WebAPI/iotwireless-2020-11-22/PutResourceLogLevel
  4457  func (c *IoTWireless) PutResourceLogLevelRequest(input *PutResourceLogLevelInput) (req *request.Request, output *PutResourceLogLevelOutput) {
  4458  	op := &request.Operation{
  4459  		Name:       opPutResourceLogLevel,
  4460  		HTTPMethod: "PUT",
  4461  		HTTPPath:   "/log-levels/{ResourceIdentifier}",
  4462  	}
  4463  
  4464  	if input == nil {
  4465  		input = &PutResourceLogLevelInput{}
  4466  	}
  4467  
  4468  	output = &PutResourceLogLevelOutput{}
  4469  	req = c.newRequest(op, input, output)
  4470  	req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
  4471  	return
  4472  }
  4473  
  4474  // PutResourceLogLevel API operation for AWS IoT Wireless.
  4475  //
  4476  // Sets the log-level override for a resource-ID and resource-type. This option
  4477  // can be specified for a wireless gateway or a wireless device. A limit of
  4478  // 200 log level override can be set per account.
  4479  //
  4480  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  4481  // with awserr.Error's Code and Message methods to get detailed information about
  4482  // the error.
  4483  //
  4484  // See the AWS API reference guide for AWS IoT Wireless's
  4485  // API operation PutResourceLogLevel for usage and error information.
  4486  //
  4487  // Returned Error Types:
  4488  //   * AccessDeniedException
  4489  //   User does not have permission to perform this action.
  4490  //
  4491  //   * InternalServerException
  4492  //   An unexpected error occurred while processing a request.
  4493  //
  4494  //   * ResourceNotFoundException
  4495  //   Resource does not exist.
  4496  //
  4497  //   * ThrottlingException
  4498  //   The request was denied because it exceeded the allowed API request rate.
  4499  //
  4500  //   * ValidationException
  4501  //   The input did not meet the specified constraints.
  4502  //
  4503  // See also, https://docs.aws.amazon.com/goto/WebAPI/iotwireless-2020-11-22/PutResourceLogLevel
  4504  func (c *IoTWireless) PutResourceLogLevel(input *PutResourceLogLevelInput) (*PutResourceLogLevelOutput, error) {
  4505  	req, out := c.PutResourceLogLevelRequest(input)
  4506  	return out, req.Send()
  4507  }
  4508  
  4509  // PutResourceLogLevelWithContext is the same as PutResourceLogLevel with the addition of
  4510  // the ability to pass a context and additional request options.
  4511  //
  4512  // See PutResourceLogLevel for details on how to use this API operation.
  4513  //
  4514  // The context must be non-nil and will be used for request cancellation. If
  4515  // the context is nil a panic will occur. In the future the SDK may create
  4516  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  4517  // for more information on using Contexts.
  4518  func (c *IoTWireless) PutResourceLogLevelWithContext(ctx aws.Context, input *PutResourceLogLevelInput, opts ...request.Option) (*PutResourceLogLevelOutput, error) {
  4519  	req, out := c.PutResourceLogLevelRequest(input)
  4520  	req.SetContext(ctx)
  4521  	req.ApplyOptions(opts...)
  4522  	return out, req.Send()
  4523  }
  4524  
  4525  const opResetAllResourceLogLevels = "ResetAllResourceLogLevels"
  4526  
  4527  // ResetAllResourceLogLevelsRequest generates a "aws/request.Request" representing the
  4528  // client's request for the ResetAllResourceLogLevels operation. The "output" return
  4529  // value will be populated with the request's response once the request completes
  4530  // successfully.
  4531  //
  4532  // Use "Send" method on the returned Request to send the API call to the service.
  4533  // the "output" return value is not valid until after Send returns without error.
  4534  //
  4535  // See ResetAllResourceLogLevels for more information on using the ResetAllResourceLogLevels
  4536  // API call, and error handling.
  4537  //
  4538  // This method is useful when you want to inject custom logic or configuration
  4539  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  4540  //
  4541  //
  4542  //    // Example sending a request using the ResetAllResourceLogLevelsRequest method.
  4543  //    req, resp := client.ResetAllResourceLogLevelsRequest(params)
  4544  //
  4545  //    err := req.Send()
  4546  //    if err == nil { // resp is now filled
  4547  //        fmt.Println(resp)
  4548  //    }
  4549  //
  4550  // See also, https://docs.aws.amazon.com/goto/WebAPI/iotwireless-2020-11-22/ResetAllResourceLogLevels
  4551  func (c *IoTWireless) ResetAllResourceLogLevelsRequest(input *ResetAllResourceLogLevelsInput) (req *request.Request, output *ResetAllResourceLogLevelsOutput) {
  4552  	op := &request.Operation{
  4553  		Name:       opResetAllResourceLogLevels,
  4554  		HTTPMethod: "DELETE",
  4555  		HTTPPath:   "/log-levels",
  4556  	}
  4557  
  4558  	if input == nil {
  4559  		input = &ResetAllResourceLogLevelsInput{}
  4560  	}
  4561  
  4562  	output = &ResetAllResourceLogLevelsOutput{}
  4563  	req = c.newRequest(op, input, output)
  4564  	req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
  4565  	return
  4566  }
  4567  
  4568  // ResetAllResourceLogLevels API operation for AWS IoT Wireless.
  4569  //
  4570  // Removes the log-level overrides for all resources; both wireless devices
  4571  // and wireless gateways.
  4572  //
  4573  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  4574  // with awserr.Error's Code and Message methods to get detailed information about
  4575  // the error.
  4576  //
  4577  // See the AWS API reference guide for AWS IoT Wireless's
  4578  // API operation ResetAllResourceLogLevels for usage and error information.
  4579  //
  4580  // Returned Error Types:
  4581  //   * AccessDeniedException
  4582  //   User does not have permission to perform this action.
  4583  //
  4584  //   * InternalServerException
  4585  //   An unexpected error occurred while processing a request.
  4586  //
  4587  //   * ResourceNotFoundException
  4588  //   Resource does not exist.
  4589  //
  4590  //   * ThrottlingException
  4591  //   The request was denied because it exceeded the allowed API request rate.
  4592  //
  4593  //   * ValidationException
  4594  //   The input did not meet the specified constraints.
  4595  //
  4596  // See also, https://docs.aws.amazon.com/goto/WebAPI/iotwireless-2020-11-22/ResetAllResourceLogLevels
  4597  func (c *IoTWireless) ResetAllResourceLogLevels(input *ResetAllResourceLogLevelsInput) (*ResetAllResourceLogLevelsOutput, error) {
  4598  	req, out := c.ResetAllResourceLogLevelsRequest(input)
  4599  	return out, req.Send()
  4600  }
  4601  
  4602  // ResetAllResourceLogLevelsWithContext is the same as ResetAllResourceLogLevels with the addition of
  4603  // the ability to pass a context and additional request options.
  4604  //
  4605  // See ResetAllResourceLogLevels for details on how to use this API operation.
  4606  //
  4607  // The context must be non-nil and will be used for request cancellation. If
  4608  // the context is nil a panic will occur. In the future the SDK may create
  4609  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  4610  // for more information on using Contexts.
  4611  func (c *IoTWireless) ResetAllResourceLogLevelsWithContext(ctx aws.Context, input *ResetAllResourceLogLevelsInput, opts ...request.Option) (*ResetAllResourceLogLevelsOutput, error) {
  4612  	req, out := c.ResetAllResourceLogLevelsRequest(input)
  4613  	req.SetContext(ctx)
  4614  	req.ApplyOptions(opts...)
  4615  	return out, req.Send()
  4616  }
  4617  
  4618  const opResetResourceLogLevel = "ResetResourceLogLevel"
  4619  
  4620  // ResetResourceLogLevelRequest generates a "aws/request.Request" representing the
  4621  // client's request for the ResetResourceLogLevel operation. The "output" return
  4622  // value will be populated with the request's response once the request completes
  4623  // successfully.
  4624  //
  4625  // Use "Send" method on the returned Request to send the API call to the service.
  4626  // the "output" return value is not valid until after Send returns without error.
  4627  //
  4628  // See ResetResourceLogLevel for more information on using the ResetResourceLogLevel
  4629  // API call, and error handling.
  4630  //
  4631  // This method is useful when you want to inject custom logic or configuration
  4632  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  4633  //
  4634  //
  4635  //    // Example sending a request using the ResetResourceLogLevelRequest method.
  4636  //    req, resp := client.ResetResourceLogLevelRequest(params)
  4637  //
  4638  //    err := req.Send()
  4639  //    if err == nil { // resp is now filled
  4640  //        fmt.Println(resp)
  4641  //    }
  4642  //
  4643  // See also, https://docs.aws.amazon.com/goto/WebAPI/iotwireless-2020-11-22/ResetResourceLogLevel
  4644  func (c *IoTWireless) ResetResourceLogLevelRequest(input *ResetResourceLogLevelInput) (req *request.Request, output *ResetResourceLogLevelOutput) {
  4645  	op := &request.Operation{
  4646  		Name:       opResetResourceLogLevel,
  4647  		HTTPMethod: "DELETE",
  4648  		HTTPPath:   "/log-levels/{ResourceIdentifier}",
  4649  	}
  4650  
  4651  	if input == nil {
  4652  		input = &ResetResourceLogLevelInput{}
  4653  	}
  4654  
  4655  	output = &ResetResourceLogLevelOutput{}
  4656  	req = c.newRequest(op, input, output)
  4657  	req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
  4658  	return
  4659  }
  4660  
  4661  // ResetResourceLogLevel API operation for AWS IoT Wireless.
  4662  //
  4663  // Removes the log-level override, if any, for a specific resource-ID and resource-type.
  4664  // It can be used for a wireless device or a wireless gateway.
  4665  //
  4666  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  4667  // with awserr.Error's Code and Message methods to get detailed information about
  4668  // the error.
  4669  //
  4670  // See the AWS API reference guide for AWS IoT Wireless's
  4671  // API operation ResetResourceLogLevel for usage and error information.
  4672  //
  4673  // Returned Error Types:
  4674  //   * AccessDeniedException
  4675  //   User does not have permission to perform this action.
  4676  //
  4677  //   * InternalServerException
  4678  //   An unexpected error occurred while processing a request.
  4679  //
  4680  //   * ResourceNotFoundException
  4681  //   Resource does not exist.
  4682  //
  4683  //   * ThrottlingException
  4684  //   The request was denied because it exceeded the allowed API request rate.
  4685  //
  4686  //   * ValidationException
  4687  //   The input did not meet the specified constraints.
  4688  //
  4689  // See also, https://docs.aws.amazon.com/goto/WebAPI/iotwireless-2020-11-22/ResetResourceLogLevel
  4690  func (c *IoTWireless) ResetResourceLogLevel(input *ResetResourceLogLevelInput) (*ResetResourceLogLevelOutput, error) {
  4691  	req, out := c.ResetResourceLogLevelRequest(input)
  4692  	return out, req.Send()
  4693  }
  4694  
  4695  // ResetResourceLogLevelWithContext is the same as ResetResourceLogLevel with the addition of
  4696  // the ability to pass a context and additional request options.
  4697  //
  4698  // See ResetResourceLogLevel for details on how to use this API operation.
  4699  //
  4700  // The context must be non-nil and will be used for request cancellation. If
  4701  // the context is nil a panic will occur. In the future the SDK may create
  4702  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  4703  // for more information on using Contexts.
  4704  func (c *IoTWireless) ResetResourceLogLevelWithContext(ctx aws.Context, input *ResetResourceLogLevelInput, opts ...request.Option) (*ResetResourceLogLevelOutput, error) {
  4705  	req, out := c.ResetResourceLogLevelRequest(input)
  4706  	req.SetContext(ctx)
  4707  	req.ApplyOptions(opts...)
  4708  	return out, req.Send()
  4709  }
  4710  
  4711  const opSendDataToWirelessDevice = "SendDataToWirelessDevice"
  4712  
  4713  // SendDataToWirelessDeviceRequest generates a "aws/request.Request" representing the
  4714  // client's request for the SendDataToWirelessDevice operation. The "output" return
  4715  // value will be populated with the request's response once the request completes
  4716  // successfully.
  4717  //
  4718  // Use "Send" method on the returned Request to send the API call to the service.
  4719  // the "output" return value is not valid until after Send returns without error.
  4720  //
  4721  // See SendDataToWirelessDevice for more information on using the SendDataToWirelessDevice
  4722  // API call, and error handling.
  4723  //
  4724  // This method is useful when you want to inject custom logic or configuration
  4725  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  4726  //
  4727  //
  4728  //    // Example sending a request using the SendDataToWirelessDeviceRequest method.
  4729  //    req, resp := client.SendDataToWirelessDeviceRequest(params)
  4730  //
  4731  //    err := req.Send()
  4732  //    if err == nil { // resp is now filled
  4733  //        fmt.Println(resp)
  4734  //    }
  4735  //
  4736  // See also, https://docs.aws.amazon.com/goto/WebAPI/iotwireless-2020-11-22/SendDataToWirelessDevice
  4737  func (c *IoTWireless) SendDataToWirelessDeviceRequest(input *SendDataToWirelessDeviceInput) (req *request.Request, output *SendDataToWirelessDeviceOutput) {
  4738  	op := &request.Operation{
  4739  		Name:       opSendDataToWirelessDevice,
  4740  		HTTPMethod: "POST",
  4741  		HTTPPath:   "/wireless-devices/{Id}/data",
  4742  	}
  4743  
  4744  	if input == nil {
  4745  		input = &SendDataToWirelessDeviceInput{}
  4746  	}
  4747  
  4748  	output = &SendDataToWirelessDeviceOutput{}
  4749  	req = c.newRequest(op, input, output)
  4750  	return
  4751  }
  4752  
  4753  // SendDataToWirelessDevice API operation for AWS IoT Wireless.
  4754  //
  4755  // Sends a decrypted application data frame to a device.
  4756  //
  4757  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  4758  // with awserr.Error's Code and Message methods to get detailed information about
  4759  // the error.
  4760  //
  4761  // See the AWS API reference guide for AWS IoT Wireless's
  4762  // API operation SendDataToWirelessDevice for usage and error information.
  4763  //
  4764  // Returned Error Types:
  4765  //   * ValidationException
  4766  //   The input did not meet the specified constraints.
  4767  //
  4768  //   * ResourceNotFoundException
  4769  //   Resource does not exist.
  4770  //
  4771  //   * ThrottlingException
  4772  //   The request was denied because it exceeded the allowed API request rate.
  4773  //
  4774  //   * InternalServerException
  4775  //   An unexpected error occurred while processing a request.
  4776  //
  4777  // See also, https://docs.aws.amazon.com/goto/WebAPI/iotwireless-2020-11-22/SendDataToWirelessDevice
  4778  func (c *IoTWireless) SendDataToWirelessDevice(input *SendDataToWirelessDeviceInput) (*SendDataToWirelessDeviceOutput, error) {
  4779  	req, out := c.SendDataToWirelessDeviceRequest(input)
  4780  	return out, req.Send()
  4781  }
  4782  
  4783  // SendDataToWirelessDeviceWithContext is the same as SendDataToWirelessDevice with the addition of
  4784  // the ability to pass a context and additional request options.
  4785  //
  4786  // See SendDataToWirelessDevice for details on how to use this API operation.
  4787  //
  4788  // The context must be non-nil and will be used for request cancellation. If
  4789  // the context is nil a panic will occur. In the future the SDK may create
  4790  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  4791  // for more information on using Contexts.
  4792  func (c *IoTWireless) SendDataToWirelessDeviceWithContext(ctx aws.Context, input *SendDataToWirelessDeviceInput, opts ...request.Option) (*SendDataToWirelessDeviceOutput, error) {
  4793  	req, out := c.SendDataToWirelessDeviceRequest(input)
  4794  	req.SetContext(ctx)
  4795  	req.ApplyOptions(opts...)
  4796  	return out, req.Send()
  4797  }
  4798  
  4799  const opTagResource = "TagResource"
  4800  
  4801  // TagResourceRequest generates a "aws/request.Request" representing the
  4802  // client's request for the TagResource operation. The "output" return
  4803  // value will be populated with the request's response once the request completes
  4804  // successfully.
  4805  //
  4806  // Use "Send" method on the returned Request to send the API call to the service.
  4807  // the "output" return value is not valid until after Send returns without error.
  4808  //
  4809  // See TagResource for more information on using the TagResource
  4810  // API call, and error handling.
  4811  //
  4812  // This method is useful when you want to inject custom logic or configuration
  4813  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  4814  //
  4815  //
  4816  //    // Example sending a request using the TagResourceRequest method.
  4817  //    req, resp := client.TagResourceRequest(params)
  4818  //
  4819  //    err := req.Send()
  4820  //    if err == nil { // resp is now filled
  4821  //        fmt.Println(resp)
  4822  //    }
  4823  //
  4824  // See also, https://docs.aws.amazon.com/goto/WebAPI/iotwireless-2020-11-22/TagResource
  4825  func (c *IoTWireless) TagResourceRequest(input *TagResourceInput) (req *request.Request, output *TagResourceOutput) {
  4826  	op := &request.Operation{
  4827  		Name:       opTagResource,
  4828  		HTTPMethod: "POST",
  4829  		HTTPPath:   "/tags",
  4830  	}
  4831  
  4832  	if input == nil {
  4833  		input = &TagResourceInput{}
  4834  	}
  4835  
  4836  	output = &TagResourceOutput{}
  4837  	req = c.newRequest(op, input, output)
  4838  	req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
  4839  	return
  4840  }
  4841  
  4842  // TagResource API operation for AWS IoT Wireless.
  4843  //
  4844  // Adds a tag to a resource.
  4845  //
  4846  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  4847  // with awserr.Error's Code and Message methods to get detailed information about
  4848  // the error.
  4849  //
  4850  // See the AWS API reference guide for AWS IoT Wireless's
  4851  // API operation TagResource for usage and error information.
  4852  //
  4853  // Returned Error Types:
  4854  //   * ValidationException
  4855  //   The input did not meet the specified constraints.
  4856  //
  4857  //   * ResourceNotFoundException
  4858  //   Resource does not exist.
  4859  //
  4860  //   * ConflictException
  4861  //   Adding, updating, or deleting the resource can cause an inconsistent state.
  4862  //
  4863  //   * InternalServerException
  4864  //   An unexpected error occurred while processing a request.
  4865  //
  4866  //   * ThrottlingException
  4867  //   The request was denied because it exceeded the allowed API request rate.
  4868  //
  4869  //   * TooManyTagsException
  4870  //   The request was denied because the resource can't have any more tags.
  4871  //
  4872  // See also, https://docs.aws.amazon.com/goto/WebAPI/iotwireless-2020-11-22/TagResource
  4873  func (c *IoTWireless) TagResource(input *TagResourceInput) (*TagResourceOutput, error) {
  4874  	req, out := c.TagResourceRequest(input)
  4875  	return out, req.Send()
  4876  }
  4877  
  4878  // TagResourceWithContext is the same as TagResource with the addition of
  4879  // the ability to pass a context and additional request options.
  4880  //
  4881  // See TagResource for details on how to use this API operation.
  4882  //
  4883  // The context must be non-nil and will be used for request cancellation. If
  4884  // the context is nil a panic will occur. In the future the SDK may create
  4885  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  4886  // for more information on using Contexts.
  4887  func (c *IoTWireless) TagResourceWithContext(ctx aws.Context, input *TagResourceInput, opts ...request.Option) (*TagResourceOutput, error) {
  4888  	req, out := c.TagResourceRequest(input)
  4889  	req.SetContext(ctx)
  4890  	req.ApplyOptions(opts...)
  4891  	return out, req.Send()
  4892  }
  4893  
  4894  const opTestWirelessDevice = "TestWirelessDevice"
  4895  
  4896  // TestWirelessDeviceRequest generates a "aws/request.Request" representing the
  4897  // client's request for the TestWirelessDevice operation. The "output" return
  4898  // value will be populated with the request's response once the request completes
  4899  // successfully.
  4900  //
  4901  // Use "Send" method on the returned Request to send the API call to the service.
  4902  // the "output" return value is not valid until after Send returns without error.
  4903  //
  4904  // See TestWirelessDevice for more information on using the TestWirelessDevice
  4905  // API call, and error handling.
  4906  //
  4907  // This method is useful when you want to inject custom logic or configuration
  4908  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  4909  //
  4910  //
  4911  //    // Example sending a request using the TestWirelessDeviceRequest method.
  4912  //    req, resp := client.TestWirelessDeviceRequest(params)
  4913  //
  4914  //    err := req.Send()
  4915  //    if err == nil { // resp is now filled
  4916  //        fmt.Println(resp)
  4917  //    }
  4918  //
  4919  // See also, https://docs.aws.amazon.com/goto/WebAPI/iotwireless-2020-11-22/TestWirelessDevice
  4920  func (c *IoTWireless) TestWirelessDeviceRequest(input *TestWirelessDeviceInput) (req *request.Request, output *TestWirelessDeviceOutput) {
  4921  	op := &request.Operation{
  4922  		Name:       opTestWirelessDevice,
  4923  		HTTPMethod: "POST",
  4924  		HTTPPath:   "/wireless-devices/{Id}/test",
  4925  	}
  4926  
  4927  	if input == nil {
  4928  		input = &TestWirelessDeviceInput{}
  4929  	}
  4930  
  4931  	output = &TestWirelessDeviceOutput{}
  4932  	req = c.newRequest(op, input, output)
  4933  	return
  4934  }
  4935  
  4936  // TestWirelessDevice API operation for AWS IoT Wireless.
  4937  //
  4938  // Simulates a provisioned device by sending an uplink data payload of Hello.
  4939  //
  4940  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  4941  // with awserr.Error's Code and Message methods to get detailed information about
  4942  // the error.
  4943  //
  4944  // See the AWS API reference guide for AWS IoT Wireless's
  4945  // API operation TestWirelessDevice for usage and error information.
  4946  //
  4947  // Returned Error Types:
  4948  //   * ValidationException
  4949  //   The input did not meet the specified constraints.
  4950  //
  4951  //   * ResourceNotFoundException
  4952  //   Resource does not exist.
  4953  //
  4954  //   * ThrottlingException
  4955  //   The request was denied because it exceeded the allowed API request rate.
  4956  //
  4957  //   * InternalServerException
  4958  //   An unexpected error occurred while processing a request.
  4959  //
  4960  // See also, https://docs.aws.amazon.com/goto/WebAPI/iotwireless-2020-11-22/TestWirelessDevice
  4961  func (c *IoTWireless) TestWirelessDevice(input *TestWirelessDeviceInput) (*TestWirelessDeviceOutput, error) {
  4962  	req, out := c.TestWirelessDeviceRequest(input)
  4963  	return out, req.Send()
  4964  }
  4965  
  4966  // TestWirelessDeviceWithContext is the same as TestWirelessDevice with the addition of
  4967  // the ability to pass a context and additional request options.
  4968  //
  4969  // See TestWirelessDevice for details on how to use this API operation.
  4970  //
  4971  // The context must be non-nil and will be used for request cancellation. If
  4972  // the context is nil a panic will occur. In the future the SDK may create
  4973  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  4974  // for more information on using Contexts.
  4975  func (c *IoTWireless) TestWirelessDeviceWithContext(ctx aws.Context, input *TestWirelessDeviceInput, opts ...request.Option) (*TestWirelessDeviceOutput, error) {
  4976  	req, out := c.TestWirelessDeviceRequest(input)
  4977  	req.SetContext(ctx)
  4978  	req.ApplyOptions(opts...)
  4979  	return out, req.Send()
  4980  }
  4981  
  4982  const opUntagResource = "UntagResource"
  4983  
  4984  // UntagResourceRequest generates a "aws/request.Request" representing the
  4985  // client's request for the UntagResource operation. The "output" return
  4986  // value will be populated with the request's response once the request completes
  4987  // successfully.
  4988  //
  4989  // Use "Send" method on the returned Request to send the API call to the service.
  4990  // the "output" return value is not valid until after Send returns without error.
  4991  //
  4992  // See UntagResource for more information on using the UntagResource
  4993  // API call, and error handling.
  4994  //
  4995  // This method is useful when you want to inject custom logic or configuration
  4996  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  4997  //
  4998  //
  4999  //    // Example sending a request using the UntagResourceRequest method.
  5000  //    req, resp := client.UntagResourceRequest(params)
  5001  //
  5002  //    err := req.Send()
  5003  //    if err == nil { // resp is now filled
  5004  //        fmt.Println(resp)
  5005  //    }
  5006  //
  5007  // See also, https://docs.aws.amazon.com/goto/WebAPI/iotwireless-2020-11-22/UntagResource
  5008  func (c *IoTWireless) UntagResourceRequest(input *UntagResourceInput) (req *request.Request, output *UntagResourceOutput) {
  5009  	op := &request.Operation{
  5010  		Name:       opUntagResource,
  5011  		HTTPMethod: "DELETE",
  5012  		HTTPPath:   "/tags",
  5013  	}
  5014  
  5015  	if input == nil {
  5016  		input = &UntagResourceInput{}
  5017  	}
  5018  
  5019  	output = &UntagResourceOutput{}
  5020  	req = c.newRequest(op, input, output)
  5021  	req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
  5022  	return
  5023  }
  5024  
  5025  // UntagResource API operation for AWS IoT Wireless.
  5026  //
  5027  // Removes one or more tags from a resource.
  5028  //
  5029  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  5030  // with awserr.Error's Code and Message methods to get detailed information about
  5031  // the error.
  5032  //
  5033  // See the AWS API reference guide for AWS IoT Wireless's
  5034  // API operation UntagResource for usage and error information.
  5035  //
  5036  // Returned Error Types:
  5037  //   * ValidationException
  5038  //   The input did not meet the specified constraints.
  5039  //
  5040  //   * ResourceNotFoundException
  5041  //   Resource does not exist.
  5042  //
  5043  //   * ConflictException
  5044  //   Adding, updating, or deleting the resource can cause an inconsistent state.
  5045  //
  5046  //   * InternalServerException
  5047  //   An unexpected error occurred while processing a request.
  5048  //
  5049  //   * ThrottlingException
  5050  //   The request was denied because it exceeded the allowed API request rate.
  5051  //
  5052  // See also, https://docs.aws.amazon.com/goto/WebAPI/iotwireless-2020-11-22/UntagResource
  5053  func (c *IoTWireless) UntagResource(input *UntagResourceInput) (*UntagResourceOutput, error) {
  5054  	req, out := c.UntagResourceRequest(input)
  5055  	return out, req.Send()
  5056  }
  5057  
  5058  // UntagResourceWithContext is the same as UntagResource with the addition of
  5059  // the ability to pass a context and additional request options.
  5060  //
  5061  // See UntagResource for details on how to use this API operation.
  5062  //
  5063  // The context must be non-nil and will be used for request cancellation. If
  5064  // the context is nil a panic will occur. In the future the SDK may create
  5065  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  5066  // for more information on using Contexts.
  5067  func (c *IoTWireless) UntagResourceWithContext(ctx aws.Context, input *UntagResourceInput, opts ...request.Option) (*UntagResourceOutput, error) {
  5068  	req, out := c.UntagResourceRequest(input)
  5069  	req.SetContext(ctx)
  5070  	req.ApplyOptions(opts...)
  5071  	return out, req.Send()
  5072  }
  5073  
  5074  const opUpdateDestination = "UpdateDestination"
  5075  
  5076  // UpdateDestinationRequest generates a "aws/request.Request" representing the
  5077  // client's request for the UpdateDestination operation. The "output" return
  5078  // value will be populated with the request's response once the request completes
  5079  // successfully.
  5080  //
  5081  // Use "Send" method on the returned Request to send the API call to the service.
  5082  // the "output" return value is not valid until after Send returns without error.
  5083  //
  5084  // See UpdateDestination for more information on using the UpdateDestination
  5085  // API call, and error handling.
  5086  //
  5087  // This method is useful when you want to inject custom logic or configuration
  5088  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  5089  //
  5090  //
  5091  //    // Example sending a request using the UpdateDestinationRequest method.
  5092  //    req, resp := client.UpdateDestinationRequest(params)
  5093  //
  5094  //    err := req.Send()
  5095  //    if err == nil { // resp is now filled
  5096  //        fmt.Println(resp)
  5097  //    }
  5098  //
  5099  // See also, https://docs.aws.amazon.com/goto/WebAPI/iotwireless-2020-11-22/UpdateDestination
  5100  func (c *IoTWireless) UpdateDestinationRequest(input *UpdateDestinationInput) (req *request.Request, output *UpdateDestinationOutput) {
  5101  	op := &request.Operation{
  5102  		Name:       opUpdateDestination,
  5103  		HTTPMethod: "PATCH",
  5104  		HTTPPath:   "/destinations/{Name}",
  5105  	}
  5106  
  5107  	if input == nil {
  5108  		input = &UpdateDestinationInput{}
  5109  	}
  5110  
  5111  	output = &UpdateDestinationOutput{}
  5112  	req = c.newRequest(op, input, output)
  5113  	req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
  5114  	return
  5115  }
  5116  
  5117  // UpdateDestination API operation for AWS IoT Wireless.
  5118  //
  5119  // Updates properties of a destination.
  5120  //
  5121  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  5122  // with awserr.Error's Code and Message methods to get detailed information about
  5123  // the error.
  5124  //
  5125  // See the AWS API reference guide for AWS IoT Wireless's
  5126  // API operation UpdateDestination for usage and error information.
  5127  //
  5128  // Returned Error Types:
  5129  //   * ValidationException
  5130  //   The input did not meet the specified constraints.
  5131  //
  5132  //   * ResourceNotFoundException
  5133  //   Resource does not exist.
  5134  //
  5135  //   * AccessDeniedException
  5136  //   User does not have permission to perform this action.
  5137  //
  5138  //   * InternalServerException
  5139  //   An unexpected error occurred while processing a request.
  5140  //
  5141  //   * ThrottlingException
  5142  //   The request was denied because it exceeded the allowed API request rate.
  5143  //
  5144  // See also, https://docs.aws.amazon.com/goto/WebAPI/iotwireless-2020-11-22/UpdateDestination
  5145  func (c *IoTWireless) UpdateDestination(input *UpdateDestinationInput) (*UpdateDestinationOutput, error) {
  5146  	req, out := c.UpdateDestinationRequest(input)
  5147  	return out, req.Send()
  5148  }
  5149  
  5150  // UpdateDestinationWithContext is the same as UpdateDestination with the addition of
  5151  // the ability to pass a context and additional request options.
  5152  //
  5153  // See UpdateDestination for details on how to use this API operation.
  5154  //
  5155  // The context must be non-nil and will be used for request cancellation. If
  5156  // the context is nil a panic will occur. In the future the SDK may create
  5157  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  5158  // for more information on using Contexts.
  5159  func (c *IoTWireless) UpdateDestinationWithContext(ctx aws.Context, input *UpdateDestinationInput, opts ...request.Option) (*UpdateDestinationOutput, error) {
  5160  	req, out := c.UpdateDestinationRequest(input)
  5161  	req.SetContext(ctx)
  5162  	req.ApplyOptions(opts...)
  5163  	return out, req.Send()
  5164  }
  5165  
  5166  const opUpdateLogLevelsByResourceTypes = "UpdateLogLevelsByResourceTypes"
  5167  
  5168  // UpdateLogLevelsByResourceTypesRequest generates a "aws/request.Request" representing the
  5169  // client's request for the UpdateLogLevelsByResourceTypes operation. The "output" return
  5170  // value will be populated with the request's response once the request completes
  5171  // successfully.
  5172  //
  5173  // Use "Send" method on the returned Request to send the API call to the service.
  5174  // the "output" return value is not valid until after Send returns without error.
  5175  //
  5176  // See UpdateLogLevelsByResourceTypes for more information on using the UpdateLogLevelsByResourceTypes
  5177  // API call, and error handling.
  5178  //
  5179  // This method is useful when you want to inject custom logic or configuration
  5180  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  5181  //
  5182  //
  5183  //    // Example sending a request using the UpdateLogLevelsByResourceTypesRequest method.
  5184  //    req, resp := client.UpdateLogLevelsByResourceTypesRequest(params)
  5185  //
  5186  //    err := req.Send()
  5187  //    if err == nil { // resp is now filled
  5188  //        fmt.Println(resp)
  5189  //    }
  5190  //
  5191  // See also, https://docs.aws.amazon.com/goto/WebAPI/iotwireless-2020-11-22/UpdateLogLevelsByResourceTypes
  5192  func (c *IoTWireless) UpdateLogLevelsByResourceTypesRequest(input *UpdateLogLevelsByResourceTypesInput) (req *request.Request, output *UpdateLogLevelsByResourceTypesOutput) {
  5193  	op := &request.Operation{
  5194  		Name:       opUpdateLogLevelsByResourceTypes,
  5195  		HTTPMethod: "POST",
  5196  		HTTPPath:   "/log-levels",
  5197  	}
  5198  
  5199  	if input == nil {
  5200  		input = &UpdateLogLevelsByResourceTypesInput{}
  5201  	}
  5202  
  5203  	output = &UpdateLogLevelsByResourceTypesOutput{}
  5204  	req = c.newRequest(op, input, output)
  5205  	req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
  5206  	return
  5207  }
  5208  
  5209  // UpdateLogLevelsByResourceTypes API operation for AWS IoT Wireless.
  5210  //
  5211  // Set default log level, or log levels by resource types. This can be for wireless
  5212  // device log options or wireless gateways log options and is used to control
  5213  // the log messages that'll be displayed in CloudWatch.
  5214  //
  5215  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  5216  // with awserr.Error's Code and Message methods to get detailed information about
  5217  // the error.
  5218  //
  5219  // See the AWS API reference guide for AWS IoT Wireless's
  5220  // API operation UpdateLogLevelsByResourceTypes for usage and error information.
  5221  //
  5222  // Returned Error Types:
  5223  //   * AccessDeniedException
  5224  //   User does not have permission to perform this action.
  5225  //
  5226  //   * ConflictException
  5227  //   Adding, updating, or deleting the resource can cause an inconsistent state.
  5228  //
  5229  //   * InternalServerException
  5230  //   An unexpected error occurred while processing a request.
  5231  //
  5232  //   * ResourceNotFoundException
  5233  //   Resource does not exist.
  5234  //
  5235  //   * ThrottlingException
  5236  //   The request was denied because it exceeded the allowed API request rate.
  5237  //
  5238  //   * ValidationException
  5239  //   The input did not meet the specified constraints.
  5240  //
  5241  // See also, https://docs.aws.amazon.com/goto/WebAPI/iotwireless-2020-11-22/UpdateLogLevelsByResourceTypes
  5242  func (c *IoTWireless) UpdateLogLevelsByResourceTypes(input *UpdateLogLevelsByResourceTypesInput) (*UpdateLogLevelsByResourceTypesOutput, error) {
  5243  	req, out := c.UpdateLogLevelsByResourceTypesRequest(input)
  5244  	return out, req.Send()
  5245  }
  5246  
  5247  // UpdateLogLevelsByResourceTypesWithContext is the same as UpdateLogLevelsByResourceTypes with the addition of
  5248  // the ability to pass a context and additional request options.
  5249  //
  5250  // See UpdateLogLevelsByResourceTypes for details on how to use this API operation.
  5251  //
  5252  // The context must be non-nil and will be used for request cancellation. If
  5253  // the context is nil a panic will occur. In the future the SDK may create
  5254  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  5255  // for more information on using Contexts.
  5256  func (c *IoTWireless) UpdateLogLevelsByResourceTypesWithContext(ctx aws.Context, input *UpdateLogLevelsByResourceTypesInput, opts ...request.Option) (*UpdateLogLevelsByResourceTypesOutput, error) {
  5257  	req, out := c.UpdateLogLevelsByResourceTypesRequest(input)
  5258  	req.SetContext(ctx)
  5259  	req.ApplyOptions(opts...)
  5260  	return out, req.Send()
  5261  }
  5262  
  5263  const opUpdatePartnerAccount = "UpdatePartnerAccount"
  5264  
  5265  // UpdatePartnerAccountRequest generates a "aws/request.Request" representing the
  5266  // client's request for the UpdatePartnerAccount operation. The "output" return
  5267  // value will be populated with the request's response once the request completes
  5268  // successfully.
  5269  //
  5270  // Use "Send" method on the returned Request to send the API call to the service.
  5271  // the "output" return value is not valid until after Send returns without error.
  5272  //
  5273  // See UpdatePartnerAccount for more information on using the UpdatePartnerAccount
  5274  // API call, and error handling.
  5275  //
  5276  // This method is useful when you want to inject custom logic or configuration
  5277  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  5278  //
  5279  //
  5280  //    // Example sending a request using the UpdatePartnerAccountRequest method.
  5281  //    req, resp := client.UpdatePartnerAccountRequest(params)
  5282  //
  5283  //    err := req.Send()
  5284  //    if err == nil { // resp is now filled
  5285  //        fmt.Println(resp)
  5286  //    }
  5287  //
  5288  // See also, https://docs.aws.amazon.com/goto/WebAPI/iotwireless-2020-11-22/UpdatePartnerAccount
  5289  func (c *IoTWireless) UpdatePartnerAccountRequest(input *UpdatePartnerAccountInput) (req *request.Request, output *UpdatePartnerAccountOutput) {
  5290  	op := &request.Operation{
  5291  		Name:       opUpdatePartnerAccount,
  5292  		HTTPMethod: "PATCH",
  5293  		HTTPPath:   "/partner-accounts/{PartnerAccountId}",
  5294  	}
  5295  
  5296  	if input == nil {
  5297  		input = &UpdatePartnerAccountInput{}
  5298  	}
  5299  
  5300  	output = &UpdatePartnerAccountOutput{}
  5301  	req = c.newRequest(op, input, output)
  5302  	req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
  5303  	return
  5304  }
  5305  
  5306  // UpdatePartnerAccount API operation for AWS IoT Wireless.
  5307  //
  5308  // Updates properties of a partner account.
  5309  //
  5310  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  5311  // with awserr.Error's Code and Message methods to get detailed information about
  5312  // the error.
  5313  //
  5314  // See the AWS API reference guide for AWS IoT Wireless's
  5315  // API operation UpdatePartnerAccount for usage and error information.
  5316  //
  5317  // Returned Error Types:
  5318  //   * ValidationException
  5319  //   The input did not meet the specified constraints.
  5320  //
  5321  //   * ResourceNotFoundException
  5322  //   Resource does not exist.
  5323  //
  5324  //   * InternalServerException
  5325  //   An unexpected error occurred while processing a request.
  5326  //
  5327  //   * ThrottlingException
  5328  //   The request was denied because it exceeded the allowed API request rate.
  5329  //
  5330  // See also, https://docs.aws.amazon.com/goto/WebAPI/iotwireless-2020-11-22/UpdatePartnerAccount
  5331  func (c *IoTWireless) UpdatePartnerAccount(input *UpdatePartnerAccountInput) (*UpdatePartnerAccountOutput, error) {
  5332  	req, out := c.UpdatePartnerAccountRequest(input)
  5333  	return out, req.Send()
  5334  }
  5335  
  5336  // UpdatePartnerAccountWithContext is the same as UpdatePartnerAccount with the addition of
  5337  // the ability to pass a context and additional request options.
  5338  //
  5339  // See UpdatePartnerAccount for details on how to use this API operation.
  5340  //
  5341  // The context must be non-nil and will be used for request cancellation. If
  5342  // the context is nil a panic will occur. In the future the SDK may create
  5343  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  5344  // for more information on using Contexts.
  5345  func (c *IoTWireless) UpdatePartnerAccountWithContext(ctx aws.Context, input *UpdatePartnerAccountInput, opts ...request.Option) (*UpdatePartnerAccountOutput, error) {
  5346  	req, out := c.UpdatePartnerAccountRequest(input)
  5347  	req.SetContext(ctx)
  5348  	req.ApplyOptions(opts...)
  5349  	return out, req.Send()
  5350  }
  5351  
  5352  const opUpdateWirelessDevice = "UpdateWirelessDevice"
  5353  
  5354  // UpdateWirelessDeviceRequest generates a "aws/request.Request" representing the
  5355  // client's request for the UpdateWirelessDevice operation. The "output" return
  5356  // value will be populated with the request's response once the request completes
  5357  // successfully.
  5358  //
  5359  // Use "Send" method on the returned Request to send the API call to the service.
  5360  // the "output" return value is not valid until after Send returns without error.
  5361  //
  5362  // See UpdateWirelessDevice for more information on using the UpdateWirelessDevice
  5363  // API call, and error handling.
  5364  //
  5365  // This method is useful when you want to inject custom logic or configuration
  5366  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  5367  //
  5368  //
  5369  //    // Example sending a request using the UpdateWirelessDeviceRequest method.
  5370  //    req, resp := client.UpdateWirelessDeviceRequest(params)
  5371  //
  5372  //    err := req.Send()
  5373  //    if err == nil { // resp is now filled
  5374  //        fmt.Println(resp)
  5375  //    }
  5376  //
  5377  // See also, https://docs.aws.amazon.com/goto/WebAPI/iotwireless-2020-11-22/UpdateWirelessDevice
  5378  func (c *IoTWireless) UpdateWirelessDeviceRequest(input *UpdateWirelessDeviceInput) (req *request.Request, output *UpdateWirelessDeviceOutput) {
  5379  	op := &request.Operation{
  5380  		Name:       opUpdateWirelessDevice,
  5381  		HTTPMethod: "PATCH",
  5382  		HTTPPath:   "/wireless-devices/{Id}",
  5383  	}
  5384  
  5385  	if input == nil {
  5386  		input = &UpdateWirelessDeviceInput{}
  5387  	}
  5388  
  5389  	output = &UpdateWirelessDeviceOutput{}
  5390  	req = c.newRequest(op, input, output)
  5391  	req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
  5392  	return
  5393  }
  5394  
  5395  // UpdateWirelessDevice API operation for AWS IoT Wireless.
  5396  //
  5397  // Updates properties of a wireless device.
  5398  //
  5399  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  5400  // with awserr.Error's Code and Message methods to get detailed information about
  5401  // the error.
  5402  //
  5403  // See the AWS API reference guide for AWS IoT Wireless's
  5404  // API operation UpdateWirelessDevice for usage and error information.
  5405  //
  5406  // Returned Error Types:
  5407  //   * ValidationException
  5408  //   The input did not meet the specified constraints.
  5409  //
  5410  //   * ResourceNotFoundException
  5411  //   Resource does not exist.
  5412  //
  5413  //   * AccessDeniedException
  5414  //   User does not have permission to perform this action.
  5415  //
  5416  //   * InternalServerException
  5417  //   An unexpected error occurred while processing a request.
  5418  //
  5419  //   * ThrottlingException
  5420  //   The request was denied because it exceeded the allowed API request rate.
  5421  //
  5422  // See also, https://docs.aws.amazon.com/goto/WebAPI/iotwireless-2020-11-22/UpdateWirelessDevice
  5423  func (c *IoTWireless) UpdateWirelessDevice(input *UpdateWirelessDeviceInput) (*UpdateWirelessDeviceOutput, error) {
  5424  	req, out := c.UpdateWirelessDeviceRequest(input)
  5425  	return out, req.Send()
  5426  }
  5427  
  5428  // UpdateWirelessDeviceWithContext is the same as UpdateWirelessDevice with the addition of
  5429  // the ability to pass a context and additional request options.
  5430  //
  5431  // See UpdateWirelessDevice for details on how to use this API operation.
  5432  //
  5433  // The context must be non-nil and will be used for request cancellation. If
  5434  // the context is nil a panic will occur. In the future the SDK may create
  5435  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  5436  // for more information on using Contexts.
  5437  func (c *IoTWireless) UpdateWirelessDeviceWithContext(ctx aws.Context, input *UpdateWirelessDeviceInput, opts ...request.Option) (*UpdateWirelessDeviceOutput, error) {
  5438  	req, out := c.UpdateWirelessDeviceRequest(input)
  5439  	req.SetContext(ctx)
  5440  	req.ApplyOptions(opts...)
  5441  	return out, req.Send()
  5442  }
  5443  
  5444  const opUpdateWirelessGateway = "UpdateWirelessGateway"
  5445  
  5446  // UpdateWirelessGatewayRequest generates a "aws/request.Request" representing the
  5447  // client's request for the UpdateWirelessGateway operation. The "output" return
  5448  // value will be populated with the request's response once the request completes
  5449  // successfully.
  5450  //
  5451  // Use "Send" method on the returned Request to send the API call to the service.
  5452  // the "output" return value is not valid until after Send returns without error.
  5453  //
  5454  // See UpdateWirelessGateway for more information on using the UpdateWirelessGateway
  5455  // API call, and error handling.
  5456  //
  5457  // This method is useful when you want to inject custom logic or configuration
  5458  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  5459  //
  5460  //
  5461  //    // Example sending a request using the UpdateWirelessGatewayRequest method.
  5462  //    req, resp := client.UpdateWirelessGatewayRequest(params)
  5463  //
  5464  //    err := req.Send()
  5465  //    if err == nil { // resp is now filled
  5466  //        fmt.Println(resp)
  5467  //    }
  5468  //
  5469  // See also, https://docs.aws.amazon.com/goto/WebAPI/iotwireless-2020-11-22/UpdateWirelessGateway
  5470  func (c *IoTWireless) UpdateWirelessGatewayRequest(input *UpdateWirelessGatewayInput) (req *request.Request, output *UpdateWirelessGatewayOutput) {
  5471  	op := &request.Operation{
  5472  		Name:       opUpdateWirelessGateway,
  5473  		HTTPMethod: "PATCH",
  5474  		HTTPPath:   "/wireless-gateways/{Id}",
  5475  	}
  5476  
  5477  	if input == nil {
  5478  		input = &UpdateWirelessGatewayInput{}
  5479  	}
  5480  
  5481  	output = &UpdateWirelessGatewayOutput{}
  5482  	req = c.newRequest(op, input, output)
  5483  	req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
  5484  	return
  5485  }
  5486  
  5487  // UpdateWirelessGateway API operation for AWS IoT Wireless.
  5488  //
  5489  // Updates properties of a wireless gateway.
  5490  //
  5491  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  5492  // with awserr.Error's Code and Message methods to get detailed information about
  5493  // the error.
  5494  //
  5495  // See the AWS API reference guide for AWS IoT Wireless's
  5496  // API operation UpdateWirelessGateway for usage and error information.
  5497  //
  5498  // Returned Error Types:
  5499  //   * ValidationException
  5500  //   The input did not meet the specified constraints.
  5501  //
  5502  //   * ResourceNotFoundException
  5503  //   Resource does not exist.
  5504  //
  5505  //   * AccessDeniedException
  5506  //   User does not have permission to perform this action.
  5507  //
  5508  //   * InternalServerException
  5509  //   An unexpected error occurred while processing a request.
  5510  //
  5511  //   * ThrottlingException
  5512  //   The request was denied because it exceeded the allowed API request rate.
  5513  //
  5514  // See also, https://docs.aws.amazon.com/goto/WebAPI/iotwireless-2020-11-22/UpdateWirelessGateway
  5515  func (c *IoTWireless) UpdateWirelessGateway(input *UpdateWirelessGatewayInput) (*UpdateWirelessGatewayOutput, error) {
  5516  	req, out := c.UpdateWirelessGatewayRequest(input)
  5517  	return out, req.Send()
  5518  }
  5519  
  5520  // UpdateWirelessGatewayWithContext is the same as UpdateWirelessGateway with the addition of
  5521  // the ability to pass a context and additional request options.
  5522  //
  5523  // See UpdateWirelessGateway for details on how to use this API operation.
  5524  //
  5525  // The context must be non-nil and will be used for request cancellation. If
  5526  // the context is nil a panic will occur. In the future the SDK may create
  5527  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  5528  // for more information on using Contexts.
  5529  func (c *IoTWireless) UpdateWirelessGatewayWithContext(ctx aws.Context, input *UpdateWirelessGatewayInput, opts ...request.Option) (*UpdateWirelessGatewayOutput, error) {
  5530  	req, out := c.UpdateWirelessGatewayRequest(input)
  5531  	req.SetContext(ctx)
  5532  	req.ApplyOptions(opts...)
  5533  	return out, req.Send()
  5534  }
  5535  
  5536  // ABP device object for LoRaWAN specification v1.0.x
  5537  type AbpV10X struct {
  5538  	_ struct{} `type:"structure"`
  5539  
  5540  	// The DevAddr value.
  5541  	DevAddr *string `type:"string"`
  5542  
  5543  	// Session keys for ABP v1.0.x
  5544  	SessionKeys *SessionKeysAbpV10X `type:"structure"`
  5545  }
  5546  
  5547  // String returns the string representation.
  5548  //
  5549  // API parameter values that are decorated as "sensitive" in the API will not
  5550  // be included in the string output. The member name will be present, but the
  5551  // value will be replaced with "sensitive".
  5552  func (s AbpV10X) String() string {
  5553  	return awsutil.Prettify(s)
  5554  }
  5555  
  5556  // GoString returns the string representation.
  5557  //
  5558  // API parameter values that are decorated as "sensitive" in the API will not
  5559  // be included in the string output. The member name will be present, but the
  5560  // value will be replaced with "sensitive".
  5561  func (s AbpV10X) GoString() string {
  5562  	return s.String()
  5563  }
  5564  
  5565  // SetDevAddr sets the DevAddr field's value.
  5566  func (s *AbpV10X) SetDevAddr(v string) *AbpV10X {
  5567  	s.DevAddr = &v
  5568  	return s
  5569  }
  5570  
  5571  // SetSessionKeys sets the SessionKeys field's value.
  5572  func (s *AbpV10X) SetSessionKeys(v *SessionKeysAbpV10X) *AbpV10X {
  5573  	s.SessionKeys = v
  5574  	return s
  5575  }
  5576  
  5577  // ABP device object for LoRaWAN specification v1.1
  5578  type AbpV11 struct {
  5579  	_ struct{} `type:"structure"`
  5580  
  5581  	// The DevAddr value.
  5582  	DevAddr *string `type:"string"`
  5583  
  5584  	// Session keys for ABP v1.1
  5585  	SessionKeys *SessionKeysAbpV11 `type:"structure"`
  5586  }
  5587  
  5588  // String returns the string representation.
  5589  //
  5590  // API parameter values that are decorated as "sensitive" in the API will not
  5591  // be included in the string output. The member name will be present, but the
  5592  // value will be replaced with "sensitive".
  5593  func (s AbpV11) String() string {
  5594  	return awsutil.Prettify(s)
  5595  }
  5596  
  5597  // GoString returns the string representation.
  5598  //
  5599  // API parameter values that are decorated as "sensitive" in the API will not
  5600  // be included in the string output. The member name will be present, but the
  5601  // value will be replaced with "sensitive".
  5602  func (s AbpV11) GoString() string {
  5603  	return s.String()
  5604  }
  5605  
  5606  // SetDevAddr sets the DevAddr field's value.
  5607  func (s *AbpV11) SetDevAddr(v string) *AbpV11 {
  5608  	s.DevAddr = &v
  5609  	return s
  5610  }
  5611  
  5612  // SetSessionKeys sets the SessionKeys field's value.
  5613  func (s *AbpV11) SetSessionKeys(v *SessionKeysAbpV11) *AbpV11 {
  5614  	s.SessionKeys = v
  5615  	return s
  5616  }
  5617  
  5618  // User does not have permission to perform this action.
  5619  type AccessDeniedException struct {
  5620  	_            struct{}                  `type:"structure"`
  5621  	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
  5622  
  5623  	Message_ *string `locationName:"Message" type:"string"`
  5624  }
  5625  
  5626  // String returns the string representation.
  5627  //
  5628  // API parameter values that are decorated as "sensitive" in the API will not
  5629  // be included in the string output. The member name will be present, but the
  5630  // value will be replaced with "sensitive".
  5631  func (s AccessDeniedException) String() string {
  5632  	return awsutil.Prettify(s)
  5633  }
  5634  
  5635  // GoString returns the string representation.
  5636  //
  5637  // API parameter values that are decorated as "sensitive" in the API will not
  5638  // be included in the string output. The member name will be present, but the
  5639  // value will be replaced with "sensitive".
  5640  func (s AccessDeniedException) GoString() string {
  5641  	return s.String()
  5642  }
  5643  
  5644  func newErrorAccessDeniedException(v protocol.ResponseMetadata) error {
  5645  	return &AccessDeniedException{
  5646  		RespMetadata: v,
  5647  	}
  5648  }
  5649  
  5650  // Code returns the exception type name.
  5651  func (s *AccessDeniedException) Code() string {
  5652  	return "AccessDeniedException"
  5653  }
  5654  
  5655  // Message returns the exception's message.
  5656  func (s *AccessDeniedException) Message() string {
  5657  	if s.Message_ != nil {
  5658  		return *s.Message_
  5659  	}
  5660  	return ""
  5661  }
  5662  
  5663  // OrigErr always returns nil, satisfies awserr.Error interface.
  5664  func (s *AccessDeniedException) OrigErr() error {
  5665  	return nil
  5666  }
  5667  
  5668  func (s *AccessDeniedException) Error() string {
  5669  	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
  5670  }
  5671  
  5672  // Status code returns the HTTP status code for the request's response error.
  5673  func (s *AccessDeniedException) StatusCode() int {
  5674  	return s.RespMetadata.StatusCode
  5675  }
  5676  
  5677  // RequestID returns the service's response RequestID for request.
  5678  func (s *AccessDeniedException) RequestID() string {
  5679  	return s.RespMetadata.RequestID
  5680  }
  5681  
  5682  type AssociateAwsAccountWithPartnerAccountInput struct {
  5683  	_ struct{} `type:"structure"`
  5684  
  5685  	// Each resource must have a unique client request token. If you try to create
  5686  	// a new resource with the same token as a resource that already exists, an
  5687  	// exception occurs. If you omit this value, AWS SDKs will automatically generate
  5688  	// a unique client request.
  5689  	ClientRequestToken *string `min:"1" type:"string" idempotencyToken:"true"`
  5690  
  5691  	// The Sidewalk account credentials.
  5692  	//
  5693  	// Sidewalk is a required field
  5694  	Sidewalk *SidewalkAccountInfo `type:"structure" required:"true"`
  5695  
  5696  	// The tags to attach to the specified resource. Tags are metadata that you
  5697  	// can use to manage a resource.
  5698  	Tags []*Tag `type:"list"`
  5699  }
  5700  
  5701  // String returns the string representation.
  5702  //
  5703  // API parameter values that are decorated as "sensitive" in the API will not
  5704  // be included in the string output. The member name will be present, but the
  5705  // value will be replaced with "sensitive".
  5706  func (s AssociateAwsAccountWithPartnerAccountInput) String() string {
  5707  	return awsutil.Prettify(s)
  5708  }
  5709  
  5710  // GoString returns the string representation.
  5711  //
  5712  // API parameter values that are decorated as "sensitive" in the API will not
  5713  // be included in the string output. The member name will be present, but the
  5714  // value will be replaced with "sensitive".
  5715  func (s AssociateAwsAccountWithPartnerAccountInput) GoString() string {
  5716  	return s.String()
  5717  }
  5718  
  5719  // Validate inspects the fields of the type to determine if they are valid.
  5720  func (s *AssociateAwsAccountWithPartnerAccountInput) Validate() error {
  5721  	invalidParams := request.ErrInvalidParams{Context: "AssociateAwsAccountWithPartnerAccountInput"}
  5722  	if s.ClientRequestToken != nil && len(*s.ClientRequestToken) < 1 {
  5723  		invalidParams.Add(request.NewErrParamMinLen("ClientRequestToken", 1))
  5724  	}
  5725  	if s.Sidewalk == nil {
  5726  		invalidParams.Add(request.NewErrParamRequired("Sidewalk"))
  5727  	}
  5728  	if s.Sidewalk != nil {
  5729  		if err := s.Sidewalk.Validate(); err != nil {
  5730  			invalidParams.AddNested("Sidewalk", err.(request.ErrInvalidParams))
  5731  		}
  5732  	}
  5733  	if s.Tags != nil {
  5734  		for i, v := range s.Tags {
  5735  			if v == nil {
  5736  				continue
  5737  			}
  5738  			if err := v.Validate(); err != nil {
  5739  				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Tags", i), err.(request.ErrInvalidParams))
  5740  			}
  5741  		}
  5742  	}
  5743  
  5744  	if invalidParams.Len() > 0 {
  5745  		return invalidParams
  5746  	}
  5747  	return nil
  5748  }
  5749  
  5750  // SetClientRequestToken sets the ClientRequestToken field's value.
  5751  func (s *AssociateAwsAccountWithPartnerAccountInput) SetClientRequestToken(v string) *AssociateAwsAccountWithPartnerAccountInput {
  5752  	s.ClientRequestToken = &v
  5753  	return s
  5754  }
  5755  
  5756  // SetSidewalk sets the Sidewalk field's value.
  5757  func (s *AssociateAwsAccountWithPartnerAccountInput) SetSidewalk(v *SidewalkAccountInfo) *AssociateAwsAccountWithPartnerAccountInput {
  5758  	s.Sidewalk = v
  5759  	return s
  5760  }
  5761  
  5762  // SetTags sets the Tags field's value.
  5763  func (s *AssociateAwsAccountWithPartnerAccountInput) SetTags(v []*Tag) *AssociateAwsAccountWithPartnerAccountInput {
  5764  	s.Tags = v
  5765  	return s
  5766  }
  5767  
  5768  type AssociateAwsAccountWithPartnerAccountOutput struct {
  5769  	_ struct{} `type:"structure"`
  5770  
  5771  	// The Amazon Resource Name of the resource.
  5772  	Arn *string `type:"string"`
  5773  
  5774  	// The Sidewalk account credentials.
  5775  	Sidewalk *SidewalkAccountInfo `type:"structure"`
  5776  }
  5777  
  5778  // String returns the string representation.
  5779  //
  5780  // API parameter values that are decorated as "sensitive" in the API will not
  5781  // be included in the string output. The member name will be present, but the
  5782  // value will be replaced with "sensitive".
  5783  func (s AssociateAwsAccountWithPartnerAccountOutput) String() string {
  5784  	return awsutil.Prettify(s)
  5785  }
  5786  
  5787  // GoString returns the string representation.
  5788  //
  5789  // API parameter values that are decorated as "sensitive" in the API will not
  5790  // be included in the string output. The member name will be present, but the
  5791  // value will be replaced with "sensitive".
  5792  func (s AssociateAwsAccountWithPartnerAccountOutput) GoString() string {
  5793  	return s.String()
  5794  }
  5795  
  5796  // SetArn sets the Arn field's value.
  5797  func (s *AssociateAwsAccountWithPartnerAccountOutput) SetArn(v string) *AssociateAwsAccountWithPartnerAccountOutput {
  5798  	s.Arn = &v
  5799  	return s
  5800  }
  5801  
  5802  // SetSidewalk sets the Sidewalk field's value.
  5803  func (s *AssociateAwsAccountWithPartnerAccountOutput) SetSidewalk(v *SidewalkAccountInfo) *AssociateAwsAccountWithPartnerAccountOutput {
  5804  	s.Sidewalk = v
  5805  	return s
  5806  }
  5807  
  5808  type AssociateWirelessDeviceWithThingInput struct {
  5809  	_ struct{} `type:"structure"`
  5810  
  5811  	// The ID of the resource to update.
  5812  	//
  5813  	// Id is a required field
  5814  	Id *string `location:"uri" locationName:"Id" type:"string" required:"true"`
  5815  
  5816  	// The ARN of the thing to associate with the wireless device.
  5817  	//
  5818  	// ThingArn is a required field
  5819  	ThingArn *string `type:"string" required:"true"`
  5820  }
  5821  
  5822  // String returns the string representation.
  5823  //
  5824  // API parameter values that are decorated as "sensitive" in the API will not
  5825  // be included in the string output. The member name will be present, but the
  5826  // value will be replaced with "sensitive".
  5827  func (s AssociateWirelessDeviceWithThingInput) String() string {
  5828  	return awsutil.Prettify(s)
  5829  }
  5830  
  5831  // GoString returns the string representation.
  5832  //
  5833  // API parameter values that are decorated as "sensitive" in the API will not
  5834  // be included in the string output. The member name will be present, but the
  5835  // value will be replaced with "sensitive".
  5836  func (s AssociateWirelessDeviceWithThingInput) GoString() string {
  5837  	return s.String()
  5838  }
  5839  
  5840  // Validate inspects the fields of the type to determine if they are valid.
  5841  func (s *AssociateWirelessDeviceWithThingInput) Validate() error {
  5842  	invalidParams := request.ErrInvalidParams{Context: "AssociateWirelessDeviceWithThingInput"}
  5843  	if s.Id == nil {
  5844  		invalidParams.Add(request.NewErrParamRequired("Id"))
  5845  	}
  5846  	if s.Id != nil && len(*s.Id) < 1 {
  5847  		invalidParams.Add(request.NewErrParamMinLen("Id", 1))
  5848  	}
  5849  	if s.ThingArn == nil {
  5850  		invalidParams.Add(request.NewErrParamRequired("ThingArn"))
  5851  	}
  5852  
  5853  	if invalidParams.Len() > 0 {
  5854  		return invalidParams
  5855  	}
  5856  	return nil
  5857  }
  5858  
  5859  // SetId sets the Id field's value.
  5860  func (s *AssociateWirelessDeviceWithThingInput) SetId(v string) *AssociateWirelessDeviceWithThingInput {
  5861  	s.Id = &v
  5862  	return s
  5863  }
  5864  
  5865  // SetThingArn sets the ThingArn field's value.
  5866  func (s *AssociateWirelessDeviceWithThingInput) SetThingArn(v string) *AssociateWirelessDeviceWithThingInput {
  5867  	s.ThingArn = &v
  5868  	return s
  5869  }
  5870  
  5871  type AssociateWirelessDeviceWithThingOutput struct {
  5872  	_ struct{} `type:"structure" nopayload:"true"`
  5873  }
  5874  
  5875  // String returns the string representation.
  5876  //
  5877  // API parameter values that are decorated as "sensitive" in the API will not
  5878  // be included in the string output. The member name will be present, but the
  5879  // value will be replaced with "sensitive".
  5880  func (s AssociateWirelessDeviceWithThingOutput) String() string {
  5881  	return awsutil.Prettify(s)
  5882  }
  5883  
  5884  // GoString returns the string representation.
  5885  //
  5886  // API parameter values that are decorated as "sensitive" in the API will not
  5887  // be included in the string output. The member name will be present, but the
  5888  // value will be replaced with "sensitive".
  5889  func (s AssociateWirelessDeviceWithThingOutput) GoString() string {
  5890  	return s.String()
  5891  }
  5892  
  5893  type AssociateWirelessGatewayWithCertificateInput struct {
  5894  	_ struct{} `type:"structure"`
  5895  
  5896  	// The ID of the resource to update.
  5897  	//
  5898  	// Id is a required field
  5899  	Id *string `location:"uri" locationName:"Id" type:"string" required:"true"`
  5900  
  5901  	// The ID of the certificate to associate with the wireless gateway.
  5902  	//
  5903  	// IotCertificateId is a required field
  5904  	IotCertificateId *string `min:"1" type:"string" required:"true"`
  5905  }
  5906  
  5907  // String returns the string representation.
  5908  //
  5909  // API parameter values that are decorated as "sensitive" in the API will not
  5910  // be included in the string output. The member name will be present, but the
  5911  // value will be replaced with "sensitive".
  5912  func (s AssociateWirelessGatewayWithCertificateInput) String() string {
  5913  	return awsutil.Prettify(s)
  5914  }
  5915  
  5916  // GoString returns the string representation.
  5917  //
  5918  // API parameter values that are decorated as "sensitive" in the API will not
  5919  // be included in the string output. The member name will be present, but the
  5920  // value will be replaced with "sensitive".
  5921  func (s AssociateWirelessGatewayWithCertificateInput) GoString() string {
  5922  	return s.String()
  5923  }
  5924  
  5925  // Validate inspects the fields of the type to determine if they are valid.
  5926  func (s *AssociateWirelessGatewayWithCertificateInput) Validate() error {
  5927  	invalidParams := request.ErrInvalidParams{Context: "AssociateWirelessGatewayWithCertificateInput"}
  5928  	if s.Id == nil {
  5929  		invalidParams.Add(request.NewErrParamRequired("Id"))
  5930  	}
  5931  	if s.Id != nil && len(*s.Id) < 1 {
  5932  		invalidParams.Add(request.NewErrParamMinLen("Id", 1))
  5933  	}
  5934  	if s.IotCertificateId == nil {
  5935  		invalidParams.Add(request.NewErrParamRequired("IotCertificateId"))
  5936  	}
  5937  	if s.IotCertificateId != nil && len(*s.IotCertificateId) < 1 {
  5938  		invalidParams.Add(request.NewErrParamMinLen("IotCertificateId", 1))
  5939  	}
  5940  
  5941  	if invalidParams.Len() > 0 {
  5942  		return invalidParams
  5943  	}
  5944  	return nil
  5945  }
  5946  
  5947  // SetId sets the Id field's value.
  5948  func (s *AssociateWirelessGatewayWithCertificateInput) SetId(v string) *AssociateWirelessGatewayWithCertificateInput {
  5949  	s.Id = &v
  5950  	return s
  5951  }
  5952  
  5953  // SetIotCertificateId sets the IotCertificateId field's value.
  5954  func (s *AssociateWirelessGatewayWithCertificateInput) SetIotCertificateId(v string) *AssociateWirelessGatewayWithCertificateInput {
  5955  	s.IotCertificateId = &v
  5956  	return s
  5957  }
  5958  
  5959  type AssociateWirelessGatewayWithCertificateOutput struct {
  5960  	_ struct{} `type:"structure"`
  5961  
  5962  	// The ID of the certificate associated with the wireless gateway.
  5963  	IotCertificateId *string `min:"1" type:"string"`
  5964  }
  5965  
  5966  // String returns the string representation.
  5967  //
  5968  // API parameter values that are decorated as "sensitive" in the API will not
  5969  // be included in the string output. The member name will be present, but the
  5970  // value will be replaced with "sensitive".
  5971  func (s AssociateWirelessGatewayWithCertificateOutput) String() string {
  5972  	return awsutil.Prettify(s)
  5973  }
  5974  
  5975  // GoString returns the string representation.
  5976  //
  5977  // API parameter values that are decorated as "sensitive" in the API will not
  5978  // be included in the string output. The member name will be present, but the
  5979  // value will be replaced with "sensitive".
  5980  func (s AssociateWirelessGatewayWithCertificateOutput) GoString() string {
  5981  	return s.String()
  5982  }
  5983  
  5984  // SetIotCertificateId sets the IotCertificateId field's value.
  5985  func (s *AssociateWirelessGatewayWithCertificateOutput) SetIotCertificateId(v string) *AssociateWirelessGatewayWithCertificateOutput {
  5986  	s.IotCertificateId = &v
  5987  	return s
  5988  }
  5989  
  5990  type AssociateWirelessGatewayWithThingInput struct {
  5991  	_ struct{} `type:"structure"`
  5992  
  5993  	// The ID of the resource to update.
  5994  	//
  5995  	// Id is a required field
  5996  	Id *string `location:"uri" locationName:"Id" type:"string" required:"true"`
  5997  
  5998  	// The ARN of the thing to associate with the wireless gateway.
  5999  	//
  6000  	// ThingArn is a required field
  6001  	ThingArn *string `type:"string" required:"true"`
  6002  }
  6003  
  6004  // String returns the string representation.
  6005  //
  6006  // API parameter values that are decorated as "sensitive" in the API will not
  6007  // be included in the string output. The member name will be present, but the
  6008  // value will be replaced with "sensitive".
  6009  func (s AssociateWirelessGatewayWithThingInput) String() string {
  6010  	return awsutil.Prettify(s)
  6011  }
  6012  
  6013  // GoString returns the string representation.
  6014  //
  6015  // API parameter values that are decorated as "sensitive" in the API will not
  6016  // be included in the string output. The member name will be present, but the
  6017  // value will be replaced with "sensitive".
  6018  func (s AssociateWirelessGatewayWithThingInput) GoString() string {
  6019  	return s.String()
  6020  }
  6021  
  6022  // Validate inspects the fields of the type to determine if they are valid.
  6023  func (s *AssociateWirelessGatewayWithThingInput) Validate() error {
  6024  	invalidParams := request.ErrInvalidParams{Context: "AssociateWirelessGatewayWithThingInput"}
  6025  	if s.Id == nil {
  6026  		invalidParams.Add(request.NewErrParamRequired("Id"))
  6027  	}
  6028  	if s.Id != nil && len(*s.Id) < 1 {
  6029  		invalidParams.Add(request.NewErrParamMinLen("Id", 1))
  6030  	}
  6031  	if s.ThingArn == nil {
  6032  		invalidParams.Add(request.NewErrParamRequired("ThingArn"))
  6033  	}
  6034  
  6035  	if invalidParams.Len() > 0 {
  6036  		return invalidParams
  6037  	}
  6038  	return nil
  6039  }
  6040  
  6041  // SetId sets the Id field's value.
  6042  func (s *AssociateWirelessGatewayWithThingInput) SetId(v string) *AssociateWirelessGatewayWithThingInput {
  6043  	s.Id = &v
  6044  	return s
  6045  }
  6046  
  6047  // SetThingArn sets the ThingArn field's value.
  6048  func (s *AssociateWirelessGatewayWithThingInput) SetThingArn(v string) *AssociateWirelessGatewayWithThingInput {
  6049  	s.ThingArn = &v
  6050  	return s
  6051  }
  6052  
  6053  type AssociateWirelessGatewayWithThingOutput struct {
  6054  	_ struct{} `type:"structure" nopayload:"true"`
  6055  }
  6056  
  6057  // String returns the string representation.
  6058  //
  6059  // API parameter values that are decorated as "sensitive" in the API will not
  6060  // be included in the string output. The member name will be present, but the
  6061  // value will be replaced with "sensitive".
  6062  func (s AssociateWirelessGatewayWithThingOutput) String() string {
  6063  	return awsutil.Prettify(s)
  6064  }
  6065  
  6066  // GoString returns the string representation.
  6067  //
  6068  // API parameter values that are decorated as "sensitive" in the API will not
  6069  // be included in the string output. The member name will be present, but the
  6070  // value will be replaced with "sensitive".
  6071  func (s AssociateWirelessGatewayWithThingOutput) GoString() string {
  6072  	return s.String()
  6073  }
  6074  
  6075  // List of sidewalk certificates.
  6076  type CertificateList struct {
  6077  	_ struct{} `type:"structure"`
  6078  
  6079  	// The certificate chain algorithm provided by sidewalk.
  6080  	//
  6081  	// SigningAlg is a required field
  6082  	SigningAlg *string `type:"string" required:"true" enum:"SigningAlg"`
  6083  
  6084  	// The value of the chosen sidewalk certificate.
  6085  	//
  6086  	// Value is a required field
  6087  	Value *string `type:"string" required:"true"`
  6088  }
  6089  
  6090  // String returns the string representation.
  6091  //
  6092  // API parameter values that are decorated as "sensitive" in the API will not
  6093  // be included in the string output. The member name will be present, but the
  6094  // value will be replaced with "sensitive".
  6095  func (s CertificateList) String() string {
  6096  	return awsutil.Prettify(s)
  6097  }
  6098  
  6099  // GoString returns the string representation.
  6100  //
  6101  // API parameter values that are decorated as "sensitive" in the API will not
  6102  // be included in the string output. The member name will be present, but the
  6103  // value will be replaced with "sensitive".
  6104  func (s CertificateList) GoString() string {
  6105  	return s.String()
  6106  }
  6107  
  6108  // SetSigningAlg sets the SigningAlg field's value.
  6109  func (s *CertificateList) SetSigningAlg(v string) *CertificateList {
  6110  	s.SigningAlg = &v
  6111  	return s
  6112  }
  6113  
  6114  // SetValue sets the Value field's value.
  6115  func (s *CertificateList) SetValue(v string) *CertificateList {
  6116  	s.Value = &v
  6117  	return s
  6118  }
  6119  
  6120  // Adding, updating, or deleting the resource can cause an inconsistent state.
  6121  type ConflictException struct {
  6122  	_            struct{}                  `type:"structure"`
  6123  	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
  6124  
  6125  	Message_ *string `locationName:"Message" type:"string"`
  6126  
  6127  	// Id of the resource in the conflicting operation.
  6128  	ResourceId *string `type:"string"`
  6129  
  6130  	// Type of the resource in the conflicting operation.
  6131  	ResourceType *string `type:"string"`
  6132  }
  6133  
  6134  // String returns the string representation.
  6135  //
  6136  // API parameter values that are decorated as "sensitive" in the API will not
  6137  // be included in the string output. The member name will be present, but the
  6138  // value will be replaced with "sensitive".
  6139  func (s ConflictException) String() string {
  6140  	return awsutil.Prettify(s)
  6141  }
  6142  
  6143  // GoString returns the string representation.
  6144  //
  6145  // API parameter values that are decorated as "sensitive" in the API will not
  6146  // be included in the string output. The member name will be present, but the
  6147  // value will be replaced with "sensitive".
  6148  func (s ConflictException) GoString() string {
  6149  	return s.String()
  6150  }
  6151  
  6152  func newErrorConflictException(v protocol.ResponseMetadata) error {
  6153  	return &ConflictException{
  6154  		RespMetadata: v,
  6155  	}
  6156  }
  6157  
  6158  // Code returns the exception type name.
  6159  func (s *ConflictException) Code() string {
  6160  	return "ConflictException"
  6161  }
  6162  
  6163  // Message returns the exception's message.
  6164  func (s *ConflictException) Message() string {
  6165  	if s.Message_ != nil {
  6166  		return *s.Message_
  6167  	}
  6168  	return ""
  6169  }
  6170  
  6171  // OrigErr always returns nil, satisfies awserr.Error interface.
  6172  func (s *ConflictException) OrigErr() error {
  6173  	return nil
  6174  }
  6175  
  6176  func (s *ConflictException) Error() string {
  6177  	return fmt.Sprintf("%s: %s\n%s", s.Code(), s.Message(), s.String())
  6178  }
  6179  
  6180  // Status code returns the HTTP status code for the request's response error.
  6181  func (s *ConflictException) StatusCode() int {
  6182  	return s.RespMetadata.StatusCode
  6183  }
  6184  
  6185  // RequestID returns the service's response RequestID for request.
  6186  func (s *ConflictException) RequestID() string {
  6187  	return s.RespMetadata.RequestID
  6188  }
  6189  
  6190  type CreateDestinationInput struct {
  6191  	_ struct{} `type:"structure"`
  6192  
  6193  	// Each resource must have a unique client request token. If you try to create
  6194  	// a new resource with the same token as a resource that already exists, an
  6195  	// exception occurs. If you omit this value, AWS SDKs will automatically generate
  6196  	// a unique client request.
  6197  	ClientRequestToken *string `min:"1" type:"string" idempotencyToken:"true"`
  6198  
  6199  	// The description of the new resource.
  6200  	Description *string `type:"string"`
  6201  
  6202  	// The rule name or topic rule to send messages to.
  6203  	//
  6204  	// Expression is a required field
  6205  	Expression *string `type:"string" required:"true"`
  6206  
  6207  	// The type of value in Expression.
  6208  	//
  6209  	// ExpressionType is a required field
  6210  	ExpressionType *string `type:"string" required:"true" enum:"ExpressionType"`
  6211  
  6212  	// The name of the new resource.
  6213  	//
  6214  	// Name is a required field
  6215  	Name *string `type:"string" required:"true"`
  6216  
  6217  	// The ARN of the IAM Role that authorizes the destination.
  6218  	//
  6219  	// RoleArn is a required field
  6220  	RoleArn *string `min:"20" type:"string" required:"true"`
  6221  
  6222  	// The tags to attach to the new destination. Tags are metadata that you can
  6223  	// use to manage a resource.
  6224  	Tags []*Tag `type:"list"`
  6225  }
  6226  
  6227  // String 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 CreateDestinationInput) String() string {
  6233  	return awsutil.Prettify(s)
  6234  }
  6235  
  6236  // GoString returns the string representation.
  6237  //
  6238  // API parameter values that are decorated as "sensitive" in the API will not
  6239  // be included in the string output. The member name will be present, but the
  6240  // value will be replaced with "sensitive".
  6241  func (s CreateDestinationInput) GoString() string {
  6242  	return s.String()
  6243  }
  6244  
  6245  // Validate inspects the fields of the type to determine if they are valid.
  6246  func (s *CreateDestinationInput) Validate() error {
  6247  	invalidParams := request.ErrInvalidParams{Context: "CreateDestinationInput"}
  6248  	if s.ClientRequestToken != nil && len(*s.ClientRequestToken) < 1 {
  6249  		invalidParams.Add(request.NewErrParamMinLen("ClientRequestToken", 1))
  6250  	}
  6251  	if s.Expression == nil {
  6252  		invalidParams.Add(request.NewErrParamRequired("Expression"))
  6253  	}
  6254  	if s.ExpressionType == nil {
  6255  		invalidParams.Add(request.NewErrParamRequired("ExpressionType"))
  6256  	}
  6257  	if s.Name == nil {
  6258  		invalidParams.Add(request.NewErrParamRequired("Name"))
  6259  	}
  6260  	if s.RoleArn == nil {
  6261  		invalidParams.Add(request.NewErrParamRequired("RoleArn"))
  6262  	}
  6263  	if s.RoleArn != nil && len(*s.RoleArn) < 20 {
  6264  		invalidParams.Add(request.NewErrParamMinLen("RoleArn", 20))
  6265  	}
  6266  	if s.Tags != nil {
  6267  		for i, v := range s.Tags {
  6268  			if v == nil {
  6269  				continue
  6270  			}
  6271  			if err := v.Validate(); err != nil {
  6272  				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Tags", i), err.(request.ErrInvalidParams))
  6273  			}
  6274  		}
  6275  	}
  6276  
  6277  	if invalidParams.Len() > 0 {
  6278  		return invalidParams
  6279  	}
  6280  	return nil
  6281  }
  6282  
  6283  // SetClientRequestToken sets the ClientRequestToken field's value.
  6284  func (s *CreateDestinationInput) SetClientRequestToken(v string) *CreateDestinationInput {
  6285  	s.ClientRequestToken = &v
  6286  	return s
  6287  }
  6288  
  6289  // SetDescription sets the Description field's value.
  6290  func (s *CreateDestinationInput) SetDescription(v string) *CreateDestinationInput {
  6291  	s.Description = &v
  6292  	return s
  6293  }
  6294  
  6295  // SetExpression sets the Expression field's value.
  6296  func (s *CreateDestinationInput) SetExpression(v string) *CreateDestinationInput {
  6297  	s.Expression = &v
  6298  	return s
  6299  }
  6300  
  6301  // SetExpressionType sets the ExpressionType field's value.
  6302  func (s *CreateDestinationInput) SetExpressionType(v string) *CreateDestinationInput {
  6303  	s.ExpressionType = &v
  6304  	return s
  6305  }
  6306  
  6307  // SetName sets the Name field's value.
  6308  func (s *CreateDestinationInput) SetName(v string) *CreateDestinationInput {
  6309  	s.Name = &v
  6310  	return s
  6311  }
  6312  
  6313  // SetRoleArn sets the RoleArn field's value.
  6314  func (s *CreateDestinationInput) SetRoleArn(v string) *CreateDestinationInput {
  6315  	s.RoleArn = &v
  6316  	return s
  6317  }
  6318  
  6319  // SetTags sets the Tags field's value.
  6320  func (s *CreateDestinationInput) SetTags(v []*Tag) *CreateDestinationInput {
  6321  	s.Tags = v
  6322  	return s
  6323  }
  6324  
  6325  type CreateDestinationOutput struct {
  6326  	_ struct{} `type:"structure"`
  6327  
  6328  	// The Amazon Resource Name of the new resource.
  6329  	Arn *string `type:"string"`
  6330  
  6331  	// The name of the new resource.
  6332  	Name *string `type:"string"`
  6333  }
  6334  
  6335  // String returns the string representation.
  6336  //
  6337  // API parameter values that are decorated as "sensitive" in the API will not
  6338  // be included in the string output. The member name will be present, but the
  6339  // value will be replaced with "sensitive".
  6340  func (s CreateDestinationOutput) String() string {
  6341  	return awsutil.Prettify(s)
  6342  }
  6343  
  6344  // GoString returns the string representation.
  6345  //
  6346  // API parameter values that are decorated as "sensitive" in the API will not
  6347  // be included in the string output. The member name will be present, but the
  6348  // value will be replaced with "sensitive".
  6349  func (s CreateDestinationOutput) GoString() string {
  6350  	return s.String()
  6351  }
  6352  
  6353  // SetArn sets the Arn field's value.
  6354  func (s *CreateDestinationOutput) SetArn(v string) *CreateDestinationOutput {
  6355  	s.Arn = &v
  6356  	return s
  6357  }
  6358  
  6359  // SetName sets the Name field's value.
  6360  func (s *CreateDestinationOutput) SetName(v string) *CreateDestinationOutput {
  6361  	s.Name = &v
  6362  	return s
  6363  }
  6364  
  6365  type CreateDeviceProfileInput struct {
  6366  	_ struct{} `type:"structure"`
  6367  
  6368  	// Each resource must have a unique client request token. If you try to create
  6369  	// a new resource with the same token as a resource that already exists, an
  6370  	// exception occurs. If you omit this value, AWS SDKs will automatically generate
  6371  	// a unique client request.
  6372  	ClientRequestToken *string `min:"1" type:"string" idempotencyToken:"true"`
  6373  
  6374  	// The device profile information to use to create the device profile.
  6375  	LoRaWAN *LoRaWANDeviceProfile `type:"structure"`
  6376  
  6377  	// The name of the new resource.
  6378  	Name *string `type:"string"`
  6379  
  6380  	// The tags to attach to the new device profile. Tags are metadata that you
  6381  	// can use to manage a resource.
  6382  	Tags []*Tag `type:"list"`
  6383  }
  6384  
  6385  // String returns the string representation.
  6386  //
  6387  // API parameter values that are decorated as "sensitive" in the API will not
  6388  // be included in the string output. The member name will be present, but the
  6389  // value will be replaced with "sensitive".
  6390  func (s CreateDeviceProfileInput) String() string {
  6391  	return awsutil.Prettify(s)
  6392  }
  6393  
  6394  // GoString returns the string representation.
  6395  //
  6396  // API parameter values that are decorated as "sensitive" in the API will not
  6397  // be included in the string output. The member name will be present, but the
  6398  // value will be replaced with "sensitive".
  6399  func (s CreateDeviceProfileInput) GoString() string {
  6400  	return s.String()
  6401  }
  6402  
  6403  // Validate inspects the fields of the type to determine if they are valid.
  6404  func (s *CreateDeviceProfileInput) Validate() error {
  6405  	invalidParams := request.ErrInvalidParams{Context: "CreateDeviceProfileInput"}
  6406  	if s.ClientRequestToken != nil && len(*s.ClientRequestToken) < 1 {
  6407  		invalidParams.Add(request.NewErrParamMinLen("ClientRequestToken", 1))
  6408  	}
  6409  	if s.LoRaWAN != nil {
  6410  		if err := s.LoRaWAN.Validate(); err != nil {
  6411  			invalidParams.AddNested("LoRaWAN", err.(request.ErrInvalidParams))
  6412  		}
  6413  	}
  6414  	if s.Tags != nil {
  6415  		for i, v := range s.Tags {
  6416  			if v == nil {
  6417  				continue
  6418  			}
  6419  			if err := v.Validate(); err != nil {
  6420  				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Tags", i), err.(request.ErrInvalidParams))
  6421  			}
  6422  		}
  6423  	}
  6424  
  6425  	if invalidParams.Len() > 0 {
  6426  		return invalidParams
  6427  	}
  6428  	return nil
  6429  }
  6430  
  6431  // SetClientRequestToken sets the ClientRequestToken field's value.
  6432  func (s *CreateDeviceProfileInput) SetClientRequestToken(v string) *CreateDeviceProfileInput {
  6433  	s.ClientRequestToken = &v
  6434  	return s
  6435  }
  6436  
  6437  // SetLoRaWAN sets the LoRaWAN field's value.
  6438  func (s *CreateDeviceProfileInput) SetLoRaWAN(v *LoRaWANDeviceProfile) *CreateDeviceProfileInput {
  6439  	s.LoRaWAN = v
  6440  	return s
  6441  }
  6442  
  6443  // SetName sets the Name field's value.
  6444  func (s *CreateDeviceProfileInput) SetName(v string) *CreateDeviceProfileInput {
  6445  	s.Name = &v
  6446  	return s
  6447  }
  6448  
  6449  // SetTags sets the Tags field's value.
  6450  func (s *CreateDeviceProfileInput) SetTags(v []*Tag) *CreateDeviceProfileInput {
  6451  	s.Tags = v
  6452  	return s
  6453  }
  6454  
  6455  type CreateDeviceProfileOutput struct {
  6456  	_ struct{} `type:"structure"`
  6457  
  6458  	// The Amazon Resource Name of the new resource.
  6459  	Arn *string `type:"string"`
  6460  
  6461  	// The ID of the new device profile.
  6462  	Id *string `type:"string"`
  6463  }
  6464  
  6465  // String returns the string representation.
  6466  //
  6467  // API parameter values that are decorated as "sensitive" in the API will not
  6468  // be included in the string output. The member name will be present, but the
  6469  // value will be replaced with "sensitive".
  6470  func (s CreateDeviceProfileOutput) String() string {
  6471  	return awsutil.Prettify(s)
  6472  }
  6473  
  6474  // GoString returns the string representation.
  6475  //
  6476  // API parameter values that are decorated as "sensitive" in the API will not
  6477  // be included in the string output. The member name will be present, but the
  6478  // value will be replaced with "sensitive".
  6479  func (s CreateDeviceProfileOutput) GoString() string {
  6480  	return s.String()
  6481  }
  6482  
  6483  // SetArn sets the Arn field's value.
  6484  func (s *CreateDeviceProfileOutput) SetArn(v string) *CreateDeviceProfileOutput {
  6485  	s.Arn = &v
  6486  	return s
  6487  }
  6488  
  6489  // SetId sets the Id field's value.
  6490  func (s *CreateDeviceProfileOutput) SetId(v string) *CreateDeviceProfileOutput {
  6491  	s.Id = &v
  6492  	return s
  6493  }
  6494  
  6495  type CreateServiceProfileInput struct {
  6496  	_ struct{} `type:"structure"`
  6497  
  6498  	// Each resource must have a unique client request token. If you try to create
  6499  	// a new resource with the same token as a resource that already exists, an
  6500  	// exception occurs. If you omit this value, AWS SDKs will automatically generate
  6501  	// a unique client request.
  6502  	ClientRequestToken *string `min:"1" type:"string" idempotencyToken:"true"`
  6503  
  6504  	// The service profile information to use to create the service profile.
  6505  	LoRaWAN *LoRaWANServiceProfile `type:"structure"`
  6506  
  6507  	// The name of the new resource.
  6508  	Name *string `type:"string"`
  6509  
  6510  	// The tags to attach to the new service profile. Tags are metadata that you
  6511  	// can use to manage a resource.
  6512  	Tags []*Tag `type:"list"`
  6513  }
  6514  
  6515  // String returns the string representation.
  6516  //
  6517  // API parameter values that are decorated as "sensitive" in the API will not
  6518  // be included in the string output. The member name will be present, but the
  6519  // value will be replaced with "sensitive".
  6520  func (s CreateServiceProfileInput) String() string {
  6521  	return awsutil.Prettify(s)
  6522  }
  6523  
  6524  // GoString returns the string representation.
  6525  //
  6526  // API parameter values that are decorated as "sensitive" in the API will not
  6527  // be included in the string output. The member name will be present, but the
  6528  // value will be replaced with "sensitive".
  6529  func (s CreateServiceProfileInput) GoString() string {
  6530  	return s.String()
  6531  }
  6532  
  6533  // Validate inspects the fields of the type to determine if they are valid.
  6534  func (s *CreateServiceProfileInput) Validate() error {
  6535  	invalidParams := request.ErrInvalidParams{Context: "CreateServiceProfileInput"}
  6536  	if s.ClientRequestToken != nil && len(*s.ClientRequestToken) < 1 {
  6537  		invalidParams.Add(request.NewErrParamMinLen("ClientRequestToken", 1))
  6538  	}
  6539  	if s.Tags != nil {
  6540  		for i, v := range s.Tags {
  6541  			if v == nil {
  6542  				continue
  6543  			}
  6544  			if err := v.Validate(); err != nil {
  6545  				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Tags", i), err.(request.ErrInvalidParams))
  6546  			}
  6547  		}
  6548  	}
  6549  
  6550  	if invalidParams.Len() > 0 {
  6551  		return invalidParams
  6552  	}
  6553  	return nil
  6554  }
  6555  
  6556  // SetClientRequestToken sets the ClientRequestToken field's value.
  6557  func (s *CreateServiceProfileInput) SetClientRequestToken(v string) *CreateServiceProfileInput {
  6558  	s.ClientRequestToken = &v
  6559  	return s
  6560  }
  6561  
  6562  // SetLoRaWAN sets the LoRaWAN field's value.
  6563  func (s *CreateServiceProfileInput) SetLoRaWAN(v *LoRaWANServiceProfile) *CreateServiceProfileInput {
  6564  	s.LoRaWAN = v
  6565  	return s
  6566  }
  6567  
  6568  // SetName sets the Name field's value.
  6569  func (s *CreateServiceProfileInput) SetName(v string) *CreateServiceProfileInput {
  6570  	s.Name = &v
  6571  	return s
  6572  }
  6573  
  6574  // SetTags sets the Tags field's value.
  6575  func (s *CreateServiceProfileInput) SetTags(v []*Tag) *CreateServiceProfileInput {
  6576  	s.Tags = v
  6577  	return s
  6578  }
  6579  
  6580  type CreateServiceProfileOutput struct {
  6581  	_ struct{} `type:"structure"`
  6582  
  6583  	// The Amazon Resource Name of the new resource.
  6584  	Arn *string `type:"string"`
  6585  
  6586  	// The ID of the new service profile.
  6587  	Id *string `type:"string"`
  6588  }
  6589  
  6590  // String returns the string representation.
  6591  //
  6592  // API parameter values that are decorated as "sensitive" in the API will not
  6593  // be included in the string output. The member name will be present, but the
  6594  // value will be replaced with "sensitive".
  6595  func (s CreateServiceProfileOutput) String() string {
  6596  	return awsutil.Prettify(s)
  6597  }
  6598  
  6599  // GoString returns the string representation.
  6600  //
  6601  // API parameter values that are decorated as "sensitive" in the API will not
  6602  // be included in the string output. The member name will be present, but the
  6603  // value will be replaced with "sensitive".
  6604  func (s CreateServiceProfileOutput) GoString() string {
  6605  	return s.String()
  6606  }
  6607  
  6608  // SetArn sets the Arn field's value.
  6609  func (s *CreateServiceProfileOutput) SetArn(v string) *CreateServiceProfileOutput {
  6610  	s.Arn = &v
  6611  	return s
  6612  }
  6613  
  6614  // SetId sets the Id field's value.
  6615  func (s *CreateServiceProfileOutput) SetId(v string) *CreateServiceProfileOutput {
  6616  	s.Id = &v
  6617  	return s
  6618  }
  6619  
  6620  type CreateWirelessDeviceInput struct {
  6621  	_ struct{} `type:"structure"`
  6622  
  6623  	// Each resource must have a unique client request token. If you try to create
  6624  	// a new resource with the same token as a resource that already exists, an
  6625  	// exception occurs. If you omit this value, AWS SDKs will automatically generate
  6626  	// a unique client request.
  6627  	ClientRequestToken *string `min:"1" type:"string" idempotencyToken:"true"`
  6628  
  6629  	// The description of the new resource.
  6630  	Description *string `type:"string"`
  6631  
  6632  	// The name of the destination to assign to the new wireless device.
  6633  	//
  6634  	// DestinationName is a required field
  6635  	DestinationName *string `type:"string" required:"true"`
  6636  
  6637  	// The device configuration information to use to create the wireless device.
  6638  	LoRaWAN *LoRaWANDevice `type:"structure"`
  6639  
  6640  	// The name of the new resource.
  6641  	Name *string `type:"string"`
  6642  
  6643  	// The tags to attach to the new wireless device. Tags are metadata that you
  6644  	// can use to manage a resource.
  6645  	Tags []*Tag `type:"list"`
  6646  
  6647  	// The wireless device type.
  6648  	//
  6649  	// Type is a required field
  6650  	Type *string `type:"string" required:"true" enum:"WirelessDeviceType"`
  6651  }
  6652  
  6653  // String returns the string representation.
  6654  //
  6655  // API parameter values that are decorated as "sensitive" in the API will not
  6656  // be included in the string output. The member name will be present, but the
  6657  // value will be replaced with "sensitive".
  6658  func (s CreateWirelessDeviceInput) String() string {
  6659  	return awsutil.Prettify(s)
  6660  }
  6661  
  6662  // GoString returns the string representation.
  6663  //
  6664  // API parameter values that are decorated as "sensitive" in the API will not
  6665  // be included in the string output. The member name will be present, but the
  6666  // value will be replaced with "sensitive".
  6667  func (s CreateWirelessDeviceInput) GoString() string {
  6668  	return s.String()
  6669  }
  6670  
  6671  // Validate inspects the fields of the type to determine if they are valid.
  6672  func (s *CreateWirelessDeviceInput) Validate() error {
  6673  	invalidParams := request.ErrInvalidParams{Context: "CreateWirelessDeviceInput"}
  6674  	if s.ClientRequestToken != nil && len(*s.ClientRequestToken) < 1 {
  6675  		invalidParams.Add(request.NewErrParamMinLen("ClientRequestToken", 1))
  6676  	}
  6677  	if s.DestinationName == nil {
  6678  		invalidParams.Add(request.NewErrParamRequired("DestinationName"))
  6679  	}
  6680  	if s.Type == nil {
  6681  		invalidParams.Add(request.NewErrParamRequired("Type"))
  6682  	}
  6683  	if s.Tags != nil {
  6684  		for i, v := range s.Tags {
  6685  			if v == nil {
  6686  				continue
  6687  			}
  6688  			if err := v.Validate(); err != nil {
  6689  				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Tags", i), err.(request.ErrInvalidParams))
  6690  			}
  6691  		}
  6692  	}
  6693  
  6694  	if invalidParams.Len() > 0 {
  6695  		return invalidParams
  6696  	}
  6697  	return nil
  6698  }
  6699  
  6700  // SetClientRequestToken sets the ClientRequestToken field's value.
  6701  func (s *CreateWirelessDeviceInput) SetClientRequestToken(v string) *CreateWirelessDeviceInput {
  6702  	s.ClientRequestToken = &v
  6703  	return s
  6704  }
  6705  
  6706  // SetDescription sets the Description field's value.
  6707  func (s *CreateWirelessDeviceInput) SetDescription(v string) *CreateWirelessDeviceInput {
  6708  	s.Description = &v
  6709  	return s
  6710  }
  6711  
  6712  // SetDestinationName sets the DestinationName field's value.
  6713  func (s *CreateWirelessDeviceInput) SetDestinationName(v string) *CreateWirelessDeviceInput {
  6714  	s.DestinationName = &v
  6715  	return s
  6716  }
  6717  
  6718  // SetLoRaWAN sets the LoRaWAN field's value.
  6719  func (s *CreateWirelessDeviceInput) SetLoRaWAN(v *LoRaWANDevice) *CreateWirelessDeviceInput {
  6720  	s.LoRaWAN = v
  6721  	return s
  6722  }
  6723  
  6724  // SetName sets the Name field's value.
  6725  func (s *CreateWirelessDeviceInput) SetName(v string) *CreateWirelessDeviceInput {
  6726  	s.Name = &v
  6727  	return s
  6728  }
  6729  
  6730  // SetTags sets the Tags field's value.
  6731  func (s *CreateWirelessDeviceInput) SetTags(v []*Tag) *CreateWirelessDeviceInput {
  6732  	s.Tags = v
  6733  	return s
  6734  }
  6735  
  6736  // SetType sets the Type field's value.
  6737  func (s *CreateWirelessDeviceInput) SetType(v string) *CreateWirelessDeviceInput {
  6738  	s.Type = &v
  6739  	return s
  6740  }
  6741  
  6742  type CreateWirelessDeviceOutput struct {
  6743  	_ struct{} `type:"structure"`
  6744  
  6745  	// The Amazon Resource Name of the new resource.
  6746  	Arn *string `type:"string"`
  6747  
  6748  	// The ID of the new wireless device.
  6749  	Id *string `type:"string"`
  6750  }
  6751  
  6752  // String returns the string representation.
  6753  //
  6754  // API parameter values that are decorated as "sensitive" in the API will not
  6755  // be included in the string output. The member name will be present, but the
  6756  // value will be replaced with "sensitive".
  6757  func (s CreateWirelessDeviceOutput) String() string {
  6758  	return awsutil.Prettify(s)
  6759  }
  6760  
  6761  // GoString returns the string representation.
  6762  //
  6763  // API parameter values that are decorated as "sensitive" in the API will not
  6764  // be included in the string output. The member name will be present, but the
  6765  // value will be replaced with "sensitive".
  6766  func (s CreateWirelessDeviceOutput) GoString() string {
  6767  	return s.String()
  6768  }
  6769  
  6770  // SetArn sets the Arn field's value.
  6771  func (s *CreateWirelessDeviceOutput) SetArn(v string) *CreateWirelessDeviceOutput {
  6772  	s.Arn = &v
  6773  	return s
  6774  }
  6775  
  6776  // SetId sets the Id field's value.
  6777  func (s *CreateWirelessDeviceOutput) SetId(v string) *CreateWirelessDeviceOutput {
  6778  	s.Id = &v
  6779  	return s
  6780  }
  6781  
  6782  type CreateWirelessGatewayInput struct {
  6783  	_ struct{} `type:"structure"`
  6784  
  6785  	// Each resource must have a unique client request token. If you try to create
  6786  	// a new resource with the same token as a resource that already exists, an
  6787  	// exception occurs. If you omit this value, AWS SDKs will automatically generate
  6788  	// a unique client request.
  6789  	ClientRequestToken *string `min:"1" type:"string" idempotencyToken:"true"`
  6790  
  6791  	// The description of the new resource.
  6792  	Description *string `type:"string"`
  6793  
  6794  	// The gateway configuration information to use to create the wireless gateway.
  6795  	//
  6796  	// LoRaWAN is a required field
  6797  	LoRaWAN *LoRaWANGateway `type:"structure" required:"true"`
  6798  
  6799  	// The name of the new resource.
  6800  	Name *string `type:"string"`
  6801  
  6802  	// The tags to attach to the new wireless gateway. Tags are metadata that you
  6803  	// can use to manage a resource.
  6804  	Tags []*Tag `type:"list"`
  6805  }
  6806  
  6807  // String returns the string representation.
  6808  //
  6809  // API parameter values that are decorated as "sensitive" in the API will not
  6810  // be included in the string output. The member name will be present, but the
  6811  // value will be replaced with "sensitive".
  6812  func (s CreateWirelessGatewayInput) String() string {
  6813  	return awsutil.Prettify(s)
  6814  }
  6815  
  6816  // GoString returns the string representation.
  6817  //
  6818  // API parameter values that are decorated as "sensitive" in the API will not
  6819  // be included in the string output. The member name will be present, but the
  6820  // value will be replaced with "sensitive".
  6821  func (s CreateWirelessGatewayInput) GoString() string {
  6822  	return s.String()
  6823  }
  6824  
  6825  // Validate inspects the fields of the type to determine if they are valid.
  6826  func (s *CreateWirelessGatewayInput) Validate() error {
  6827  	invalidParams := request.ErrInvalidParams{Context: "CreateWirelessGatewayInput"}
  6828  	if s.ClientRequestToken != nil && len(*s.ClientRequestToken) < 1 {
  6829  		invalidParams.Add(request.NewErrParamMinLen("ClientRequestToken", 1))
  6830  	}
  6831  	if s.LoRaWAN == nil {
  6832  		invalidParams.Add(request.NewErrParamRequired("LoRaWAN"))
  6833  	}
  6834  	if s.Tags != nil {
  6835  		for i, v := range s.Tags {
  6836  			if v == nil {
  6837  				continue
  6838  			}
  6839  			if err := v.Validate(); err != nil {
  6840  				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Tags", i), err.(request.ErrInvalidParams))
  6841  			}
  6842  		}
  6843  	}
  6844  
  6845  	if invalidParams.Len() > 0 {
  6846  		return invalidParams
  6847  	}
  6848  	return nil
  6849  }
  6850  
  6851  // SetClientRequestToken sets the ClientRequestToken field's value.
  6852  func (s *CreateWirelessGatewayInput) SetClientRequestToken(v string) *CreateWirelessGatewayInput {
  6853  	s.ClientRequestToken = &v
  6854  	return s
  6855  }
  6856  
  6857  // SetDescription sets the Description field's value.
  6858  func (s *CreateWirelessGatewayInput) SetDescription(v string) *CreateWirelessGatewayInput {
  6859  	s.Description = &v
  6860  	return s
  6861  }
  6862  
  6863  // SetLoRaWAN sets the LoRaWAN field's value.
  6864  func (s *CreateWirelessGatewayInput) SetLoRaWAN(v *LoRaWANGateway) *CreateWirelessGatewayInput {
  6865  	s.LoRaWAN = v
  6866  	return s
  6867  }
  6868  
  6869  // SetName sets the Name field's value.
  6870  func (s *CreateWirelessGatewayInput) SetName(v string) *CreateWirelessGatewayInput {
  6871  	s.Name = &v
  6872  	return s
  6873  }
  6874  
  6875  // SetTags sets the Tags field's value.
  6876  func (s *CreateWirelessGatewayInput) SetTags(v []*Tag) *CreateWirelessGatewayInput {
  6877  	s.Tags = v
  6878  	return s
  6879  }
  6880  
  6881  type CreateWirelessGatewayOutput struct {
  6882  	_ struct{} `type:"structure"`
  6883  
  6884  	// The Amazon Resource Name of the new resource.
  6885  	Arn *string `type:"string"`
  6886  
  6887  	// The ID of the new wireless gateway.
  6888  	Id *string `type:"string"`
  6889  }
  6890  
  6891  // String returns the string representation.
  6892  //
  6893  // API parameter values that are decorated as "sensitive" in the API will not
  6894  // be included in the string output. The member name will be present, but the
  6895  // value will be replaced with "sensitive".
  6896  func (s CreateWirelessGatewayOutput) String() string {
  6897  	return awsutil.Prettify(s)
  6898  }
  6899  
  6900  // GoString returns the string representation.
  6901  //
  6902  // API parameter values that are decorated as "sensitive" in the API will not
  6903  // be included in the string output. The member name will be present, but the
  6904  // value will be replaced with "sensitive".
  6905  func (s CreateWirelessGatewayOutput) GoString() string {
  6906  	return s.String()
  6907  }
  6908  
  6909  // SetArn sets the Arn field's value.
  6910  func (s *CreateWirelessGatewayOutput) SetArn(v string) *CreateWirelessGatewayOutput {
  6911  	s.Arn = &v
  6912  	return s
  6913  }
  6914  
  6915  // SetId sets the Id field's value.
  6916  func (s *CreateWirelessGatewayOutput) SetId(v string) *CreateWirelessGatewayOutput {
  6917  	s.Id = &v
  6918  	return s
  6919  }
  6920  
  6921  type CreateWirelessGatewayTaskDefinitionInput struct {
  6922  	_ struct{} `type:"structure"`
  6923  
  6924  	// Whether to automatically create tasks using this task definition for all
  6925  	// gateways with the specified current version. If false, the task must me created
  6926  	// by calling CreateWirelessGatewayTask.
  6927  	//
  6928  	// AutoCreateTasks is a required field
  6929  	AutoCreateTasks *bool `type:"boolean" required:"true"`
  6930  
  6931  	// Each resource must have a unique client request token. If you try to create
  6932  	// a new resource with the same token as a resource that already exists, an
  6933  	// exception occurs. If you omit this value, AWS SDKs will automatically generate
  6934  	// a unique client request.
  6935  	ClientRequestToken *string `min:"1" type:"string" idempotencyToken:"true"`
  6936  
  6937  	// The name of the new resource.
  6938  	Name *string `min:"1" type:"string"`
  6939  
  6940  	// The tags to attach to the specified resource. Tags are metadata that you
  6941  	// can use to manage a resource.
  6942  	Tags []*Tag `type:"list"`
  6943  
  6944  	// Information about the gateways to update.
  6945  	Update *UpdateWirelessGatewayTaskCreate `type:"structure"`
  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 CreateWirelessGatewayTaskDefinitionInput) 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 CreateWirelessGatewayTaskDefinitionInput) GoString() string {
  6963  	return s.String()
  6964  }
  6965  
  6966  // Validate inspects the fields of the type to determine if they are valid.
  6967  func (s *CreateWirelessGatewayTaskDefinitionInput) Validate() error {
  6968  	invalidParams := request.ErrInvalidParams{Context: "CreateWirelessGatewayTaskDefinitionInput"}
  6969  	if s.AutoCreateTasks == nil {
  6970  		invalidParams.Add(request.NewErrParamRequired("AutoCreateTasks"))
  6971  	}
  6972  	if s.ClientRequestToken != nil && len(*s.ClientRequestToken) < 1 {
  6973  		invalidParams.Add(request.NewErrParamMinLen("ClientRequestToken", 1))
  6974  	}
  6975  	if s.Name != nil && len(*s.Name) < 1 {
  6976  		invalidParams.Add(request.NewErrParamMinLen("Name", 1))
  6977  	}
  6978  	if s.Tags != nil {
  6979  		for i, v := range s.Tags {
  6980  			if v == nil {
  6981  				continue
  6982  			}
  6983  			if err := v.Validate(); err != nil {
  6984  				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Tags", i), err.(request.ErrInvalidParams))
  6985  			}
  6986  		}
  6987  	}
  6988  	if s.Update != nil {
  6989  		if err := s.Update.Validate(); err != nil {
  6990  			invalidParams.AddNested("Update", err.(request.ErrInvalidParams))
  6991  		}
  6992  	}
  6993  
  6994  	if invalidParams.Len() > 0 {
  6995  		return invalidParams
  6996  	}
  6997  	return nil
  6998  }
  6999  
  7000  // SetAutoCreateTasks sets the AutoCreateTasks field's value.
  7001  func (s *CreateWirelessGatewayTaskDefinitionInput) SetAutoCreateTasks(v bool) *CreateWirelessGatewayTaskDefinitionInput {
  7002  	s.AutoCreateTasks = &v
  7003  	return s
  7004  }
  7005  
  7006  // SetClientRequestToken sets the ClientRequestToken field's value.
  7007  func (s *CreateWirelessGatewayTaskDefinitionInput) SetClientRequestToken(v string) *CreateWirelessGatewayTaskDefinitionInput {
  7008  	s.ClientRequestToken = &v
  7009  	return s
  7010  }
  7011  
  7012  // SetName sets the Name field's value.
  7013  func (s *CreateWirelessGatewayTaskDefinitionInput) SetName(v string) *CreateWirelessGatewayTaskDefinitionInput {
  7014  	s.Name = &v
  7015  	return s
  7016  }
  7017  
  7018  // SetTags sets the Tags field's value.
  7019  func (s *CreateWirelessGatewayTaskDefinitionInput) SetTags(v []*Tag) *CreateWirelessGatewayTaskDefinitionInput {
  7020  	s.Tags = v
  7021  	return s
  7022  }
  7023  
  7024  // SetUpdate sets the Update field's value.
  7025  func (s *CreateWirelessGatewayTaskDefinitionInput) SetUpdate(v *UpdateWirelessGatewayTaskCreate) *CreateWirelessGatewayTaskDefinitionInput {
  7026  	s.Update = v
  7027  	return s
  7028  }
  7029  
  7030  type CreateWirelessGatewayTaskDefinitionOutput struct {
  7031  	_ struct{} `type:"structure"`
  7032  
  7033  	// The Amazon Resource Name of the resource.
  7034  	Arn *string `type:"string"`
  7035  
  7036  	// The ID of the new wireless gateway task definition.
  7037  	Id *string `type:"string"`
  7038  }
  7039  
  7040  // String returns the string representation.
  7041  //
  7042  // API parameter values that are decorated as "sensitive" in the API will not
  7043  // be included in the string output. The member name will be present, but the
  7044  // value will be replaced with "sensitive".
  7045  func (s CreateWirelessGatewayTaskDefinitionOutput) String() string {
  7046  	return awsutil.Prettify(s)
  7047  }
  7048  
  7049  // GoString returns the string representation.
  7050  //
  7051  // API parameter values that are decorated as "sensitive" in the API will not
  7052  // be included in the string output. The member name will be present, but the
  7053  // value will be replaced with "sensitive".
  7054  func (s CreateWirelessGatewayTaskDefinitionOutput) GoString() string {
  7055  	return s.String()
  7056  }
  7057  
  7058  // SetArn sets the Arn field's value.
  7059  func (s *CreateWirelessGatewayTaskDefinitionOutput) SetArn(v string) *CreateWirelessGatewayTaskDefinitionOutput {
  7060  	s.Arn = &v
  7061  	return s
  7062  }
  7063  
  7064  // SetId sets the Id field's value.
  7065  func (s *CreateWirelessGatewayTaskDefinitionOutput) SetId(v string) *CreateWirelessGatewayTaskDefinitionOutput {
  7066  	s.Id = &v
  7067  	return s
  7068  }
  7069  
  7070  type CreateWirelessGatewayTaskInput struct {
  7071  	_ struct{} `type:"structure"`
  7072  
  7073  	// The ID of the resource to update.
  7074  	//
  7075  	// Id is a required field
  7076  	Id *string `location:"uri" locationName:"Id" type:"string" required:"true"`
  7077  
  7078  	// The ID of the WirelessGatewayTaskDefinition.
  7079  	//
  7080  	// WirelessGatewayTaskDefinitionId is a required field
  7081  	WirelessGatewayTaskDefinitionId *string `type:"string" required:"true"`
  7082  }
  7083  
  7084  // String returns the string representation.
  7085  //
  7086  // API parameter values that are decorated as "sensitive" in the API will not
  7087  // be included in the string output. The member name will be present, but the
  7088  // value will be replaced with "sensitive".
  7089  func (s CreateWirelessGatewayTaskInput) String() string {
  7090  	return awsutil.Prettify(s)
  7091  }
  7092  
  7093  // GoString returns the string representation.
  7094  //
  7095  // API parameter values that are decorated as "sensitive" in the API will not
  7096  // be included in the string output. The member name will be present, but the
  7097  // value will be replaced with "sensitive".
  7098  func (s CreateWirelessGatewayTaskInput) GoString() string {
  7099  	return s.String()
  7100  }
  7101  
  7102  // Validate inspects the fields of the type to determine if they are valid.
  7103  func (s *CreateWirelessGatewayTaskInput) Validate() error {
  7104  	invalidParams := request.ErrInvalidParams{Context: "CreateWirelessGatewayTaskInput"}
  7105  	if s.Id == nil {
  7106  		invalidParams.Add(request.NewErrParamRequired("Id"))
  7107  	}
  7108  	if s.Id != nil && len(*s.Id) < 1 {
  7109  		invalidParams.Add(request.NewErrParamMinLen("Id", 1))
  7110  	}
  7111  	if s.WirelessGatewayTaskDefinitionId == nil {
  7112  		invalidParams.Add(request.NewErrParamRequired("WirelessGatewayTaskDefinitionId"))
  7113  	}
  7114  
  7115  	if invalidParams.Len() > 0 {
  7116  		return invalidParams
  7117  	}
  7118  	return nil
  7119  }
  7120  
  7121  // SetId sets the Id field's value.
  7122  func (s *CreateWirelessGatewayTaskInput) SetId(v string) *CreateWirelessGatewayTaskInput {
  7123  	s.Id = &v
  7124  	return s
  7125  }
  7126  
  7127  // SetWirelessGatewayTaskDefinitionId sets the WirelessGatewayTaskDefinitionId field's value.
  7128  func (s *CreateWirelessGatewayTaskInput) SetWirelessGatewayTaskDefinitionId(v string) *CreateWirelessGatewayTaskInput {
  7129  	s.WirelessGatewayTaskDefinitionId = &v
  7130  	return s
  7131  }
  7132  
  7133  type CreateWirelessGatewayTaskOutput struct {
  7134  	_ struct{} `type:"structure"`
  7135  
  7136  	// The status of the request.
  7137  	Status *string `type:"string" enum:"WirelessGatewayTaskStatus"`
  7138  
  7139  	// The ID of the WirelessGatewayTaskDefinition.
  7140  	WirelessGatewayTaskDefinitionId *string `type:"string"`
  7141  }
  7142  
  7143  // String returns the string representation.
  7144  //
  7145  // API parameter values that are decorated as "sensitive" in the API will not
  7146  // be included in the string output. The member name will be present, but the
  7147  // value will be replaced with "sensitive".
  7148  func (s CreateWirelessGatewayTaskOutput) String() string {
  7149  	return awsutil.Prettify(s)
  7150  }
  7151  
  7152  // GoString returns the string representation.
  7153  //
  7154  // API parameter values that are decorated as "sensitive" in the API will not
  7155  // be included in the string output. The member name will be present, but the
  7156  // value will be replaced with "sensitive".
  7157  func (s CreateWirelessGatewayTaskOutput) GoString() string {
  7158  	return s.String()
  7159  }
  7160  
  7161  // SetStatus sets the Status field's value.
  7162  func (s *CreateWirelessGatewayTaskOutput) SetStatus(v string) *CreateWirelessGatewayTaskOutput {
  7163  	s.Status = &v
  7164  	return s
  7165  }
  7166  
  7167  // SetWirelessGatewayTaskDefinitionId sets the WirelessGatewayTaskDefinitionId field's value.
  7168  func (s *CreateWirelessGatewayTaskOutput) SetWirelessGatewayTaskDefinitionId(v string) *CreateWirelessGatewayTaskOutput {
  7169  	s.WirelessGatewayTaskDefinitionId = &v
  7170  	return s
  7171  }
  7172  
  7173  type DeleteDestinationInput struct {
  7174  	_ struct{} `type:"structure" nopayload:"true"`
  7175  
  7176  	// The name of the resource to delete.
  7177  	//
  7178  	// Name is a required field
  7179  	Name *string `location:"uri" locationName:"Name" type:"string" required:"true"`
  7180  }
  7181  
  7182  // String returns the string representation.
  7183  //
  7184  // API parameter values that are decorated as "sensitive" in the API will not
  7185  // be included in the string output. The member name will be present, but the
  7186  // value will be replaced with "sensitive".
  7187  func (s DeleteDestinationInput) String() string {
  7188  	return awsutil.Prettify(s)
  7189  }
  7190  
  7191  // GoString returns the string representation.
  7192  //
  7193  // API parameter values that are decorated as "sensitive" in the API will not
  7194  // be included in the string output. The member name will be present, but the
  7195  // value will be replaced with "sensitive".
  7196  func (s DeleteDestinationInput) GoString() string {
  7197  	return s.String()
  7198  }
  7199  
  7200  // Validate inspects the fields of the type to determine if they are valid.
  7201  func (s *DeleteDestinationInput) Validate() error {
  7202  	invalidParams := request.ErrInvalidParams{Context: "DeleteDestinationInput"}
  7203  	if s.Name == nil {
  7204  		invalidParams.Add(request.NewErrParamRequired("Name"))
  7205  	}
  7206  	if s.Name != nil && len(*s.Name) < 1 {
  7207  		invalidParams.Add(request.NewErrParamMinLen("Name", 1))
  7208  	}
  7209  
  7210  	if invalidParams.Len() > 0 {
  7211  		return invalidParams
  7212  	}
  7213  	return nil
  7214  }
  7215  
  7216  // SetName sets the Name field's value.
  7217  func (s *DeleteDestinationInput) SetName(v string) *DeleteDestinationInput {
  7218  	s.Name = &v
  7219  	return s
  7220  }
  7221  
  7222  type DeleteDestinationOutput struct {
  7223  	_ struct{} `type:"structure" nopayload:"true"`
  7224  }
  7225  
  7226  // String returns the string representation.
  7227  //
  7228  // API parameter values that are decorated as "sensitive" in the API will not
  7229  // be included in the string output. The member name will be present, but the
  7230  // value will be replaced with "sensitive".
  7231  func (s DeleteDestinationOutput) String() string {
  7232  	return awsutil.Prettify(s)
  7233  }
  7234  
  7235  // GoString returns the string representation.
  7236  //
  7237  // API parameter values that are decorated as "sensitive" in the API will not
  7238  // be included in the string output. The member name will be present, but the
  7239  // value will be replaced with "sensitive".
  7240  func (s DeleteDestinationOutput) GoString() string {
  7241  	return s.String()
  7242  }
  7243  
  7244  type DeleteDeviceProfileInput struct {
  7245  	_ struct{} `type:"structure" nopayload:"true"`
  7246  
  7247  	// The ID of the resource to delete.
  7248  	//
  7249  	// Id is a required field
  7250  	Id *string `location:"uri" locationName:"Id" type:"string" required:"true"`
  7251  }
  7252  
  7253  // String returns the string representation.
  7254  //
  7255  // API parameter values that are decorated as "sensitive" in the API will not
  7256  // be included in the string output. The member name will be present, but the
  7257  // value will be replaced with "sensitive".
  7258  func (s DeleteDeviceProfileInput) String() string {
  7259  	return awsutil.Prettify(s)
  7260  }
  7261  
  7262  // GoString returns the string representation.
  7263  //
  7264  // API parameter values that are decorated as "sensitive" in the API will not
  7265  // be included in the string output. The member name will be present, but the
  7266  // value will be replaced with "sensitive".
  7267  func (s DeleteDeviceProfileInput) GoString() string {
  7268  	return s.String()
  7269  }
  7270  
  7271  // Validate inspects the fields of the type to determine if they are valid.
  7272  func (s *DeleteDeviceProfileInput) Validate() error {
  7273  	invalidParams := request.ErrInvalidParams{Context: "DeleteDeviceProfileInput"}
  7274  	if s.Id == nil {
  7275  		invalidParams.Add(request.NewErrParamRequired("Id"))
  7276  	}
  7277  	if s.Id != nil && len(*s.Id) < 1 {
  7278  		invalidParams.Add(request.NewErrParamMinLen("Id", 1))
  7279  	}
  7280  
  7281  	if invalidParams.Len() > 0 {
  7282  		return invalidParams
  7283  	}
  7284  	return nil
  7285  }
  7286  
  7287  // SetId sets the Id field's value.
  7288  func (s *DeleteDeviceProfileInput) SetId(v string) *DeleteDeviceProfileInput {
  7289  	s.Id = &v
  7290  	return s
  7291  }
  7292  
  7293  type DeleteDeviceProfileOutput struct {
  7294  	_ struct{} `type:"structure" nopayload:"true"`
  7295  }
  7296  
  7297  // String returns the string representation.
  7298  //
  7299  // API parameter values that are decorated as "sensitive" in the API will not
  7300  // be included in the string output. The member name will be present, but the
  7301  // value will be replaced with "sensitive".
  7302  func (s DeleteDeviceProfileOutput) String() string {
  7303  	return awsutil.Prettify(s)
  7304  }
  7305  
  7306  // GoString returns the string representation.
  7307  //
  7308  // API parameter values that are decorated as "sensitive" in the API will not
  7309  // be included in the string output. The member name will be present, but the
  7310  // value will be replaced with "sensitive".
  7311  func (s DeleteDeviceProfileOutput) GoString() string {
  7312  	return s.String()
  7313  }
  7314  
  7315  type DeleteServiceProfileInput struct {
  7316  	_ struct{} `type:"structure" nopayload:"true"`
  7317  
  7318  	// The ID of the resource to delete.
  7319  	//
  7320  	// Id is a required field
  7321  	Id *string `location:"uri" locationName:"Id" type:"string" required:"true"`
  7322  }
  7323  
  7324  // String returns the string representation.
  7325  //
  7326  // API parameter values that are decorated as "sensitive" in the API will not
  7327  // be included in the string output. The member name will be present, but the
  7328  // value will be replaced with "sensitive".
  7329  func (s DeleteServiceProfileInput) String() string {
  7330  	return awsutil.Prettify(s)
  7331  }
  7332  
  7333  // GoString returns the string representation.
  7334  //
  7335  // API parameter values that are decorated as "sensitive" in the API will not
  7336  // be included in the string output. The member name will be present, but the
  7337  // value will be replaced with "sensitive".
  7338  func (s DeleteServiceProfileInput) GoString() string {
  7339  	return s.String()
  7340  }
  7341  
  7342  // Validate inspects the fields of the type to determine if they are valid.
  7343  func (s *DeleteServiceProfileInput) Validate() error {
  7344  	invalidParams := request.ErrInvalidParams{Context: "DeleteServiceProfileInput"}
  7345  	if s.Id == nil {
  7346  		invalidParams.Add(request.NewErrParamRequired("Id"))
  7347  	}
  7348  	if s.Id != nil && len(*s.Id) < 1 {
  7349  		invalidParams.Add(request.NewErrParamMinLen("Id", 1))
  7350  	}
  7351  
  7352  	if invalidParams.Len() > 0 {
  7353  		return invalidParams
  7354  	}
  7355  	return nil
  7356  }
  7357  
  7358  // SetId sets the Id field's value.
  7359  func (s *DeleteServiceProfileInput) SetId(v string) *DeleteServiceProfileInput {
  7360  	s.Id = &v
  7361  	return s
  7362  }
  7363  
  7364  type DeleteServiceProfileOutput struct {
  7365  	_ struct{} `type:"structure" nopayload:"true"`
  7366  }
  7367  
  7368  // String returns the string representation.
  7369  //
  7370  // API parameter values that are decorated as "sensitive" in the API will not
  7371  // be included in the string output. The member name will be present, but the
  7372  // value will be replaced with "sensitive".
  7373  func (s DeleteServiceProfileOutput) String() string {
  7374  	return awsutil.Prettify(s)
  7375  }
  7376  
  7377  // GoString returns the string representation.
  7378  //
  7379  // API parameter values that are decorated as "sensitive" in the API will not
  7380  // be included in the string output. The member name will be present, but the
  7381  // value will be replaced with "sensitive".
  7382  func (s DeleteServiceProfileOutput) GoString() string {
  7383  	return s.String()
  7384  }
  7385  
  7386  type DeleteWirelessDeviceInput struct {
  7387  	_ struct{} `type:"structure" nopayload:"true"`
  7388  
  7389  	// The ID of the resource to delete.
  7390  	//
  7391  	// Id is a required field
  7392  	Id *string `location:"uri" locationName:"Id" type:"string" required:"true"`
  7393  }
  7394  
  7395  // String returns the string representation.
  7396  //
  7397  // API parameter values that are decorated as "sensitive" in the API will not
  7398  // be included in the string output. The member name will be present, but the
  7399  // value will be replaced with "sensitive".
  7400  func (s DeleteWirelessDeviceInput) String() string {
  7401  	return awsutil.Prettify(s)
  7402  }
  7403  
  7404  // GoString returns the string representation.
  7405  //
  7406  // API parameter values that are decorated as "sensitive" in the API will not
  7407  // be included in the string output. The member name will be present, but the
  7408  // value will be replaced with "sensitive".
  7409  func (s DeleteWirelessDeviceInput) GoString() string {
  7410  	return s.String()
  7411  }
  7412  
  7413  // Validate inspects the fields of the type to determine if they are valid.
  7414  func (s *DeleteWirelessDeviceInput) Validate() error {
  7415  	invalidParams := request.ErrInvalidParams{Context: "DeleteWirelessDeviceInput"}
  7416  	if s.Id == nil {
  7417  		invalidParams.Add(request.NewErrParamRequired("Id"))
  7418  	}
  7419  	if s.Id != nil && len(*s.Id) < 1 {
  7420  		invalidParams.Add(request.NewErrParamMinLen("Id", 1))
  7421  	}
  7422  
  7423  	if invalidParams.Len() > 0 {
  7424  		return invalidParams
  7425  	}
  7426  	return nil
  7427  }
  7428  
  7429  // SetId sets the Id field's value.
  7430  func (s *DeleteWirelessDeviceInput) SetId(v string) *DeleteWirelessDeviceInput {
  7431  	s.Id = &v
  7432  	return s
  7433  }
  7434  
  7435  type DeleteWirelessDeviceOutput struct {
  7436  	_ struct{} `type:"structure" nopayload:"true"`
  7437  }
  7438  
  7439  // String returns the string representation.
  7440  //
  7441  // API parameter values that are decorated as "sensitive" in the API will not
  7442  // be included in the string output. The member name will be present, but the
  7443  // value will be replaced with "sensitive".
  7444  func (s DeleteWirelessDeviceOutput) String() string {
  7445  	return awsutil.Prettify(s)
  7446  }
  7447  
  7448  // GoString returns the string representation.
  7449  //
  7450  // API parameter values that are decorated as "sensitive" in the API will not
  7451  // be included in the string output. The member name will be present, but the
  7452  // value will be replaced with "sensitive".
  7453  func (s DeleteWirelessDeviceOutput) GoString() string {
  7454  	return s.String()
  7455  }
  7456  
  7457  type DeleteWirelessGatewayInput struct {
  7458  	_ struct{} `type:"structure" nopayload:"true"`
  7459  
  7460  	// The ID of the resource to delete.
  7461  	//
  7462  	// Id is a required field
  7463  	Id *string `location:"uri" locationName:"Id" type:"string" required:"true"`
  7464  }
  7465  
  7466  // String returns the string representation.
  7467  //
  7468  // API parameter values that are decorated as "sensitive" in the API will not
  7469  // be included in the string output. The member name will be present, but the
  7470  // value will be replaced with "sensitive".
  7471  func (s DeleteWirelessGatewayInput) String() string {
  7472  	return awsutil.Prettify(s)
  7473  }
  7474  
  7475  // GoString returns the string representation.
  7476  //
  7477  // API parameter values that are decorated as "sensitive" in the API will not
  7478  // be included in the string output. The member name will be present, but the
  7479  // value will be replaced with "sensitive".
  7480  func (s DeleteWirelessGatewayInput) GoString() string {
  7481  	return s.String()
  7482  }
  7483  
  7484  // Validate inspects the fields of the type to determine if they are valid.
  7485  func (s *DeleteWirelessGatewayInput) Validate() error {
  7486  	invalidParams := request.ErrInvalidParams{Context: "DeleteWirelessGatewayInput"}
  7487  	if s.Id == nil {
  7488  		invalidParams.Add(request.NewErrParamRequired("Id"))
  7489  	}
  7490  	if s.Id != nil && len(*s.Id) < 1 {
  7491  		invalidParams.Add(request.NewErrParamMinLen("Id", 1))
  7492  	}
  7493  
  7494  	if invalidParams.Len() > 0 {
  7495  		return invalidParams
  7496  	}
  7497  	return nil
  7498  }
  7499  
  7500  // SetId sets the Id field's value.
  7501  func (s *DeleteWirelessGatewayInput) SetId(v string) *DeleteWirelessGatewayInput {
  7502  	s.Id = &v
  7503  	return s
  7504  }
  7505  
  7506  type DeleteWirelessGatewayOutput struct {
  7507  	_ struct{} `type:"structure" nopayload:"true"`
  7508  }
  7509  
  7510  // String returns the string representation.
  7511  //
  7512  // API parameter values that are decorated as "sensitive" in the API will not
  7513  // be included in the string output. The member name will be present, but the
  7514  // value will be replaced with "sensitive".
  7515  func (s DeleteWirelessGatewayOutput) String() string {
  7516  	return awsutil.Prettify(s)
  7517  }
  7518  
  7519  // GoString returns the string representation.
  7520  //
  7521  // API parameter values that are decorated as "sensitive" in the API will not
  7522  // be included in the string output. The member name will be present, but the
  7523  // value will be replaced with "sensitive".
  7524  func (s DeleteWirelessGatewayOutput) GoString() string {
  7525  	return s.String()
  7526  }
  7527  
  7528  type DeleteWirelessGatewayTaskDefinitionInput struct {
  7529  	_ struct{} `type:"structure" nopayload:"true"`
  7530  
  7531  	// The ID of the resource to delete.
  7532  	//
  7533  	// Id is a required field
  7534  	Id *string `location:"uri" locationName:"Id" type:"string" required:"true"`
  7535  }
  7536  
  7537  // String returns the string representation.
  7538  //
  7539  // API parameter values that are decorated as "sensitive" in the API will not
  7540  // be included in the string output. The member name will be present, but the
  7541  // value will be replaced with "sensitive".
  7542  func (s DeleteWirelessGatewayTaskDefinitionInput) String() string {
  7543  	return awsutil.Prettify(s)
  7544  }
  7545  
  7546  // GoString returns the string representation.
  7547  //
  7548  // API parameter values that are decorated as "sensitive" in the API will not
  7549  // be included in the string output. The member name will be present, but the
  7550  // value will be replaced with "sensitive".
  7551  func (s DeleteWirelessGatewayTaskDefinitionInput) GoString() string {
  7552  	return s.String()
  7553  }
  7554  
  7555  // Validate inspects the fields of the type to determine if they are valid.
  7556  func (s *DeleteWirelessGatewayTaskDefinitionInput) Validate() error {
  7557  	invalidParams := request.ErrInvalidParams{Context: "DeleteWirelessGatewayTaskDefinitionInput"}
  7558  	if s.Id == nil {
  7559  		invalidParams.Add(request.NewErrParamRequired("Id"))
  7560  	}
  7561  	if s.Id != nil && len(*s.Id) < 1 {
  7562  		invalidParams.Add(request.NewErrParamMinLen("Id", 1))
  7563  	}
  7564  
  7565  	if invalidParams.Len() > 0 {
  7566  		return invalidParams
  7567  	}
  7568  	return nil
  7569  }
  7570  
  7571  // SetId sets the Id field's value.
  7572  func (s *DeleteWirelessGatewayTaskDefinitionInput) SetId(v string) *DeleteWirelessGatewayTaskDefinitionInput {
  7573  	s.Id = &v
  7574  	return s
  7575  }
  7576  
  7577  type DeleteWirelessGatewayTaskDefinitionOutput struct {
  7578  	_ struct{} `type:"structure" nopayload:"true"`
  7579  }
  7580  
  7581  // String returns the string representation.
  7582  //
  7583  // API parameter values that are decorated as "sensitive" in the API will not
  7584  // be included in the string output. The member name will be present, but the
  7585  // value will be replaced with "sensitive".
  7586  func (s DeleteWirelessGatewayTaskDefinitionOutput) String() string {
  7587  	return awsutil.Prettify(s)
  7588  }
  7589  
  7590  // GoString returns the string representation.
  7591  //
  7592  // API parameter values that are decorated as "sensitive" in the API will not
  7593  // be included in the string output. The member name will be present, but the
  7594  // value will be replaced with "sensitive".
  7595  func (s DeleteWirelessGatewayTaskDefinitionOutput) GoString() string {
  7596  	return s.String()
  7597  }
  7598  
  7599  type DeleteWirelessGatewayTaskInput struct {
  7600  	_ struct{} `type:"structure" nopayload:"true"`
  7601  
  7602  	// The ID of the resource to delete.
  7603  	//
  7604  	// Id is a required field
  7605  	Id *string `location:"uri" locationName:"Id" type:"string" required:"true"`
  7606  }
  7607  
  7608  // String returns the string representation.
  7609  //
  7610  // API parameter values that are decorated as "sensitive" in the API will not
  7611  // be included in the string output. The member name will be present, but the
  7612  // value will be replaced with "sensitive".
  7613  func (s DeleteWirelessGatewayTaskInput) String() string {
  7614  	return awsutil.Prettify(s)
  7615  }
  7616  
  7617  // GoString returns the string representation.
  7618  //
  7619  // API parameter values that are decorated as "sensitive" in the API will not
  7620  // be included in the string output. The member name will be present, but the
  7621  // value will be replaced with "sensitive".
  7622  func (s DeleteWirelessGatewayTaskInput) GoString() string {
  7623  	return s.String()
  7624  }
  7625  
  7626  // Validate inspects the fields of the type to determine if they are valid.
  7627  func (s *DeleteWirelessGatewayTaskInput) Validate() error {
  7628  	invalidParams := request.ErrInvalidParams{Context: "DeleteWirelessGatewayTaskInput"}
  7629  	if s.Id == nil {
  7630  		invalidParams.Add(request.NewErrParamRequired("Id"))
  7631  	}
  7632  	if s.Id != nil && len(*s.Id) < 1 {
  7633  		invalidParams.Add(request.NewErrParamMinLen("Id", 1))
  7634  	}
  7635  
  7636  	if invalidParams.Len() > 0 {
  7637  		return invalidParams
  7638  	}
  7639  	return nil
  7640  }
  7641  
  7642  // SetId sets the Id field's value.
  7643  func (s *DeleteWirelessGatewayTaskInput) SetId(v string) *DeleteWirelessGatewayTaskInput {
  7644  	s.Id = &v
  7645  	return s
  7646  }
  7647  
  7648  type DeleteWirelessGatewayTaskOutput struct {
  7649  	_ struct{} `type:"structure" nopayload:"true"`
  7650  }
  7651  
  7652  // String returns the string representation.
  7653  //
  7654  // API parameter values that are decorated as "sensitive" in the API will not
  7655  // be included in the string output. The member name will be present, but the
  7656  // value will be replaced with "sensitive".
  7657  func (s DeleteWirelessGatewayTaskOutput) String() string {
  7658  	return awsutil.Prettify(s)
  7659  }
  7660  
  7661  // GoString returns the string representation.
  7662  //
  7663  // API parameter values that are decorated as "sensitive" in the API will not
  7664  // be included in the string output. The member name will be present, but the
  7665  // value will be replaced with "sensitive".
  7666  func (s DeleteWirelessGatewayTaskOutput) GoString() string {
  7667  	return s.String()
  7668  }
  7669  
  7670  // Describes a destination.
  7671  type Destinations struct {
  7672  	_ struct{} `type:"structure"`
  7673  
  7674  	// The Amazon Resource Name of the resource.
  7675  	Arn *string `type:"string"`
  7676  
  7677  	// The description of the resource.
  7678  	Description *string `type:"string"`
  7679  
  7680  	// The rule name or topic rule to send messages to.
  7681  	Expression *string `type:"string"`
  7682  
  7683  	// The type of value in Expression.
  7684  	ExpressionType *string `type:"string" enum:"ExpressionType"`
  7685  
  7686  	// The name of the resource.
  7687  	Name *string `type:"string"`
  7688  
  7689  	// The ARN of the IAM Role that authorizes the destination.
  7690  	RoleArn *string `min:"20" type:"string"`
  7691  }
  7692  
  7693  // String returns the string representation.
  7694  //
  7695  // API parameter values that are decorated as "sensitive" in the API will not
  7696  // be included in the string output. The member name will be present, but the
  7697  // value will be replaced with "sensitive".
  7698  func (s Destinations) String() string {
  7699  	return awsutil.Prettify(s)
  7700  }
  7701  
  7702  // GoString returns the string representation.
  7703  //
  7704  // API parameter values that are decorated as "sensitive" in the API will not
  7705  // be included in the string output. The member name will be present, but the
  7706  // value will be replaced with "sensitive".
  7707  func (s Destinations) GoString() string {
  7708  	return s.String()
  7709  }
  7710  
  7711  // SetArn sets the Arn field's value.
  7712  func (s *Destinations) SetArn(v string) *Destinations {
  7713  	s.Arn = &v
  7714  	return s
  7715  }
  7716  
  7717  // SetDescription sets the Description field's value.
  7718  func (s *Destinations) SetDescription(v string) *Destinations {
  7719  	s.Description = &v
  7720  	return s
  7721  }
  7722  
  7723  // SetExpression sets the Expression field's value.
  7724  func (s *Destinations) SetExpression(v string) *Destinations {
  7725  	s.Expression = &v
  7726  	return s
  7727  }
  7728  
  7729  // SetExpressionType sets the ExpressionType field's value.
  7730  func (s *Destinations) SetExpressionType(v string) *Destinations {
  7731  	s.ExpressionType = &v
  7732  	return s
  7733  }
  7734  
  7735  // SetName sets the Name field's value.
  7736  func (s *Destinations) SetName(v string) *Destinations {
  7737  	s.Name = &v
  7738  	return s
  7739  }
  7740  
  7741  // SetRoleArn sets the RoleArn field's value.
  7742  func (s *Destinations) SetRoleArn(v string) *Destinations {
  7743  	s.RoleArn = &v
  7744  	return s
  7745  }
  7746  
  7747  // Describes a device profile.
  7748  type DeviceProfile struct {
  7749  	_ struct{} `type:"structure"`
  7750  
  7751  	// The Amazon Resource Name of the resource.
  7752  	Arn *string `type:"string"`
  7753  
  7754  	// The ID of the device profile.
  7755  	Id *string `type:"string"`
  7756  
  7757  	// The name of the resource.
  7758  	Name *string `type:"string"`
  7759  }
  7760  
  7761  // String returns the string representation.
  7762  //
  7763  // API parameter values that are decorated as "sensitive" in the API will not
  7764  // be included in the string output. The member name will be present, but the
  7765  // value will be replaced with "sensitive".
  7766  func (s DeviceProfile) String() string {
  7767  	return awsutil.Prettify(s)
  7768  }
  7769  
  7770  // GoString returns the string representation.
  7771  //
  7772  // API parameter values that are decorated as "sensitive" in the API will not
  7773  // be included in the string output. The member name will be present, but the
  7774  // value will be replaced with "sensitive".
  7775  func (s DeviceProfile) GoString() string {
  7776  	return s.String()
  7777  }
  7778  
  7779  // SetArn sets the Arn field's value.
  7780  func (s *DeviceProfile) SetArn(v string) *DeviceProfile {
  7781  	s.Arn = &v
  7782  	return s
  7783  }
  7784  
  7785  // SetId sets the Id field's value.
  7786  func (s *DeviceProfile) SetId(v string) *DeviceProfile {
  7787  	s.Id = &v
  7788  	return s
  7789  }
  7790  
  7791  // SetName sets the Name field's value.
  7792  func (s *DeviceProfile) SetName(v string) *DeviceProfile {
  7793  	s.Name = &v
  7794  	return s
  7795  }
  7796  
  7797  type DisassociateAwsAccountFromPartnerAccountInput struct {
  7798  	_ struct{} `type:"structure" nopayload:"true"`
  7799  
  7800  	// The partner account ID to disassociate from the AWS account.
  7801  	//
  7802  	// PartnerAccountId is a required field
  7803  	PartnerAccountId *string `location:"uri" locationName:"PartnerAccountId" type:"string" required:"true"`
  7804  
  7805  	// The partner type.
  7806  	//
  7807  	// PartnerType is a required field
  7808  	PartnerType *string `location:"querystring" locationName:"partnerType" type:"string" required:"true" enum:"PartnerType"`
  7809  }
  7810  
  7811  // String returns the string representation.
  7812  //
  7813  // API parameter values that are decorated as "sensitive" in the API will not
  7814  // be included in the string output. The member name will be present, but the
  7815  // value will be replaced with "sensitive".
  7816  func (s DisassociateAwsAccountFromPartnerAccountInput) String() string {
  7817  	return awsutil.Prettify(s)
  7818  }
  7819  
  7820  // GoString returns the string representation.
  7821  //
  7822  // API parameter values that are decorated as "sensitive" in the API will not
  7823  // be included in the string output. The member name will be present, but the
  7824  // value will be replaced with "sensitive".
  7825  func (s DisassociateAwsAccountFromPartnerAccountInput) GoString() string {
  7826  	return s.String()
  7827  }
  7828  
  7829  // Validate inspects the fields of the type to determine if they are valid.
  7830  func (s *DisassociateAwsAccountFromPartnerAccountInput) Validate() error {
  7831  	invalidParams := request.ErrInvalidParams{Context: "DisassociateAwsAccountFromPartnerAccountInput"}
  7832  	if s.PartnerAccountId == nil {
  7833  		invalidParams.Add(request.NewErrParamRequired("PartnerAccountId"))
  7834  	}
  7835  	if s.PartnerAccountId != nil && len(*s.PartnerAccountId) < 1 {
  7836  		invalidParams.Add(request.NewErrParamMinLen("PartnerAccountId", 1))
  7837  	}
  7838  	if s.PartnerType == nil {
  7839  		invalidParams.Add(request.NewErrParamRequired("PartnerType"))
  7840  	}
  7841  
  7842  	if invalidParams.Len() > 0 {
  7843  		return invalidParams
  7844  	}
  7845  	return nil
  7846  }
  7847  
  7848  // SetPartnerAccountId sets the PartnerAccountId field's value.
  7849  func (s *DisassociateAwsAccountFromPartnerAccountInput) SetPartnerAccountId(v string) *DisassociateAwsAccountFromPartnerAccountInput {
  7850  	s.PartnerAccountId = &v
  7851  	return s
  7852  }
  7853  
  7854  // SetPartnerType sets the PartnerType field's value.
  7855  func (s *DisassociateAwsAccountFromPartnerAccountInput) SetPartnerType(v string) *DisassociateAwsAccountFromPartnerAccountInput {
  7856  	s.PartnerType = &v
  7857  	return s
  7858  }
  7859  
  7860  type DisassociateAwsAccountFromPartnerAccountOutput struct {
  7861  	_ struct{} `type:"structure" nopayload:"true"`
  7862  }
  7863  
  7864  // String returns the string representation.
  7865  //
  7866  // API parameter values that are decorated as "sensitive" in the API will not
  7867  // be included in the string output. The member name will be present, but the
  7868  // value will be replaced with "sensitive".
  7869  func (s DisassociateAwsAccountFromPartnerAccountOutput) String() string {
  7870  	return awsutil.Prettify(s)
  7871  }
  7872  
  7873  // GoString returns the string representation.
  7874  //
  7875  // API parameter values that are decorated as "sensitive" in the API will not
  7876  // be included in the string output. The member name will be present, but the
  7877  // value will be replaced with "sensitive".
  7878  func (s DisassociateAwsAccountFromPartnerAccountOutput) GoString() string {
  7879  	return s.String()
  7880  }
  7881  
  7882  type DisassociateWirelessDeviceFromThingInput struct {
  7883  	_ struct{} `type:"structure" nopayload:"true"`
  7884  
  7885  	// The ID of the resource to update.
  7886  	//
  7887  	// Id is a required field
  7888  	Id *string `location:"uri" locationName:"Id" type:"string" required:"true"`
  7889  }
  7890  
  7891  // String returns the string representation.
  7892  //
  7893  // API parameter values that are decorated as "sensitive" in the API will not
  7894  // be included in the string output. The member name will be present, but the
  7895  // value will be replaced with "sensitive".
  7896  func (s DisassociateWirelessDeviceFromThingInput) String() string {
  7897  	return awsutil.Prettify(s)
  7898  }
  7899  
  7900  // GoString returns the string representation.
  7901  //
  7902  // API parameter values that are decorated as "sensitive" in the API will not
  7903  // be included in the string output. The member name will be present, but the
  7904  // value will be replaced with "sensitive".
  7905  func (s DisassociateWirelessDeviceFromThingInput) GoString() string {
  7906  	return s.String()
  7907  }
  7908  
  7909  // Validate inspects the fields of the type to determine if they are valid.
  7910  func (s *DisassociateWirelessDeviceFromThingInput) Validate() error {
  7911  	invalidParams := request.ErrInvalidParams{Context: "DisassociateWirelessDeviceFromThingInput"}
  7912  	if s.Id == nil {
  7913  		invalidParams.Add(request.NewErrParamRequired("Id"))
  7914  	}
  7915  	if s.Id != nil && len(*s.Id) < 1 {
  7916  		invalidParams.Add(request.NewErrParamMinLen("Id", 1))
  7917  	}
  7918  
  7919  	if invalidParams.Len() > 0 {
  7920  		return invalidParams
  7921  	}
  7922  	return nil
  7923  }
  7924  
  7925  // SetId sets the Id field's value.
  7926  func (s *DisassociateWirelessDeviceFromThingInput) SetId(v string) *DisassociateWirelessDeviceFromThingInput {
  7927  	s.Id = &v
  7928  	return s
  7929  }
  7930  
  7931  type DisassociateWirelessDeviceFromThingOutput struct {
  7932  	_ struct{} `type:"structure" nopayload:"true"`
  7933  }
  7934  
  7935  // String returns the string representation.
  7936  //
  7937  // API parameter values that are decorated as "sensitive" in the API will not
  7938  // be included in the string output. The member name will be present, but the
  7939  // value will be replaced with "sensitive".
  7940  func (s DisassociateWirelessDeviceFromThingOutput) String() string {
  7941  	return awsutil.Prettify(s)
  7942  }
  7943  
  7944  // GoString returns the string representation.
  7945  //
  7946  // API parameter values that are decorated as "sensitive" in the API will not
  7947  // be included in the string output. The member name will be present, but the
  7948  // value will be replaced with "sensitive".
  7949  func (s DisassociateWirelessDeviceFromThingOutput) GoString() string {
  7950  	return s.String()
  7951  }
  7952  
  7953  type DisassociateWirelessGatewayFromCertificateInput struct {
  7954  	_ struct{} `type:"structure" nopayload:"true"`
  7955  
  7956  	// The ID of the resource to update.
  7957  	//
  7958  	// Id is a required field
  7959  	Id *string `location:"uri" locationName:"Id" type:"string" required:"true"`
  7960  }
  7961  
  7962  // String returns the string representation.
  7963  //
  7964  // API parameter values that are decorated as "sensitive" in the API will not
  7965  // be included in the string output. The member name will be present, but the
  7966  // value will be replaced with "sensitive".
  7967  func (s DisassociateWirelessGatewayFromCertificateInput) String() string {
  7968  	return awsutil.Prettify(s)
  7969  }
  7970  
  7971  // GoString returns the string representation.
  7972  //
  7973  // API parameter values that are decorated as "sensitive" in the API will not
  7974  // be included in the string output. The member name will be present, but the
  7975  // value will be replaced with "sensitive".
  7976  func (s DisassociateWirelessGatewayFromCertificateInput) GoString() string {
  7977  	return s.String()
  7978  }
  7979  
  7980  // Validate inspects the fields of the type to determine if they are valid.
  7981  func (s *DisassociateWirelessGatewayFromCertificateInput) Validate() error {
  7982  	invalidParams := request.ErrInvalidParams{Context: "DisassociateWirelessGatewayFromCertificateInput"}
  7983  	if s.Id == nil {
  7984  		invalidParams.Add(request.NewErrParamRequired("Id"))
  7985  	}
  7986  	if s.Id != nil && len(*s.Id) < 1 {
  7987  		invalidParams.Add(request.NewErrParamMinLen("Id", 1))
  7988  	}
  7989  
  7990  	if invalidParams.Len() > 0 {
  7991  		return invalidParams
  7992  	}
  7993  	return nil
  7994  }
  7995  
  7996  // SetId sets the Id field's value.
  7997  func (s *DisassociateWirelessGatewayFromCertificateInput) SetId(v string) *DisassociateWirelessGatewayFromCertificateInput {
  7998  	s.Id = &v
  7999  	return s
  8000  }
  8001  
  8002  type DisassociateWirelessGatewayFromCertificateOutput struct {
  8003  	_ struct{} `type:"structure" nopayload:"true"`
  8004  }
  8005  
  8006  // String returns the string representation.
  8007  //
  8008  // API parameter values that are decorated as "sensitive" in the API will not
  8009  // be included in the string output. The member name will be present, but the
  8010  // value will be replaced with "sensitive".
  8011  func (s DisassociateWirelessGatewayFromCertificateOutput) String() string {
  8012  	return awsutil.Prettify(s)
  8013  }
  8014  
  8015  // GoString returns the string representation.
  8016  //
  8017  // API parameter values that are decorated as "sensitive" in the API will not
  8018  // be included in the string output. The member name will be present, but the
  8019  // value will be replaced with "sensitive".
  8020  func (s DisassociateWirelessGatewayFromCertificateOutput) GoString() string {
  8021  	return s.String()
  8022  }
  8023  
  8024  type DisassociateWirelessGatewayFromThingInput struct {
  8025  	_ struct{} `type:"structure" nopayload:"true"`
  8026  
  8027  	// The ID of the resource to update.
  8028  	//
  8029  	// Id is a required field
  8030  	Id *string `location:"uri" locationName:"Id" type:"string" required:"true"`
  8031  }
  8032  
  8033  // String returns the string representation.
  8034  //
  8035  // API parameter values that are decorated as "sensitive" in the API will not
  8036  // be included in the string output. The member name will be present, but the
  8037  // value will be replaced with "sensitive".
  8038  func (s DisassociateWirelessGatewayFromThingInput) String() string {
  8039  	return awsutil.Prettify(s)
  8040  }
  8041  
  8042  // GoString returns the string representation.
  8043  //
  8044  // API parameter values that are decorated as "sensitive" in the API will not
  8045  // be included in the string output. The member name will be present, but the
  8046  // value will be replaced with "sensitive".
  8047  func (s DisassociateWirelessGatewayFromThingInput) GoString() string {
  8048  	return s.String()
  8049  }
  8050  
  8051  // Validate inspects the fields of the type to determine if they are valid.
  8052  func (s *DisassociateWirelessGatewayFromThingInput) Validate() error {
  8053  	invalidParams := request.ErrInvalidParams{Context: "DisassociateWirelessGatewayFromThingInput"}
  8054  	if s.Id == nil {
  8055  		invalidParams.Add(request.NewErrParamRequired("Id"))
  8056  	}
  8057  	if s.Id != nil && len(*s.Id) < 1 {
  8058  		invalidParams.Add(request.NewErrParamMinLen("Id", 1))
  8059  	}
  8060  
  8061  	if invalidParams.Len() > 0 {
  8062  		return invalidParams
  8063  	}
  8064  	return nil
  8065  }
  8066  
  8067  // SetId sets the Id field's value.
  8068  func (s *DisassociateWirelessGatewayFromThingInput) SetId(v string) *DisassociateWirelessGatewayFromThingInput {
  8069  	s.Id = &v
  8070  	return s
  8071  }
  8072  
  8073  type DisassociateWirelessGatewayFromThingOutput struct {
  8074  	_ struct{} `type:"structure" nopayload:"true"`
  8075  }
  8076  
  8077  // String returns the string representation.
  8078  //
  8079  // API parameter values that are decorated as "sensitive" in the API will not
  8080  // be included in the string output. The member name will be present, but the
  8081  // value will be replaced with "sensitive".
  8082  func (s DisassociateWirelessGatewayFromThingOutput) String() string {
  8083  	return awsutil.Prettify(s)
  8084  }
  8085  
  8086  // GoString returns the string representation.
  8087  //
  8088  // API parameter values that are decorated as "sensitive" in the API will not
  8089  // be included in the string output. The member name will be present, but the
  8090  // value will be replaced with "sensitive".
  8091  func (s DisassociateWirelessGatewayFromThingOutput) GoString() string {
  8092  	return s.String()
  8093  }
  8094  
  8095  type GetDestinationInput struct {
  8096  	_ struct{} `type:"structure" nopayload:"true"`
  8097  
  8098  	// The name of the resource to get.
  8099  	//
  8100  	// Name is a required field
  8101  	Name *string `location:"uri" locationName:"Name" type:"string" required:"true"`
  8102  }
  8103  
  8104  // String returns the string representation.
  8105  //
  8106  // API parameter values that are decorated as "sensitive" in the API will not
  8107  // be included in the string output. The member name will be present, but the
  8108  // value will be replaced with "sensitive".
  8109  func (s GetDestinationInput) String() string {
  8110  	return awsutil.Prettify(s)
  8111  }
  8112  
  8113  // GoString returns the string representation.
  8114  //
  8115  // API parameter values that are decorated as "sensitive" in the API will not
  8116  // be included in the string output. The member name will be present, but the
  8117  // value will be replaced with "sensitive".
  8118  func (s GetDestinationInput) GoString() string {
  8119  	return s.String()
  8120  }
  8121  
  8122  // Validate inspects the fields of the type to determine if they are valid.
  8123  func (s *GetDestinationInput) Validate() error {
  8124  	invalidParams := request.ErrInvalidParams{Context: "GetDestinationInput"}
  8125  	if s.Name == nil {
  8126  		invalidParams.Add(request.NewErrParamRequired("Name"))
  8127  	}
  8128  	if s.Name != nil && len(*s.Name) < 1 {
  8129  		invalidParams.Add(request.NewErrParamMinLen("Name", 1))
  8130  	}
  8131  
  8132  	if invalidParams.Len() > 0 {
  8133  		return invalidParams
  8134  	}
  8135  	return nil
  8136  }
  8137  
  8138  // SetName sets the Name field's value.
  8139  func (s *GetDestinationInput) SetName(v string) *GetDestinationInput {
  8140  	s.Name = &v
  8141  	return s
  8142  }
  8143  
  8144  type GetDestinationOutput struct {
  8145  	_ struct{} `type:"structure"`
  8146  
  8147  	// The Amazon Resource Name of the resource.
  8148  	Arn *string `type:"string"`
  8149  
  8150  	// The description of the resource.
  8151  	Description *string `type:"string"`
  8152  
  8153  	// The rule name or topic rule to send messages to.
  8154  	Expression *string `type:"string"`
  8155  
  8156  	// The type of value in Expression.
  8157  	ExpressionType *string `type:"string" enum:"ExpressionType"`
  8158  
  8159  	// The name of the resource.
  8160  	Name *string `type:"string"`
  8161  
  8162  	// The ARN of the IAM Role that authorizes the destination.
  8163  	RoleArn *string `min:"20" type:"string"`
  8164  }
  8165  
  8166  // String returns the string representation.
  8167  //
  8168  // API parameter values that are decorated as "sensitive" in the API will not
  8169  // be included in the string output. The member name will be present, but the
  8170  // value will be replaced with "sensitive".
  8171  func (s GetDestinationOutput) String() string {
  8172  	return awsutil.Prettify(s)
  8173  }
  8174  
  8175  // GoString returns the string representation.
  8176  //
  8177  // API parameter values that are decorated as "sensitive" in the API will not
  8178  // be included in the string output. The member name will be present, but the
  8179  // value will be replaced with "sensitive".
  8180  func (s GetDestinationOutput) GoString() string {
  8181  	return s.String()
  8182  }
  8183  
  8184  // SetArn sets the Arn field's value.
  8185  func (s *GetDestinationOutput) SetArn(v string) *GetDestinationOutput {
  8186  	s.Arn = &v
  8187  	return s
  8188  }
  8189  
  8190  // SetDescription sets the Description field's value.
  8191  func (s *GetDestinationOutput) SetDescription(v string) *GetDestinationOutput {
  8192  	s.Description = &v
  8193  	return s
  8194  }
  8195  
  8196  // SetExpression sets the Expression field's value.
  8197  func (s *GetDestinationOutput) SetExpression(v string) *GetDestinationOutput {
  8198  	s.Expression = &v
  8199  	return s
  8200  }
  8201  
  8202  // SetExpressionType sets the ExpressionType field's value.
  8203  func (s *GetDestinationOutput) SetExpressionType(v string) *GetDestinationOutput {
  8204  	s.ExpressionType = &v
  8205  	return s
  8206  }
  8207  
  8208  // SetName sets the Name field's value.
  8209  func (s *GetDestinationOutput) SetName(v string) *GetDestinationOutput {
  8210  	s.Name = &v
  8211  	return s
  8212  }
  8213  
  8214  // SetRoleArn sets the RoleArn field's value.
  8215  func (s *GetDestinationOutput) SetRoleArn(v string) *GetDestinationOutput {
  8216  	s.RoleArn = &v
  8217  	return s
  8218  }
  8219  
  8220  type GetDeviceProfileInput struct {
  8221  	_ struct{} `type:"structure" nopayload:"true"`
  8222  
  8223  	// The ID of the resource to get.
  8224  	//
  8225  	// Id is a required field
  8226  	Id *string `location:"uri" locationName:"Id" type:"string" required:"true"`
  8227  }
  8228  
  8229  // String returns the string representation.
  8230  //
  8231  // API parameter values that are decorated as "sensitive" in the API will not
  8232  // be included in the string output. The member name will be present, but the
  8233  // value will be replaced with "sensitive".
  8234  func (s GetDeviceProfileInput) String() string {
  8235  	return awsutil.Prettify(s)
  8236  }
  8237  
  8238  // GoString returns the string representation.
  8239  //
  8240  // API parameter values that are decorated as "sensitive" in the API will not
  8241  // be included in the string output. The member name will be present, but the
  8242  // value will be replaced with "sensitive".
  8243  func (s GetDeviceProfileInput) GoString() string {
  8244  	return s.String()
  8245  }
  8246  
  8247  // Validate inspects the fields of the type to determine if they are valid.
  8248  func (s *GetDeviceProfileInput) Validate() error {
  8249  	invalidParams := request.ErrInvalidParams{Context: "GetDeviceProfileInput"}
  8250  	if s.Id == nil {
  8251  		invalidParams.Add(request.NewErrParamRequired("Id"))
  8252  	}
  8253  	if s.Id != nil && len(*s.Id) < 1 {
  8254  		invalidParams.Add(request.NewErrParamMinLen("Id", 1))
  8255  	}
  8256  
  8257  	if invalidParams.Len() > 0 {
  8258  		return invalidParams
  8259  	}
  8260  	return nil
  8261  }
  8262  
  8263  // SetId sets the Id field's value.
  8264  func (s *GetDeviceProfileInput) SetId(v string) *GetDeviceProfileInput {
  8265  	s.Id = &v
  8266  	return s
  8267  }
  8268  
  8269  type GetDeviceProfileOutput struct {
  8270  	_ struct{} `type:"structure"`
  8271  
  8272  	// The Amazon Resource Name of the resource.
  8273  	Arn *string `type:"string"`
  8274  
  8275  	// The ID of the device profile.
  8276  	Id *string `type:"string"`
  8277  
  8278  	// Information about the device profile.
  8279  	LoRaWAN *LoRaWANDeviceProfile `type:"structure"`
  8280  
  8281  	// The name of the resource.
  8282  	Name *string `type:"string"`
  8283  }
  8284  
  8285  // String returns the string representation.
  8286  //
  8287  // API parameter values that are decorated as "sensitive" in the API will not
  8288  // be included in the string output. The member name will be present, but the
  8289  // value will be replaced with "sensitive".
  8290  func (s GetDeviceProfileOutput) String() string {
  8291  	return awsutil.Prettify(s)
  8292  }
  8293  
  8294  // GoString returns the string representation.
  8295  //
  8296  // API parameter values that are decorated as "sensitive" in the API will not
  8297  // be included in the string output. The member name will be present, but the
  8298  // value will be replaced with "sensitive".
  8299  func (s GetDeviceProfileOutput) GoString() string {
  8300  	return s.String()
  8301  }
  8302  
  8303  // SetArn sets the Arn field's value.
  8304  func (s *GetDeviceProfileOutput) SetArn(v string) *GetDeviceProfileOutput {
  8305  	s.Arn = &v
  8306  	return s
  8307  }
  8308  
  8309  // SetId sets the Id field's value.
  8310  func (s *GetDeviceProfileOutput) SetId(v string) *GetDeviceProfileOutput {
  8311  	s.Id = &v
  8312  	return s
  8313  }
  8314  
  8315  // SetLoRaWAN sets the LoRaWAN field's value.
  8316  func (s *GetDeviceProfileOutput) SetLoRaWAN(v *LoRaWANDeviceProfile) *GetDeviceProfileOutput {
  8317  	s.LoRaWAN = v
  8318  	return s
  8319  }
  8320  
  8321  // SetName sets the Name field's value.
  8322  func (s *GetDeviceProfileOutput) SetName(v string) *GetDeviceProfileOutput {
  8323  	s.Name = &v
  8324  	return s
  8325  }
  8326  
  8327  type GetLogLevelsByResourceTypesInput struct {
  8328  	_ struct{} `type:"structure" nopayload:"true"`
  8329  }
  8330  
  8331  // String returns the string representation.
  8332  //
  8333  // API parameter values that are decorated as "sensitive" in the API will not
  8334  // be included in the string output. The member name will be present, but the
  8335  // value will be replaced with "sensitive".
  8336  func (s GetLogLevelsByResourceTypesInput) String() string {
  8337  	return awsutil.Prettify(s)
  8338  }
  8339  
  8340  // GoString returns the string representation.
  8341  //
  8342  // API parameter values that are decorated as "sensitive" in the API will not
  8343  // be included in the string output. The member name will be present, but the
  8344  // value will be replaced with "sensitive".
  8345  func (s GetLogLevelsByResourceTypesInput) GoString() string {
  8346  	return s.String()
  8347  }
  8348  
  8349  type GetLogLevelsByResourceTypesOutput struct {
  8350  	_ struct{} `type:"structure"`
  8351  
  8352  	// The log level for a log message.
  8353  	DefaultLogLevel *string `type:"string" enum:"LogLevel"`
  8354  
  8355  	// The list of wireless device log options.
  8356  	WirelessDeviceLogOptions []*WirelessDeviceLogOption `type:"list"`
  8357  
  8358  	// The list of wireless gateway log options.
  8359  	WirelessGatewayLogOptions []*WirelessGatewayLogOption `type:"list"`
  8360  }
  8361  
  8362  // String returns the string representation.
  8363  //
  8364  // API parameter values that are decorated as "sensitive" in the API will not
  8365  // be included in the string output. The member name will be present, but the
  8366  // value will be replaced with "sensitive".
  8367  func (s GetLogLevelsByResourceTypesOutput) String() string {
  8368  	return awsutil.Prettify(s)
  8369  }
  8370  
  8371  // GoString returns the string representation.
  8372  //
  8373  // API parameter values that are decorated as "sensitive" in the API will not
  8374  // be included in the string output. The member name will be present, but the
  8375  // value will be replaced with "sensitive".
  8376  func (s GetLogLevelsByResourceTypesOutput) GoString() string {
  8377  	return s.String()
  8378  }
  8379  
  8380  // SetDefaultLogLevel sets the DefaultLogLevel field's value.
  8381  func (s *GetLogLevelsByResourceTypesOutput) SetDefaultLogLevel(v string) *GetLogLevelsByResourceTypesOutput {
  8382  	s.DefaultLogLevel = &v
  8383  	return s
  8384  }
  8385  
  8386  // SetWirelessDeviceLogOptions sets the WirelessDeviceLogOptions field's value.
  8387  func (s *GetLogLevelsByResourceTypesOutput) SetWirelessDeviceLogOptions(v []*WirelessDeviceLogOption) *GetLogLevelsByResourceTypesOutput {
  8388  	s.WirelessDeviceLogOptions = v
  8389  	return s
  8390  }
  8391  
  8392  // SetWirelessGatewayLogOptions sets the WirelessGatewayLogOptions field's value.
  8393  func (s *GetLogLevelsByResourceTypesOutput) SetWirelessGatewayLogOptions(v []*WirelessGatewayLogOption) *GetLogLevelsByResourceTypesOutput {
  8394  	s.WirelessGatewayLogOptions = v
  8395  	return s
  8396  }
  8397  
  8398  type GetPartnerAccountInput struct {
  8399  	_ struct{} `type:"structure" nopayload:"true"`
  8400  
  8401  	// The partner account ID to disassociate from the AWS account.
  8402  	//
  8403  	// PartnerAccountId is a required field
  8404  	PartnerAccountId *string `location:"uri" locationName:"PartnerAccountId" type:"string" required:"true"`
  8405  
  8406  	// The partner type.
  8407  	//
  8408  	// PartnerType is a required field
  8409  	PartnerType *string `location:"querystring" locationName:"partnerType" type:"string" required:"true" enum:"PartnerType"`
  8410  }
  8411  
  8412  // String returns the string representation.
  8413  //
  8414  // API parameter values that are decorated as "sensitive" in the API will not
  8415  // be included in the string output. The member name will be present, but the
  8416  // value will be replaced with "sensitive".
  8417  func (s GetPartnerAccountInput) String() string {
  8418  	return awsutil.Prettify(s)
  8419  }
  8420  
  8421  // GoString returns the string representation.
  8422  //
  8423  // API parameter values that are decorated as "sensitive" in the API will not
  8424  // be included in the string output. The member name will be present, but the
  8425  // value will be replaced with "sensitive".
  8426  func (s GetPartnerAccountInput) GoString() string {
  8427  	return s.String()
  8428  }
  8429  
  8430  // Validate inspects the fields of the type to determine if they are valid.
  8431  func (s *GetPartnerAccountInput) Validate() error {
  8432  	invalidParams := request.ErrInvalidParams{Context: "GetPartnerAccountInput"}
  8433  	if s.PartnerAccountId == nil {
  8434  		invalidParams.Add(request.NewErrParamRequired("PartnerAccountId"))
  8435  	}
  8436  	if s.PartnerAccountId != nil && len(*s.PartnerAccountId) < 1 {
  8437  		invalidParams.Add(request.NewErrParamMinLen("PartnerAccountId", 1))
  8438  	}
  8439  	if s.PartnerType == nil {
  8440  		invalidParams.Add(request.NewErrParamRequired("PartnerType"))
  8441  	}
  8442  
  8443  	if invalidParams.Len() > 0 {
  8444  		return invalidParams
  8445  	}
  8446  	return nil
  8447  }
  8448  
  8449  // SetPartnerAccountId sets the PartnerAccountId field's value.
  8450  func (s *GetPartnerAccountInput) SetPartnerAccountId(v string) *GetPartnerAccountInput {
  8451  	s.PartnerAccountId = &v
  8452  	return s
  8453  }
  8454  
  8455  // SetPartnerType sets the PartnerType field's value.
  8456  func (s *GetPartnerAccountInput) SetPartnerType(v string) *GetPartnerAccountInput {
  8457  	s.PartnerType = &v
  8458  	return s
  8459  }
  8460  
  8461  type GetPartnerAccountOutput struct {
  8462  	_ struct{} `type:"structure"`
  8463  
  8464  	// Whether the partner account is linked to the AWS account.
  8465  	AccountLinked *bool `type:"boolean"`
  8466  
  8467  	// The Sidewalk account credentials.
  8468  	Sidewalk *SidewalkAccountInfoWithFingerprint `type:"structure"`
  8469  }
  8470  
  8471  // String returns the string representation.
  8472  //
  8473  // API parameter values that are decorated as "sensitive" in the API will not
  8474  // be included in the string output. The member name will be present, but the
  8475  // value will be replaced with "sensitive".
  8476  func (s GetPartnerAccountOutput) String() string {
  8477  	return awsutil.Prettify(s)
  8478  }
  8479  
  8480  // GoString returns the string representation.
  8481  //
  8482  // API parameter values that are decorated as "sensitive" in the API will not
  8483  // be included in the string output. The member name will be present, but the
  8484  // value will be replaced with "sensitive".
  8485  func (s GetPartnerAccountOutput) GoString() string {
  8486  	return s.String()
  8487  }
  8488  
  8489  // SetAccountLinked sets the AccountLinked field's value.
  8490  func (s *GetPartnerAccountOutput) SetAccountLinked(v bool) *GetPartnerAccountOutput {
  8491  	s.AccountLinked = &v
  8492  	return s
  8493  }
  8494  
  8495  // SetSidewalk sets the Sidewalk field's value.
  8496  func (s *GetPartnerAccountOutput) SetSidewalk(v *SidewalkAccountInfoWithFingerprint) *GetPartnerAccountOutput {
  8497  	s.Sidewalk = v
  8498  	return s
  8499  }
  8500  
  8501  type GetResourceLogLevelInput struct {
  8502  	_ struct{} `type:"structure" nopayload:"true"`
  8503  
  8504  	// The identifier of the resource. For a Wireless Device, it is the wireless
  8505  	// device ID. For a wireless gateway, it is the wireless gateway ID.
  8506  	//
  8507  	// ResourceIdentifier is a required field
  8508  	ResourceIdentifier *string `location:"uri" locationName:"ResourceIdentifier" type:"string" required:"true"`
  8509  
  8510  	// The type of the resource, which can be WirelessDevice or WirelessGateway.
  8511  	//
  8512  	// ResourceType is a required field
  8513  	ResourceType *string `location:"querystring" locationName:"resourceType" type:"string" required:"true"`
  8514  }
  8515  
  8516  // String returns the string representation.
  8517  //
  8518  // API parameter values that are decorated as "sensitive" in the API will not
  8519  // be included in the string output. The member name will be present, but the
  8520  // value will be replaced with "sensitive".
  8521  func (s GetResourceLogLevelInput) String() string {
  8522  	return awsutil.Prettify(s)
  8523  }
  8524  
  8525  // GoString returns the string representation.
  8526  //
  8527  // API parameter values that are decorated as "sensitive" in the API will not
  8528  // be included in the string output. The member name will be present, but the
  8529  // value will be replaced with "sensitive".
  8530  func (s GetResourceLogLevelInput) GoString() string {
  8531  	return s.String()
  8532  }
  8533  
  8534  // Validate inspects the fields of the type to determine if they are valid.
  8535  func (s *GetResourceLogLevelInput) Validate() error {
  8536  	invalidParams := request.ErrInvalidParams{Context: "GetResourceLogLevelInput"}
  8537  	if s.ResourceIdentifier == nil {
  8538  		invalidParams.Add(request.NewErrParamRequired("ResourceIdentifier"))
  8539  	}
  8540  	if s.ResourceIdentifier != nil && len(*s.ResourceIdentifier) < 1 {
  8541  		invalidParams.Add(request.NewErrParamMinLen("ResourceIdentifier", 1))
  8542  	}
  8543  	if s.ResourceType == nil {
  8544  		invalidParams.Add(request.NewErrParamRequired("ResourceType"))
  8545  	}
  8546  
  8547  	if invalidParams.Len() > 0 {
  8548  		return invalidParams
  8549  	}
  8550  	return nil
  8551  }
  8552  
  8553  // SetResourceIdentifier sets the ResourceIdentifier field's value.
  8554  func (s *GetResourceLogLevelInput) SetResourceIdentifier(v string) *GetResourceLogLevelInput {
  8555  	s.ResourceIdentifier = &v
  8556  	return s
  8557  }
  8558  
  8559  // SetResourceType sets the ResourceType field's value.
  8560  func (s *GetResourceLogLevelInput) SetResourceType(v string) *GetResourceLogLevelInput {
  8561  	s.ResourceType = &v
  8562  	return s
  8563  }
  8564  
  8565  type GetResourceLogLevelOutput struct {
  8566  	_ struct{} `type:"structure"`
  8567  
  8568  	// The log level for a log message.
  8569  	LogLevel *string `type:"string" enum:"LogLevel"`
  8570  }
  8571  
  8572  // String returns the string representation.
  8573  //
  8574  // API parameter values that are decorated as "sensitive" in the API will not
  8575  // be included in the string output. The member name will be present, but the
  8576  // value will be replaced with "sensitive".
  8577  func (s GetResourceLogLevelOutput) String() string {
  8578  	return awsutil.Prettify(s)
  8579  }
  8580  
  8581  // GoString returns the string representation.
  8582  //
  8583  // API parameter values that are decorated as "sensitive" in the API will not
  8584  // be included in the string output. The member name will be present, but the
  8585  // value will be replaced with "sensitive".
  8586  func (s GetResourceLogLevelOutput) GoString() string {
  8587  	return s.String()
  8588  }
  8589  
  8590  // SetLogLevel sets the LogLevel field's value.
  8591  func (s *GetResourceLogLevelOutput) SetLogLevel(v string) *GetResourceLogLevelOutput {
  8592  	s.LogLevel = &v
  8593  	return s
  8594  }
  8595  
  8596  type GetServiceEndpointInput struct {
  8597  	_ struct{} `type:"structure" nopayload:"true"`
  8598  
  8599  	// The service type for which to get endpoint information about. Can be CUPS
  8600  	// for the Configuration and Update Server endpoint, or LNS for the LoRaWAN
  8601  	// Network Server endpoint.
  8602  	ServiceType *string `location:"querystring" locationName:"serviceType" type:"string" enum:"WirelessGatewayServiceType"`
  8603  }
  8604  
  8605  // String returns the string representation.
  8606  //
  8607  // API parameter values that are decorated as "sensitive" in the API will not
  8608  // be included in the string output. The member name will be present, but the
  8609  // value will be replaced with "sensitive".
  8610  func (s GetServiceEndpointInput) String() string {
  8611  	return awsutil.Prettify(s)
  8612  }
  8613  
  8614  // GoString returns the string representation.
  8615  //
  8616  // API parameter values that are decorated as "sensitive" in the API will not
  8617  // be included in the string output. The member name will be present, but the
  8618  // value will be replaced with "sensitive".
  8619  func (s GetServiceEndpointInput) GoString() string {
  8620  	return s.String()
  8621  }
  8622  
  8623  // SetServiceType sets the ServiceType field's value.
  8624  func (s *GetServiceEndpointInput) SetServiceType(v string) *GetServiceEndpointInput {
  8625  	s.ServiceType = &v
  8626  	return s
  8627  }
  8628  
  8629  type GetServiceEndpointOutput struct {
  8630  	_ struct{} `type:"structure"`
  8631  
  8632  	// The Root CA of the server trust certificate.
  8633  	ServerTrust *string `min:"1" type:"string"`
  8634  
  8635  	// The service endpoint value.
  8636  	ServiceEndpoint *string `min:"1" type:"string"`
  8637  
  8638  	// The endpoint's service type.
  8639  	ServiceType *string `type:"string" enum:"WirelessGatewayServiceType"`
  8640  }
  8641  
  8642  // String returns the string representation.
  8643  //
  8644  // API parameter values that are decorated as "sensitive" in the API will not
  8645  // be included in the string output. The member name will be present, but the
  8646  // value will be replaced with "sensitive".
  8647  func (s GetServiceEndpointOutput) String() string {
  8648  	return awsutil.Prettify(s)
  8649  }
  8650  
  8651  // GoString returns the string representation.
  8652  //
  8653  // API parameter values that are decorated as "sensitive" in the API will not
  8654  // be included in the string output. The member name will be present, but the
  8655  // value will be replaced with "sensitive".
  8656  func (s GetServiceEndpointOutput) GoString() string {
  8657  	return s.String()
  8658  }
  8659  
  8660  // SetServerTrust sets the ServerTrust field's value.
  8661  func (s *GetServiceEndpointOutput) SetServerTrust(v string) *GetServiceEndpointOutput {
  8662  	s.ServerTrust = &v
  8663  	return s
  8664  }
  8665  
  8666  // SetServiceEndpoint sets the ServiceEndpoint field's value.
  8667  func (s *GetServiceEndpointOutput) SetServiceEndpoint(v string) *GetServiceEndpointOutput {
  8668  	s.ServiceEndpoint = &v
  8669  	return s
  8670  }
  8671  
  8672  // SetServiceType sets the ServiceType field's value.
  8673  func (s *GetServiceEndpointOutput) SetServiceType(v string) *GetServiceEndpointOutput {
  8674  	s.ServiceType = &v
  8675  	return s
  8676  }
  8677  
  8678  type GetServiceProfileInput struct {
  8679  	_ struct{} `type:"structure" nopayload:"true"`
  8680  
  8681  	// The ID of the resource to get.
  8682  	//
  8683  	// Id is a required field
  8684  	Id *string `location:"uri" locationName:"Id" type:"string" required:"true"`
  8685  }
  8686  
  8687  // String returns the string representation.
  8688  //
  8689  // API parameter values that are decorated as "sensitive" in the API will not
  8690  // be included in the string output. The member name will be present, but the
  8691  // value will be replaced with "sensitive".
  8692  func (s GetServiceProfileInput) String() string {
  8693  	return awsutil.Prettify(s)
  8694  }
  8695  
  8696  // GoString returns the string representation.
  8697  //
  8698  // API parameter values that are decorated as "sensitive" in the API will not
  8699  // be included in the string output. The member name will be present, but the
  8700  // value will be replaced with "sensitive".
  8701  func (s GetServiceProfileInput) GoString() string {
  8702  	return s.String()
  8703  }
  8704  
  8705  // Validate inspects the fields of the type to determine if they are valid.
  8706  func (s *GetServiceProfileInput) Validate() error {
  8707  	invalidParams := request.ErrInvalidParams{Context: "GetServiceProfileInput"}
  8708  	if s.Id == nil {
  8709  		invalidParams.Add(request.NewErrParamRequired("Id"))
  8710  	}
  8711  	if s.Id != nil && len(*s.Id) < 1 {
  8712  		invalidParams.Add(request.NewErrParamMinLen("Id", 1))
  8713  	}
  8714  
  8715  	if invalidParams.Len() > 0 {
  8716  		return invalidParams
  8717  	}
  8718  	return nil
  8719  }
  8720  
  8721  // SetId sets the Id field's value.
  8722  func (s *GetServiceProfileInput) SetId(v string) *GetServiceProfileInput {
  8723  	s.Id = &v
  8724  	return s
  8725  }
  8726  
  8727  type GetServiceProfileOutput struct {
  8728  	_ struct{} `type:"structure"`
  8729  
  8730  	// The Amazon Resource Name of the resource.
  8731  	Arn *string `type:"string"`
  8732  
  8733  	// The ID of the service profile.
  8734  	Id *string `type:"string"`
  8735  
  8736  	// Information about the service profile.
  8737  	LoRaWAN *LoRaWANGetServiceProfileInfo `type:"structure"`
  8738  
  8739  	// The name of the resource.
  8740  	Name *string `type:"string"`
  8741  }
  8742  
  8743  // String returns the string representation.
  8744  //
  8745  // API parameter values that are decorated as "sensitive" in the API will not
  8746  // be included in the string output. The member name will be present, but the
  8747  // value will be replaced with "sensitive".
  8748  func (s GetServiceProfileOutput) String() string {
  8749  	return awsutil.Prettify(s)
  8750  }
  8751  
  8752  // GoString returns the string representation.
  8753  //
  8754  // API parameter values that are decorated as "sensitive" in the API will not
  8755  // be included in the string output. The member name will be present, but the
  8756  // value will be replaced with "sensitive".
  8757  func (s GetServiceProfileOutput) GoString() string {
  8758  	return s.String()
  8759  }
  8760  
  8761  // SetArn sets the Arn field's value.
  8762  func (s *GetServiceProfileOutput) SetArn(v string) *GetServiceProfileOutput {
  8763  	s.Arn = &v
  8764  	return s
  8765  }
  8766  
  8767  // SetId sets the Id field's value.
  8768  func (s *GetServiceProfileOutput) SetId(v string) *GetServiceProfileOutput {
  8769  	s.Id = &v
  8770  	return s
  8771  }
  8772  
  8773  // SetLoRaWAN sets the LoRaWAN field's value.
  8774  func (s *GetServiceProfileOutput) SetLoRaWAN(v *LoRaWANGetServiceProfileInfo) *GetServiceProfileOutput {
  8775  	s.LoRaWAN = v
  8776  	return s
  8777  }
  8778  
  8779  // SetName sets the Name field's value.
  8780  func (s *GetServiceProfileOutput) SetName(v string) *GetServiceProfileOutput {
  8781  	s.Name = &v
  8782  	return s
  8783  }
  8784  
  8785  type GetWirelessDeviceInput struct {
  8786  	_ struct{} `type:"structure" nopayload:"true"`
  8787  
  8788  	// The identifier of the wireless device to get.
  8789  	//
  8790  	// Identifier is a required field
  8791  	Identifier *string `location:"uri" locationName:"Identifier" type:"string" required:"true"`
  8792  
  8793  	// The type of identifier used in identifier.
  8794  	//
  8795  	// IdentifierType is a required field
  8796  	IdentifierType *string `location:"querystring" locationName:"identifierType" type:"string" required:"true" enum:"WirelessDeviceIdType"`
  8797  }
  8798  
  8799  // String returns the string representation.
  8800  //
  8801  // API parameter values that are decorated as "sensitive" in the API will not
  8802  // be included in the string output. The member name will be present, but the
  8803  // value will be replaced with "sensitive".
  8804  func (s GetWirelessDeviceInput) String() string {
  8805  	return awsutil.Prettify(s)
  8806  }
  8807  
  8808  // GoString returns the string representation.
  8809  //
  8810  // API parameter values that are decorated as "sensitive" in the API will not
  8811  // be included in the string output. The member name will be present, but the
  8812  // value will be replaced with "sensitive".
  8813  func (s GetWirelessDeviceInput) GoString() string {
  8814  	return s.String()
  8815  }
  8816  
  8817  // Validate inspects the fields of the type to determine if they are valid.
  8818  func (s *GetWirelessDeviceInput) Validate() error {
  8819  	invalidParams := request.ErrInvalidParams{Context: "GetWirelessDeviceInput"}
  8820  	if s.Identifier == nil {
  8821  		invalidParams.Add(request.NewErrParamRequired("Identifier"))
  8822  	}
  8823  	if s.Identifier != nil && len(*s.Identifier) < 1 {
  8824  		invalidParams.Add(request.NewErrParamMinLen("Identifier", 1))
  8825  	}
  8826  	if s.IdentifierType == nil {
  8827  		invalidParams.Add(request.NewErrParamRequired("IdentifierType"))
  8828  	}
  8829  
  8830  	if invalidParams.Len() > 0 {
  8831  		return invalidParams
  8832  	}
  8833  	return nil
  8834  }
  8835  
  8836  // SetIdentifier sets the Identifier field's value.
  8837  func (s *GetWirelessDeviceInput) SetIdentifier(v string) *GetWirelessDeviceInput {
  8838  	s.Identifier = &v
  8839  	return s
  8840  }
  8841  
  8842  // SetIdentifierType sets the IdentifierType field's value.
  8843  func (s *GetWirelessDeviceInput) SetIdentifierType(v string) *GetWirelessDeviceInput {
  8844  	s.IdentifierType = &v
  8845  	return s
  8846  }
  8847  
  8848  type GetWirelessDeviceOutput struct {
  8849  	_ struct{} `type:"structure"`
  8850  
  8851  	// The Amazon Resource Name of the resource.
  8852  	Arn *string `type:"string"`
  8853  
  8854  	// The description of the resource.
  8855  	Description *string `type:"string"`
  8856  
  8857  	// The name of the destination to which the device is assigned.
  8858  	DestinationName *string `type:"string"`
  8859  
  8860  	// The ID of the wireless device.
  8861  	Id *string `type:"string"`
  8862  
  8863  	// Information about the wireless device.
  8864  	LoRaWAN *LoRaWANDevice `type:"structure"`
  8865  
  8866  	// The name of the resource.
  8867  	Name *string `type:"string"`
  8868  
  8869  	// Sidewalk device object.
  8870  	Sidewalk *SidewalkDevice `type:"structure"`
  8871  
  8872  	// The ARN of the thing associated with the wireless device.
  8873  	ThingArn *string `type:"string"`
  8874  
  8875  	// The name of the thing associated with the wireless device. The value is empty
  8876  	// if a thing isn't associated with the device.
  8877  	ThingName *string `type:"string"`
  8878  
  8879  	// The wireless device type.
  8880  	Type *string `type:"string" enum:"WirelessDeviceType"`
  8881  }
  8882  
  8883  // String returns the string representation.
  8884  //
  8885  // API parameter values that are decorated as "sensitive" in the API will not
  8886  // be included in the string output. The member name will be present, but the
  8887  // value will be replaced with "sensitive".
  8888  func (s GetWirelessDeviceOutput) String() string {
  8889  	return awsutil.Prettify(s)
  8890  }
  8891  
  8892  // GoString returns the string representation.
  8893  //
  8894  // API parameter values that are decorated as "sensitive" in the API will not
  8895  // be included in the string output. The member name will be present, but the
  8896  // value will be replaced with "sensitive".
  8897  func (s GetWirelessDeviceOutput) GoString() string {
  8898  	return s.String()
  8899  }
  8900  
  8901  // SetArn sets the Arn field's value.
  8902  func (s *GetWirelessDeviceOutput) SetArn(v string) *GetWirelessDeviceOutput {
  8903  	s.Arn = &v
  8904  	return s
  8905  }
  8906  
  8907  // SetDescription sets the Description field's value.
  8908  func (s *GetWirelessDeviceOutput) SetDescription(v string) *GetWirelessDeviceOutput {
  8909  	s.Description = &v
  8910  	return s
  8911  }
  8912  
  8913  // SetDestinationName sets the DestinationName field's value.
  8914  func (s *GetWirelessDeviceOutput) SetDestinationName(v string) *GetWirelessDeviceOutput {
  8915  	s.DestinationName = &v
  8916  	return s
  8917  }
  8918  
  8919  // SetId sets the Id field's value.
  8920  func (s *GetWirelessDeviceOutput) SetId(v string) *GetWirelessDeviceOutput {
  8921  	s.Id = &v
  8922  	return s
  8923  }
  8924  
  8925  // SetLoRaWAN sets the LoRaWAN field's value.
  8926  func (s *GetWirelessDeviceOutput) SetLoRaWAN(v *LoRaWANDevice) *GetWirelessDeviceOutput {
  8927  	s.LoRaWAN = v
  8928  	return s
  8929  }
  8930  
  8931  // SetName sets the Name field's value.
  8932  func (s *GetWirelessDeviceOutput) SetName(v string) *GetWirelessDeviceOutput {
  8933  	s.Name = &v
  8934  	return s
  8935  }
  8936  
  8937  // SetSidewalk sets the Sidewalk field's value.
  8938  func (s *GetWirelessDeviceOutput) SetSidewalk(v *SidewalkDevice) *GetWirelessDeviceOutput {
  8939  	s.Sidewalk = v
  8940  	return s
  8941  }
  8942  
  8943  // SetThingArn sets the ThingArn field's value.
  8944  func (s *GetWirelessDeviceOutput) SetThingArn(v string) *GetWirelessDeviceOutput {
  8945  	s.ThingArn = &v
  8946  	return s
  8947  }
  8948  
  8949  // SetThingName sets the ThingName field's value.
  8950  func (s *GetWirelessDeviceOutput) SetThingName(v string) *GetWirelessDeviceOutput {
  8951  	s.ThingName = &v
  8952  	return s
  8953  }
  8954  
  8955  // SetType sets the Type field's value.
  8956  func (s *GetWirelessDeviceOutput) SetType(v string) *GetWirelessDeviceOutput {
  8957  	s.Type = &v
  8958  	return s
  8959  }
  8960  
  8961  type GetWirelessDeviceStatisticsInput struct {
  8962  	_ struct{} `type:"structure" nopayload:"true"`
  8963  
  8964  	// The ID of the wireless device for which to get the data.
  8965  	//
  8966  	// WirelessDeviceId is a required field
  8967  	WirelessDeviceId *string `location:"uri" locationName:"Id" type:"string" required:"true"`
  8968  }
  8969  
  8970  // String returns the string representation.
  8971  //
  8972  // API parameter values that are decorated as "sensitive" in the API will not
  8973  // be included in the string output. The member name will be present, but the
  8974  // value will be replaced with "sensitive".
  8975  func (s GetWirelessDeviceStatisticsInput) String() string {
  8976  	return awsutil.Prettify(s)
  8977  }
  8978  
  8979  // GoString returns the string representation.
  8980  //
  8981  // API parameter values that are decorated as "sensitive" in the API will not
  8982  // be included in the string output. The member name will be present, but the
  8983  // value will be replaced with "sensitive".
  8984  func (s GetWirelessDeviceStatisticsInput) GoString() string {
  8985  	return s.String()
  8986  }
  8987  
  8988  // Validate inspects the fields of the type to determine if they are valid.
  8989  func (s *GetWirelessDeviceStatisticsInput) Validate() error {
  8990  	invalidParams := request.ErrInvalidParams{Context: "GetWirelessDeviceStatisticsInput"}
  8991  	if s.WirelessDeviceId == nil {
  8992  		invalidParams.Add(request.NewErrParamRequired("WirelessDeviceId"))
  8993  	}
  8994  	if s.WirelessDeviceId != nil && len(*s.WirelessDeviceId) < 1 {
  8995  		invalidParams.Add(request.NewErrParamMinLen("WirelessDeviceId", 1))
  8996  	}
  8997  
  8998  	if invalidParams.Len() > 0 {
  8999  		return invalidParams
  9000  	}
  9001  	return nil
  9002  }
  9003  
  9004  // SetWirelessDeviceId sets the WirelessDeviceId field's value.
  9005  func (s *GetWirelessDeviceStatisticsInput) SetWirelessDeviceId(v string) *GetWirelessDeviceStatisticsInput {
  9006  	s.WirelessDeviceId = &v
  9007  	return s
  9008  }
  9009  
  9010  type GetWirelessDeviceStatisticsOutput struct {
  9011  	_ struct{} `type:"structure"`
  9012  
  9013  	// The date and time when the most recent uplink was received.
  9014  	LastUplinkReceivedAt *string `type:"string"`
  9015  
  9016  	// Information about the wireless device's operations.
  9017  	LoRaWAN *LoRaWANDeviceMetadata `type:"structure"`
  9018  
  9019  	// MetaData for Sidewalk device.
  9020  	Sidewalk *SidewalkDeviceMetadata `type:"structure"`
  9021  
  9022  	// The ID of the wireless device.
  9023  	WirelessDeviceId *string `type:"string"`
  9024  }
  9025  
  9026  // String returns the string representation.
  9027  //
  9028  // API parameter values that are decorated as "sensitive" in the API will not
  9029  // be included in the string output. The member name will be present, but the
  9030  // value will be replaced with "sensitive".
  9031  func (s GetWirelessDeviceStatisticsOutput) String() string {
  9032  	return awsutil.Prettify(s)
  9033  }
  9034  
  9035  // GoString returns the string representation.
  9036  //
  9037  // API parameter values that are decorated as "sensitive" in the API will not
  9038  // be included in the string output. The member name will be present, but the
  9039  // value will be replaced with "sensitive".
  9040  func (s GetWirelessDeviceStatisticsOutput) GoString() string {
  9041  	return s.String()
  9042  }
  9043  
  9044  // SetLastUplinkReceivedAt sets the LastUplinkReceivedAt field's value.
  9045  func (s *GetWirelessDeviceStatisticsOutput) SetLastUplinkReceivedAt(v string) *GetWirelessDeviceStatisticsOutput {
  9046  	s.LastUplinkReceivedAt = &v
  9047  	return s
  9048  }
  9049  
  9050  // SetLoRaWAN sets the LoRaWAN field's value.
  9051  func (s *GetWirelessDeviceStatisticsOutput) SetLoRaWAN(v *LoRaWANDeviceMetadata) *GetWirelessDeviceStatisticsOutput {
  9052  	s.LoRaWAN = v
  9053  	return s
  9054  }
  9055  
  9056  // SetSidewalk sets the Sidewalk field's value.
  9057  func (s *GetWirelessDeviceStatisticsOutput) SetSidewalk(v *SidewalkDeviceMetadata) *GetWirelessDeviceStatisticsOutput {
  9058  	s.Sidewalk = v
  9059  	return s
  9060  }
  9061  
  9062  // SetWirelessDeviceId sets the WirelessDeviceId field's value.
  9063  func (s *GetWirelessDeviceStatisticsOutput) SetWirelessDeviceId(v string) *GetWirelessDeviceStatisticsOutput {
  9064  	s.WirelessDeviceId = &v
  9065  	return s
  9066  }
  9067  
  9068  type GetWirelessGatewayCertificateInput struct {
  9069  	_ struct{} `type:"structure" nopayload:"true"`
  9070  
  9071  	// The ID of the resource to get.
  9072  	//
  9073  	// Id is a required field
  9074  	Id *string `location:"uri" locationName:"Id" type:"string" required:"true"`
  9075  }
  9076  
  9077  // String returns the string representation.
  9078  //
  9079  // API parameter values that are decorated as "sensitive" in the API will not
  9080  // be included in the string output. The member name will be present, but the
  9081  // value will be replaced with "sensitive".
  9082  func (s GetWirelessGatewayCertificateInput) String() string {
  9083  	return awsutil.Prettify(s)
  9084  }
  9085  
  9086  // GoString returns the string representation.
  9087  //
  9088  // API parameter values that are decorated as "sensitive" in the API will not
  9089  // be included in the string output. The member name will be present, but the
  9090  // value will be replaced with "sensitive".
  9091  func (s GetWirelessGatewayCertificateInput) GoString() string {
  9092  	return s.String()
  9093  }
  9094  
  9095  // Validate inspects the fields of the type to determine if they are valid.
  9096  func (s *GetWirelessGatewayCertificateInput) Validate() error {
  9097  	invalidParams := request.ErrInvalidParams{Context: "GetWirelessGatewayCertificateInput"}
  9098  	if s.Id == nil {
  9099  		invalidParams.Add(request.NewErrParamRequired("Id"))
  9100  	}
  9101  	if s.Id != nil && len(*s.Id) < 1 {
  9102  		invalidParams.Add(request.NewErrParamMinLen("Id", 1))
  9103  	}
  9104  
  9105  	if invalidParams.Len() > 0 {
  9106  		return invalidParams
  9107  	}
  9108  	return nil
  9109  }
  9110  
  9111  // SetId sets the Id field's value.
  9112  func (s *GetWirelessGatewayCertificateInput) SetId(v string) *GetWirelessGatewayCertificateInput {
  9113  	s.Id = &v
  9114  	return s
  9115  }
  9116  
  9117  type GetWirelessGatewayCertificateOutput struct {
  9118  	_ struct{} `type:"structure"`
  9119  
  9120  	// The ID of the certificate associated with the wireless gateway.
  9121  	IotCertificateId *string `min:"1" type:"string"`
  9122  
  9123  	// The ID of the certificate that is associated with the wireless gateway and
  9124  	// used for the LoRaWANNetworkServer endpoint.
  9125  	LoRaWANNetworkServerCertificateId *string `min:"1" type:"string"`
  9126  }
  9127  
  9128  // String returns the string representation.
  9129  //
  9130  // API parameter values that are decorated as "sensitive" in the API will not
  9131  // be included in the string output. The member name will be present, but the
  9132  // value will be replaced with "sensitive".
  9133  func (s GetWirelessGatewayCertificateOutput) String() string {
  9134  	return awsutil.Prettify(s)
  9135  }
  9136  
  9137  // GoString returns the string representation.
  9138  //
  9139  // API parameter values that are decorated as "sensitive" in the API will not
  9140  // be included in the string output. The member name will be present, but the
  9141  // value will be replaced with "sensitive".
  9142  func (s GetWirelessGatewayCertificateOutput) GoString() string {
  9143  	return s.String()
  9144  }
  9145  
  9146  // SetIotCertificateId sets the IotCertificateId field's value.
  9147  func (s *GetWirelessGatewayCertificateOutput) SetIotCertificateId(v string) *GetWirelessGatewayCertificateOutput {
  9148  	s.IotCertificateId = &v
  9149  	return s
  9150  }
  9151  
  9152  // SetLoRaWANNetworkServerCertificateId sets the LoRaWANNetworkServerCertificateId field's value.
  9153  func (s *GetWirelessGatewayCertificateOutput) SetLoRaWANNetworkServerCertificateId(v string) *GetWirelessGatewayCertificateOutput {
  9154  	s.LoRaWANNetworkServerCertificateId = &v
  9155  	return s
  9156  }
  9157  
  9158  type GetWirelessGatewayFirmwareInformationInput struct {
  9159  	_ struct{} `type:"structure" nopayload:"true"`
  9160  
  9161  	// The ID of the resource to get.
  9162  	//
  9163  	// Id is a required field
  9164  	Id *string `location:"uri" locationName:"Id" type:"string" required:"true"`
  9165  }
  9166  
  9167  // String returns the string representation.
  9168  //
  9169  // API parameter values that are decorated as "sensitive" in the API will not
  9170  // be included in the string output. The member name will be present, but the
  9171  // value will be replaced with "sensitive".
  9172  func (s GetWirelessGatewayFirmwareInformationInput) String() string {
  9173  	return awsutil.Prettify(s)
  9174  }
  9175  
  9176  // GoString returns the string representation.
  9177  //
  9178  // API parameter values that are decorated as "sensitive" in the API will not
  9179  // be included in the string output. The member name will be present, but the
  9180  // value will be replaced with "sensitive".
  9181  func (s GetWirelessGatewayFirmwareInformationInput) GoString() string {
  9182  	return s.String()
  9183  }
  9184  
  9185  // Validate inspects the fields of the type to determine if they are valid.
  9186  func (s *GetWirelessGatewayFirmwareInformationInput) Validate() error {
  9187  	invalidParams := request.ErrInvalidParams{Context: "GetWirelessGatewayFirmwareInformationInput"}
  9188  	if s.Id == nil {
  9189  		invalidParams.Add(request.NewErrParamRequired("Id"))
  9190  	}
  9191  	if s.Id != nil && len(*s.Id) < 1 {
  9192  		invalidParams.Add(request.NewErrParamMinLen("Id", 1))
  9193  	}
  9194  
  9195  	if invalidParams.Len() > 0 {
  9196  		return invalidParams
  9197  	}
  9198  	return nil
  9199  }
  9200  
  9201  // SetId sets the Id field's value.
  9202  func (s *GetWirelessGatewayFirmwareInformationInput) SetId(v string) *GetWirelessGatewayFirmwareInformationInput {
  9203  	s.Id = &v
  9204  	return s
  9205  }
  9206  
  9207  type GetWirelessGatewayFirmwareInformationOutput struct {
  9208  	_ struct{} `type:"structure"`
  9209  
  9210  	// Information about the wireless gateway's firmware.
  9211  	LoRaWAN *LoRaWANGatewayCurrentVersion `type:"structure"`
  9212  }
  9213  
  9214  // String returns the string representation.
  9215  //
  9216  // API parameter values that are decorated as "sensitive" in the API will not
  9217  // be included in the string output. The member name will be present, but the
  9218  // value will be replaced with "sensitive".
  9219  func (s GetWirelessGatewayFirmwareInformationOutput) String() string {
  9220  	return awsutil.Prettify(s)
  9221  }
  9222  
  9223  // GoString returns the string representation.
  9224  //
  9225  // API parameter values that are decorated as "sensitive" in the API will not
  9226  // be included in the string output. The member name will be present, but the
  9227  // value will be replaced with "sensitive".
  9228  func (s GetWirelessGatewayFirmwareInformationOutput) GoString() string {
  9229  	return s.String()
  9230  }
  9231  
  9232  // SetLoRaWAN sets the LoRaWAN field's value.
  9233  func (s *GetWirelessGatewayFirmwareInformationOutput) SetLoRaWAN(v *LoRaWANGatewayCurrentVersion) *GetWirelessGatewayFirmwareInformationOutput {
  9234  	s.LoRaWAN = v
  9235  	return s
  9236  }
  9237  
  9238  type GetWirelessGatewayInput struct {
  9239  	_ struct{} `type:"structure" nopayload:"true"`
  9240  
  9241  	// The identifier of the wireless gateway to get.
  9242  	//
  9243  	// Identifier is a required field
  9244  	Identifier *string `location:"uri" locationName:"Identifier" type:"string" required:"true"`
  9245  
  9246  	// The type of identifier used in identifier.
  9247  	//
  9248  	// IdentifierType is a required field
  9249  	IdentifierType *string `location:"querystring" locationName:"identifierType" type:"string" required:"true" enum:"WirelessGatewayIdType"`
  9250  }
  9251  
  9252  // String returns the string representation.
  9253  //
  9254  // API parameter values that are decorated as "sensitive" in the API will not
  9255  // be included in the string output. The member name will be present, but the
  9256  // value will be replaced with "sensitive".
  9257  func (s GetWirelessGatewayInput) String() string {
  9258  	return awsutil.Prettify(s)
  9259  }
  9260  
  9261  // GoString returns the string representation.
  9262  //
  9263  // API parameter values that are decorated as "sensitive" in the API will not
  9264  // be included in the string output. The member name will be present, but the
  9265  // value will be replaced with "sensitive".
  9266  func (s GetWirelessGatewayInput) GoString() string {
  9267  	return s.String()
  9268  }
  9269  
  9270  // Validate inspects the fields of the type to determine if they are valid.
  9271  func (s *GetWirelessGatewayInput) Validate() error {
  9272  	invalidParams := request.ErrInvalidParams{Context: "GetWirelessGatewayInput"}
  9273  	if s.Identifier == nil {
  9274  		invalidParams.Add(request.NewErrParamRequired("Identifier"))
  9275  	}
  9276  	if s.Identifier != nil && len(*s.Identifier) < 1 {
  9277  		invalidParams.Add(request.NewErrParamMinLen("Identifier", 1))
  9278  	}
  9279  	if s.IdentifierType == nil {
  9280  		invalidParams.Add(request.NewErrParamRequired("IdentifierType"))
  9281  	}
  9282  
  9283  	if invalidParams.Len() > 0 {
  9284  		return invalidParams
  9285  	}
  9286  	return nil
  9287  }
  9288  
  9289  // SetIdentifier sets the Identifier field's value.
  9290  func (s *GetWirelessGatewayInput) SetIdentifier(v string) *GetWirelessGatewayInput {
  9291  	s.Identifier = &v
  9292  	return s
  9293  }
  9294  
  9295  // SetIdentifierType sets the IdentifierType field's value.
  9296  func (s *GetWirelessGatewayInput) SetIdentifierType(v string) *GetWirelessGatewayInput {
  9297  	s.IdentifierType = &v
  9298  	return s
  9299  }
  9300  
  9301  type GetWirelessGatewayOutput struct {
  9302  	_ struct{} `type:"structure"`
  9303  
  9304  	// The Amazon Resource Name of the resource.
  9305  	Arn *string `type:"string"`
  9306  
  9307  	// The description of the resource.
  9308  	Description *string `type:"string"`
  9309  
  9310  	// The ID of the wireless gateway.
  9311  	Id *string `type:"string"`
  9312  
  9313  	// Information about the wireless gateway.
  9314  	LoRaWAN *LoRaWANGateway `type:"structure"`
  9315  
  9316  	// The name of the resource.
  9317  	Name *string `type:"string"`
  9318  
  9319  	// The ARN of the thing associated with the wireless gateway.
  9320  	ThingArn *string `type:"string"`
  9321  
  9322  	// The name of the thing associated with the wireless gateway. The value is
  9323  	// empty if a thing isn't associated with the gateway.
  9324  	ThingName *string `type:"string"`
  9325  }
  9326  
  9327  // String returns the string representation.
  9328  //
  9329  // API parameter values that are decorated as "sensitive" in the API will not
  9330  // be included in the string output. The member name will be present, but the
  9331  // value will be replaced with "sensitive".
  9332  func (s GetWirelessGatewayOutput) String() string {
  9333  	return awsutil.Prettify(s)
  9334  }
  9335  
  9336  // GoString returns the string representation.
  9337  //
  9338  // API parameter values that are decorated as "sensitive" in the API will not
  9339  // be included in the string output. The member name will be present, but the
  9340  // value will be replaced with "sensitive".
  9341  func (s GetWirelessGatewayOutput) GoString() string {
  9342  	return s.String()
  9343  }
  9344  
  9345  // SetArn sets the Arn field's value.
  9346  func (s *GetWirelessGatewayOutput) SetArn(v string) *GetWirelessGatewayOutput {
  9347  	s.Arn = &v
  9348  	return s
  9349  }
  9350  
  9351  // SetDescription sets the Description field's value.
  9352  func (s *GetWirelessGatewayOutput) SetDescription(v string) *GetWirelessGatewayOutput {
  9353  	s.Description = &v
  9354  	return s
  9355  }
  9356  
  9357  // SetId sets the Id field's value.
  9358  func (s *GetWirelessGatewayOutput) SetId(v string) *GetWirelessGatewayOutput {
  9359  	s.Id = &v
  9360  	return s
  9361  }
  9362  
  9363  // SetLoRaWAN sets the LoRaWAN field's value.
  9364  func (s *GetWirelessGatewayOutput) SetLoRaWAN(v *LoRaWANGateway) *GetWirelessGatewayOutput {
  9365  	s.LoRaWAN = v
  9366  	return s
  9367  }
  9368  
  9369  // SetName sets the Name field's value.
  9370  func (s *GetWirelessGatewayOutput) SetName(v string) *GetWirelessGatewayOutput {
  9371  	s.Name = &v
  9372  	return s
  9373  }
  9374  
  9375  // SetThingArn sets the ThingArn field's value.
  9376  func (s *GetWirelessGatewayOutput) SetThingArn(v string) *GetWirelessGatewayOutput {
  9377  	s.ThingArn = &v
  9378  	return s
  9379  }
  9380  
  9381  // SetThingName sets the ThingName field's value.
  9382  func (s *GetWirelessGatewayOutput) SetThingName(v string) *GetWirelessGatewayOutput {
  9383  	s.ThingName = &v
  9384  	return s
  9385  }
  9386  
  9387  type GetWirelessGatewayStatisticsInput struct {
  9388  	_ struct{} `type:"structure" nopayload:"true"`
  9389  
  9390  	// The ID of the wireless gateway for which to get the data.
  9391  	//
  9392  	// WirelessGatewayId is a required field
  9393  	WirelessGatewayId *string `location:"uri" locationName:"Id" type:"string" required:"true"`
  9394  }
  9395  
  9396  // String returns the string representation.
  9397  //
  9398  // API parameter values that are decorated as "sensitive" in the API will not
  9399  // be included in the string output. The member name will be present, but the
  9400  // value will be replaced with "sensitive".
  9401  func (s GetWirelessGatewayStatisticsInput) String() string {
  9402  	return awsutil.Prettify(s)
  9403  }
  9404  
  9405  // GoString returns the string representation.
  9406  //
  9407  // API parameter values that are decorated as "sensitive" in the API will not
  9408  // be included in the string output. The member name will be present, but the
  9409  // value will be replaced with "sensitive".
  9410  func (s GetWirelessGatewayStatisticsInput) GoString() string {
  9411  	return s.String()
  9412  }
  9413  
  9414  // Validate inspects the fields of the type to determine if they are valid.
  9415  func (s *GetWirelessGatewayStatisticsInput) Validate() error {
  9416  	invalidParams := request.ErrInvalidParams{Context: "GetWirelessGatewayStatisticsInput"}
  9417  	if s.WirelessGatewayId == nil {
  9418  		invalidParams.Add(request.NewErrParamRequired("WirelessGatewayId"))
  9419  	}
  9420  	if s.WirelessGatewayId != nil && len(*s.WirelessGatewayId) < 1 {
  9421  		invalidParams.Add(request.NewErrParamMinLen("WirelessGatewayId", 1))
  9422  	}
  9423  
  9424  	if invalidParams.Len() > 0 {
  9425  		return invalidParams
  9426  	}
  9427  	return nil
  9428  }
  9429  
  9430  // SetWirelessGatewayId sets the WirelessGatewayId field's value.
  9431  func (s *GetWirelessGatewayStatisticsInput) SetWirelessGatewayId(v string) *GetWirelessGatewayStatisticsInput {
  9432  	s.WirelessGatewayId = &v
  9433  	return s
  9434  }
  9435  
  9436  type GetWirelessGatewayStatisticsOutput struct {
  9437  	_ struct{} `type:"structure"`
  9438  
  9439  	// The connection status of the wireless gateway.
  9440  	ConnectionStatus *string `type:"string" enum:"ConnectionStatus"`
  9441  
  9442  	// The date and time when the most recent uplink was received.
  9443  	LastUplinkReceivedAt *string `type:"string"`
  9444  
  9445  	// The ID of the wireless gateway.
  9446  	WirelessGatewayId *string `type:"string"`
  9447  }
  9448  
  9449  // String returns the string representation.
  9450  //
  9451  // API parameter values that are decorated as "sensitive" in the API will not
  9452  // be included in the string output. The member name will be present, but the
  9453  // value will be replaced with "sensitive".
  9454  func (s GetWirelessGatewayStatisticsOutput) String() string {
  9455  	return awsutil.Prettify(s)
  9456  }
  9457  
  9458  // GoString returns the string representation.
  9459  //
  9460  // API parameter values that are decorated as "sensitive" in the API will not
  9461  // be included in the string output. The member name will be present, but the
  9462  // value will be replaced with "sensitive".
  9463  func (s GetWirelessGatewayStatisticsOutput) GoString() string {
  9464  	return s.String()
  9465  }
  9466  
  9467  // SetConnectionStatus sets the ConnectionStatus field's value.
  9468  func (s *GetWirelessGatewayStatisticsOutput) SetConnectionStatus(v string) *GetWirelessGatewayStatisticsOutput {
  9469  	s.ConnectionStatus = &v
  9470  	return s
  9471  }
  9472  
  9473  // SetLastUplinkReceivedAt sets the LastUplinkReceivedAt field's value.
  9474  func (s *GetWirelessGatewayStatisticsOutput) SetLastUplinkReceivedAt(v string) *GetWirelessGatewayStatisticsOutput {
  9475  	s.LastUplinkReceivedAt = &v
  9476  	return s
  9477  }
  9478  
  9479  // SetWirelessGatewayId sets the WirelessGatewayId field's value.
  9480  func (s *GetWirelessGatewayStatisticsOutput) SetWirelessGatewayId(v string) *GetWirelessGatewayStatisticsOutput {
  9481  	s.WirelessGatewayId = &v
  9482  	return s
  9483  }
  9484  
  9485  type GetWirelessGatewayTaskDefinitionInput struct {
  9486  	_ struct{} `type:"structure" nopayload:"true"`
  9487  
  9488  	// The ID of the resource to get.
  9489  	//
  9490  	// Id is a required field
  9491  	Id *string `location:"uri" locationName:"Id" type:"string" required:"true"`
  9492  }
  9493  
  9494  // String returns the string representation.
  9495  //
  9496  // API parameter values that are decorated as "sensitive" in the API will not
  9497  // be included in the string output. The member name will be present, but the
  9498  // value will be replaced with "sensitive".
  9499  func (s GetWirelessGatewayTaskDefinitionInput) String() string {
  9500  	return awsutil.Prettify(s)
  9501  }
  9502  
  9503  // GoString returns the string representation.
  9504  //
  9505  // API parameter values that are decorated as "sensitive" in the API will not
  9506  // be included in the string output. The member name will be present, but the
  9507  // value will be replaced with "sensitive".
  9508  func (s GetWirelessGatewayTaskDefinitionInput) GoString() string {
  9509  	return s.String()
  9510  }
  9511  
  9512  // Validate inspects the fields of the type to determine if they are valid.
  9513  func (s *GetWirelessGatewayTaskDefinitionInput) Validate() error {
  9514  	invalidParams := request.ErrInvalidParams{Context: "GetWirelessGatewayTaskDefinitionInput"}
  9515  	if s.Id == nil {
  9516  		invalidParams.Add(request.NewErrParamRequired("Id"))
  9517  	}
  9518  	if s.Id != nil && len(*s.Id) < 1 {
  9519  		invalidParams.Add(request.NewErrParamMinLen("Id", 1))
  9520  	}
  9521  
  9522  	if invalidParams.Len() > 0 {
  9523  		return invalidParams
  9524  	}
  9525  	return nil
  9526  }
  9527  
  9528  // SetId sets the Id field's value.
  9529  func (s *GetWirelessGatewayTaskDefinitionInput) SetId(v string) *GetWirelessGatewayTaskDefinitionInput {
  9530  	s.Id = &v
  9531  	return s
  9532  }
  9533  
  9534  type GetWirelessGatewayTaskDefinitionOutput struct {
  9535  	_ struct{} `type:"structure"`
  9536  
  9537  	// The Amazon Resource Name of the resource.
  9538  	Arn *string `type:"string"`
  9539  
  9540  	// Whether to automatically create tasks using this task definition for all
  9541  	// gateways with the specified current version. If false, the task must me created
  9542  	// by calling CreateWirelessGatewayTask.
  9543  	AutoCreateTasks *bool `type:"boolean"`
  9544  
  9545  	// The name of the resource.
  9546  	Name *string `min:"1" type:"string"`
  9547  
  9548  	// Information about the gateways to update.
  9549  	Update *UpdateWirelessGatewayTaskCreate `type:"structure"`
  9550  }
  9551  
  9552  // String returns the string representation.
  9553  //
  9554  // API parameter values that are decorated as "sensitive" in the API will not
  9555  // be included in the string output. The member name will be present, but the
  9556  // value will be replaced with "sensitive".
  9557  func (s GetWirelessGatewayTaskDefinitionOutput) String() string {
  9558  	return awsutil.Prettify(s)
  9559  }
  9560  
  9561  // GoString returns the string representation.
  9562  //
  9563  // API parameter values that are decorated as "sensitive" in the API will not
  9564  // be included in the string output. The member name will be present, but the
  9565  // value will be replaced with "sensitive".
  9566  func (s GetWirelessGatewayTaskDefinitionOutput) GoString() string {
  9567  	return s.String()
  9568  }
  9569  
  9570  // SetArn sets the Arn field's value.
  9571  func (s *GetWirelessGatewayTaskDefinitionOutput) SetArn(v string) *GetWirelessGatewayTaskDefinitionOutput {
  9572  	s.Arn = &v
  9573  	return s
  9574  }
  9575  
  9576  // SetAutoCreateTasks sets the AutoCreateTasks field's value.
  9577  func (s *GetWirelessGatewayTaskDefinitionOutput) SetAutoCreateTasks(v bool) *GetWirelessGatewayTaskDefinitionOutput {
  9578  	s.AutoCreateTasks = &v
  9579  	return s
  9580  }
  9581  
  9582  // SetName sets the Name field's value.
  9583  func (s *GetWirelessGatewayTaskDefinitionOutput) SetName(v string) *GetWirelessGatewayTaskDefinitionOutput {
  9584  	s.Name = &v
  9585  	return s
  9586  }
  9587  
  9588  // SetUpdate sets the Update field's value.
  9589  func (s *GetWirelessGatewayTaskDefinitionOutput) SetUpdate(v *UpdateWirelessGatewayTaskCreate) *GetWirelessGatewayTaskDefinitionOutput {
  9590  	s.Update = v
  9591  	return s
  9592  }
  9593  
  9594  type GetWirelessGatewayTaskInput struct {
  9595  	_ struct{} `type:"structure" nopayload:"true"`
  9596  
  9597  	// The ID of the resource to get.
  9598  	//
  9599  	// Id is a required field
  9600  	Id *string `location:"uri" locationName:"Id" type:"string" required:"true"`
  9601  }
  9602  
  9603  // String returns the string representation.
  9604  //
  9605  // API parameter values that are decorated as "sensitive" in the API will not
  9606  // be included in the string output. The member name will be present, but the
  9607  // value will be replaced with "sensitive".
  9608  func (s GetWirelessGatewayTaskInput) String() string {
  9609  	return awsutil.Prettify(s)
  9610  }
  9611  
  9612  // GoString returns the string representation.
  9613  //
  9614  // API parameter values that are decorated as "sensitive" in the API will not
  9615  // be included in the string output. The member name will be present, but the
  9616  // value will be replaced with "sensitive".
  9617  func (s GetWirelessGatewayTaskInput) GoString() string {
  9618  	return s.String()
  9619  }
  9620  
  9621  // Validate inspects the fields of the type to determine if they are valid.
  9622  func (s *GetWirelessGatewayTaskInput) Validate() error {
  9623  	invalidParams := request.ErrInvalidParams{Context: "GetWirelessGatewayTaskInput"}
  9624  	if s.Id == nil {
  9625  		invalidParams.Add(request.NewErrParamRequired("Id"))
  9626  	}
  9627  	if s.Id != nil && len(*s.Id) < 1 {
  9628  		invalidParams.Add(request.NewErrParamMinLen("Id", 1))
  9629  	}
  9630  
  9631  	if invalidParams.Len() > 0 {
  9632  		return invalidParams
  9633  	}
  9634  	return nil
  9635  }
  9636  
  9637  // SetId sets the Id field's value.
  9638  func (s *GetWirelessGatewayTaskInput) SetId(v string) *GetWirelessGatewayTaskInput {
  9639  	s.Id = &v
  9640  	return s
  9641  }
  9642  
  9643  type GetWirelessGatewayTaskOutput struct {
  9644  	_ struct{} `type:"structure"`
  9645  
  9646  	// The date and time when the most recent uplink was received.
  9647  	LastUplinkReceivedAt *string `type:"string"`
  9648  
  9649  	// The status of the request.
  9650  	Status *string `type:"string" enum:"WirelessGatewayTaskStatus"`
  9651  
  9652  	// The date and time when the task was created.
  9653  	TaskCreatedAt *string `type:"string"`
  9654  
  9655  	// The ID of the wireless gateway.
  9656  	WirelessGatewayId *string `type:"string"`
  9657  
  9658  	// The ID of the WirelessGatewayTask.
  9659  	WirelessGatewayTaskDefinitionId *string `type:"string"`
  9660  }
  9661  
  9662  // String returns the string representation.
  9663  //
  9664  // API parameter values that are decorated as "sensitive" in the API will not
  9665  // be included in the string output. The member name will be present, but the
  9666  // value will be replaced with "sensitive".
  9667  func (s GetWirelessGatewayTaskOutput) String() string {
  9668  	return awsutil.Prettify(s)
  9669  }
  9670  
  9671  // GoString returns the string representation.
  9672  //
  9673  // API parameter values that are decorated as "sensitive" in the API will not
  9674  // be included in the string output. The member name will be present, but the
  9675  // value will be replaced with "sensitive".
  9676  func (s GetWirelessGatewayTaskOutput) GoString() string {
  9677  	return s.String()
  9678  }
  9679  
  9680  // SetLastUplinkReceivedAt sets the LastUplinkReceivedAt field's value.
  9681  func (s *GetWirelessGatewayTaskOutput) SetLastUplinkReceivedAt(v string) *GetWirelessGatewayTaskOutput {
  9682  	s.LastUplinkReceivedAt = &v
  9683  	return s
  9684  }
  9685  
  9686  // SetStatus sets the Status field's value.
  9687  func (s *GetWirelessGatewayTaskOutput) SetStatus(v string) *GetWirelessGatewayTaskOutput {
  9688  	s.Status = &v
  9689  	return s
  9690  }
  9691  
  9692  // SetTaskCreatedAt sets the TaskCreatedAt field's value.
  9693  func (s *GetWirelessGatewayTaskOutput) SetTaskCreatedAt(v string) *GetWirelessGatewayTaskOutput {
  9694  	s.TaskCreatedAt = &v
  9695  	return s
  9696  }
  9697  
  9698  // SetWirelessGatewayId sets the WirelessGatewayId field's value.
  9699  func (s *GetWirelessGatewayTaskOutput) SetWirelessGatewayId(v string) *GetWirelessGatewayTaskOutput {
  9700  	s.WirelessGatewayId = &v
  9701  	return s
  9702  }
  9703  
  9704  // SetWirelessGatewayTaskDefinitionId sets the WirelessGatewayTaskDefinitionId field's value.
  9705  func (s *GetWirelessGatewayTaskOutput) SetWirelessGatewayTaskDefinitionId(v string) *GetWirelessGatewayTaskOutput {
  9706  	s.WirelessGatewayTaskDefinitionId = &v
  9707  	return s
  9708  }
  9709  
  9710  // An unexpected error occurred while processing a request.
  9711  type InternalServerException struct {
  9712  	_            struct{}                  `type:"structure"`
  9713  	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
  9714  
  9715  	Message_ *string `locationName:"Message" type:"string"`
  9716  }
  9717  
  9718  // String returns the string representation.
  9719  //
  9720  // API parameter values that are decorated as "sensitive" in the API will not
  9721  // be included in the string output. The member name will be present, but the
  9722  // value will be replaced with "sensitive".
  9723  func (s InternalServerException) String() string {
  9724  	return awsutil.Prettify(s)
  9725  }
  9726  
  9727  // GoString returns the string representation.
  9728  //
  9729  // API parameter values that are decorated as "sensitive" in the API will not
  9730  // be included in the string output. The member name will be present, but the
  9731  // value will be replaced with "sensitive".
  9732  func (s InternalServerException) GoString() string {
  9733  	return s.String()
  9734  }
  9735  
  9736  func newErrorInternalServerException(v protocol.ResponseMetadata) error {
  9737  	return &InternalServerException{
  9738  		RespMetadata: v,
  9739  	}
  9740  }
  9741  
  9742  // Code returns the exception type name.
  9743  func (s *InternalServerException) Code() string {
  9744  	return "InternalServerException"
  9745  }
  9746  
  9747  // Message returns the exception's message.
  9748  func (s *InternalServerException) Message() string {
  9749  	if s.Message_ != nil {
  9750  		return *s.Message_
  9751  	}
  9752  	return ""
  9753  }
  9754  
  9755  // OrigErr always returns nil, satisfies awserr.Error interface.
  9756  func (s *InternalServerException) OrigErr() error {
  9757  	return nil
  9758  }
  9759  
  9760  func (s *InternalServerException) Error() string {
  9761  	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
  9762  }
  9763  
  9764  // Status code returns the HTTP status code for the request's response error.
  9765  func (s *InternalServerException) StatusCode() int {
  9766  	return s.RespMetadata.StatusCode
  9767  }
  9768  
  9769  // RequestID returns the service's response RequestID for request.
  9770  func (s *InternalServerException) RequestID() string {
  9771  	return s.RespMetadata.RequestID
  9772  }
  9773  
  9774  type ListDestinationsInput struct {
  9775  	_ struct{} `type:"structure" nopayload:"true"`
  9776  
  9777  	// The maximum number of results to return in this operation.
  9778  	MaxResults *int64 `location:"querystring" locationName:"maxResults" type:"integer"`
  9779  
  9780  	// To retrieve the next set of results, the nextToken value from a previous
  9781  	// response; otherwise null to receive the first set of results.
  9782  	NextToken *string `location:"querystring" locationName:"nextToken" type:"string"`
  9783  }
  9784  
  9785  // String returns the string representation.
  9786  //
  9787  // API parameter values that are decorated as "sensitive" in the API will not
  9788  // be included in the string output. The member name will be present, but the
  9789  // value will be replaced with "sensitive".
  9790  func (s ListDestinationsInput) String() string {
  9791  	return awsutil.Prettify(s)
  9792  }
  9793  
  9794  // GoString returns the string representation.
  9795  //
  9796  // API parameter values that are decorated as "sensitive" in the API will not
  9797  // be included in the string output. The member name will be present, but the
  9798  // value will be replaced with "sensitive".
  9799  func (s ListDestinationsInput) GoString() string {
  9800  	return s.String()
  9801  }
  9802  
  9803  // SetMaxResults sets the MaxResults field's value.
  9804  func (s *ListDestinationsInput) SetMaxResults(v int64) *ListDestinationsInput {
  9805  	s.MaxResults = &v
  9806  	return s
  9807  }
  9808  
  9809  // SetNextToken sets the NextToken field's value.
  9810  func (s *ListDestinationsInput) SetNextToken(v string) *ListDestinationsInput {
  9811  	s.NextToken = &v
  9812  	return s
  9813  }
  9814  
  9815  type ListDestinationsOutput struct {
  9816  	_ struct{} `type:"structure"`
  9817  
  9818  	// The list of destinations.
  9819  	DestinationList []*Destinations `type:"list"`
  9820  
  9821  	// The token to use to get the next set of results, or null if there are no
  9822  	// additional results.
  9823  	NextToken *string `type:"string"`
  9824  }
  9825  
  9826  // String returns the string representation.
  9827  //
  9828  // API parameter values that are decorated as "sensitive" in the API will not
  9829  // be included in the string output. The member name will be present, but the
  9830  // value will be replaced with "sensitive".
  9831  func (s ListDestinationsOutput) String() string {
  9832  	return awsutil.Prettify(s)
  9833  }
  9834  
  9835  // GoString returns the string representation.
  9836  //
  9837  // API parameter values that are decorated as "sensitive" in the API will not
  9838  // be included in the string output. The member name will be present, but the
  9839  // value will be replaced with "sensitive".
  9840  func (s ListDestinationsOutput) GoString() string {
  9841  	return s.String()
  9842  }
  9843  
  9844  // SetDestinationList sets the DestinationList field's value.
  9845  func (s *ListDestinationsOutput) SetDestinationList(v []*Destinations) *ListDestinationsOutput {
  9846  	s.DestinationList = v
  9847  	return s
  9848  }
  9849  
  9850  // SetNextToken sets the NextToken field's value.
  9851  func (s *ListDestinationsOutput) SetNextToken(v string) *ListDestinationsOutput {
  9852  	s.NextToken = &v
  9853  	return s
  9854  }
  9855  
  9856  type ListDeviceProfilesInput struct {
  9857  	_ struct{} `type:"structure" nopayload:"true"`
  9858  
  9859  	// The maximum number of results to return in this operation.
  9860  	MaxResults *int64 `location:"querystring" locationName:"maxResults" type:"integer"`
  9861  
  9862  	// To retrieve the next set of results, the nextToken value from a previous
  9863  	// response; otherwise null to receive the first set of results.
  9864  	NextToken *string `location:"querystring" locationName:"nextToken" type:"string"`
  9865  }
  9866  
  9867  // String returns the string representation.
  9868  //
  9869  // API parameter values that are decorated as "sensitive" in the API will not
  9870  // be included in the string output. The member name will be present, but the
  9871  // value will be replaced with "sensitive".
  9872  func (s ListDeviceProfilesInput) String() string {
  9873  	return awsutil.Prettify(s)
  9874  }
  9875  
  9876  // GoString returns the string representation.
  9877  //
  9878  // API parameter values that are decorated as "sensitive" in the API will not
  9879  // be included in the string output. The member name will be present, but the
  9880  // value will be replaced with "sensitive".
  9881  func (s ListDeviceProfilesInput) GoString() string {
  9882  	return s.String()
  9883  }
  9884  
  9885  // SetMaxResults sets the MaxResults field's value.
  9886  func (s *ListDeviceProfilesInput) SetMaxResults(v int64) *ListDeviceProfilesInput {
  9887  	s.MaxResults = &v
  9888  	return s
  9889  }
  9890  
  9891  // SetNextToken sets the NextToken field's value.
  9892  func (s *ListDeviceProfilesInput) SetNextToken(v string) *ListDeviceProfilesInput {
  9893  	s.NextToken = &v
  9894  	return s
  9895  }
  9896  
  9897  type ListDeviceProfilesOutput struct {
  9898  	_ struct{} `type:"structure"`
  9899  
  9900  	// The list of device profiles.
  9901  	DeviceProfileList []*DeviceProfile `type:"list"`
  9902  
  9903  	// The token to use to get the next set of results, or null if there are no
  9904  	// additional results.
  9905  	NextToken *string `type:"string"`
  9906  }
  9907  
  9908  // String returns the string representation.
  9909  //
  9910  // API parameter values that are decorated as "sensitive" in the API will not
  9911  // be included in the string output. The member name will be present, but the
  9912  // value will be replaced with "sensitive".
  9913  func (s ListDeviceProfilesOutput) String() string {
  9914  	return awsutil.Prettify(s)
  9915  }
  9916  
  9917  // GoString returns the string representation.
  9918  //
  9919  // API parameter values that are decorated as "sensitive" in the API will not
  9920  // be included in the string output. The member name will be present, but the
  9921  // value will be replaced with "sensitive".
  9922  func (s ListDeviceProfilesOutput) GoString() string {
  9923  	return s.String()
  9924  }
  9925  
  9926  // SetDeviceProfileList sets the DeviceProfileList field's value.
  9927  func (s *ListDeviceProfilesOutput) SetDeviceProfileList(v []*DeviceProfile) *ListDeviceProfilesOutput {
  9928  	s.DeviceProfileList = v
  9929  	return s
  9930  }
  9931  
  9932  // SetNextToken sets the NextToken field's value.
  9933  func (s *ListDeviceProfilesOutput) SetNextToken(v string) *ListDeviceProfilesOutput {
  9934  	s.NextToken = &v
  9935  	return s
  9936  }
  9937  
  9938  type ListPartnerAccountsInput struct {
  9939  	_ struct{} `type:"structure" nopayload:"true"`
  9940  
  9941  	// The maximum number of results to return in this operation.
  9942  	MaxResults *int64 `location:"querystring" locationName:"maxResults" type:"integer"`
  9943  
  9944  	// To retrieve the next set of results, the nextToken value from a previous
  9945  	// response; otherwise null to receive the first set of results.
  9946  	NextToken *string `location:"querystring" locationName:"nextToken" type:"string"`
  9947  }
  9948  
  9949  // String returns the string representation.
  9950  //
  9951  // API parameter values that are decorated as "sensitive" in the API will not
  9952  // be included in the string output. The member name will be present, but the
  9953  // value will be replaced with "sensitive".
  9954  func (s ListPartnerAccountsInput) String() string {
  9955  	return awsutil.Prettify(s)
  9956  }
  9957  
  9958  // GoString returns the string representation.
  9959  //
  9960  // API parameter values that are decorated as "sensitive" in the API will not
  9961  // be included in the string output. The member name will be present, but the
  9962  // value will be replaced with "sensitive".
  9963  func (s ListPartnerAccountsInput) GoString() string {
  9964  	return s.String()
  9965  }
  9966  
  9967  // SetMaxResults sets the MaxResults field's value.
  9968  func (s *ListPartnerAccountsInput) SetMaxResults(v int64) *ListPartnerAccountsInput {
  9969  	s.MaxResults = &v
  9970  	return s
  9971  }
  9972  
  9973  // SetNextToken sets the NextToken field's value.
  9974  func (s *ListPartnerAccountsInput) SetNextToken(v string) *ListPartnerAccountsInput {
  9975  	s.NextToken = &v
  9976  	return s
  9977  }
  9978  
  9979  type ListPartnerAccountsOutput struct {
  9980  	_ struct{} `type:"structure"`
  9981  
  9982  	// The token to use to get the next set of results, or null if there are no
  9983  	// additional results.
  9984  	NextToken *string `type:"string"`
  9985  
  9986  	// The Sidewalk account credentials.
  9987  	Sidewalk []*SidewalkAccountInfoWithFingerprint `type:"list"`
  9988  }
  9989  
  9990  // String returns the string representation.
  9991  //
  9992  // API parameter values that are decorated as "sensitive" in the API will not
  9993  // be included in the string output. The member name will be present, but the
  9994  // value will be replaced with "sensitive".
  9995  func (s ListPartnerAccountsOutput) String() string {
  9996  	return awsutil.Prettify(s)
  9997  }
  9998  
  9999  // GoString returns the string representation.
 10000  //
 10001  // API parameter values that are decorated as "sensitive" in the API will not
 10002  // be included in the string output. The member name will be present, but the
 10003  // value will be replaced with "sensitive".
 10004  func (s ListPartnerAccountsOutput) GoString() string {
 10005  	return s.String()
 10006  }
 10007  
 10008  // SetNextToken sets the NextToken field's value.
 10009  func (s *ListPartnerAccountsOutput) SetNextToken(v string) *ListPartnerAccountsOutput {
 10010  	s.NextToken = &v
 10011  	return s
 10012  }
 10013  
 10014  // SetSidewalk sets the Sidewalk field's value.
 10015  func (s *ListPartnerAccountsOutput) SetSidewalk(v []*SidewalkAccountInfoWithFingerprint) *ListPartnerAccountsOutput {
 10016  	s.Sidewalk = v
 10017  	return s
 10018  }
 10019  
 10020  type ListServiceProfilesInput struct {
 10021  	_ struct{} `type:"structure" nopayload:"true"`
 10022  
 10023  	// The maximum number of results to return in this operation.
 10024  	MaxResults *int64 `location:"querystring" locationName:"maxResults" type:"integer"`
 10025  
 10026  	// To retrieve the next set of results, the nextToken value from a previous
 10027  	// response; otherwise null to receive the first set of results.
 10028  	NextToken *string `location:"querystring" locationName:"nextToken" type:"string"`
 10029  }
 10030  
 10031  // String returns the string representation.
 10032  //
 10033  // API parameter values that are decorated as "sensitive" in the API will not
 10034  // be included in the string output. The member name will be present, but the
 10035  // value will be replaced with "sensitive".
 10036  func (s ListServiceProfilesInput) String() string {
 10037  	return awsutil.Prettify(s)
 10038  }
 10039  
 10040  // GoString returns the string representation.
 10041  //
 10042  // API parameter values that are decorated as "sensitive" in the API will not
 10043  // be included in the string output. The member name will be present, but the
 10044  // value will be replaced with "sensitive".
 10045  func (s ListServiceProfilesInput) GoString() string {
 10046  	return s.String()
 10047  }
 10048  
 10049  // SetMaxResults sets the MaxResults field's value.
 10050  func (s *ListServiceProfilesInput) SetMaxResults(v int64) *ListServiceProfilesInput {
 10051  	s.MaxResults = &v
 10052  	return s
 10053  }
 10054  
 10055  // SetNextToken sets the NextToken field's value.
 10056  func (s *ListServiceProfilesInput) SetNextToken(v string) *ListServiceProfilesInput {
 10057  	s.NextToken = &v
 10058  	return s
 10059  }
 10060  
 10061  type ListServiceProfilesOutput struct {
 10062  	_ struct{} `type:"structure"`
 10063  
 10064  	// The token to use to get the next set of results, or null if there are no
 10065  	// additional results.
 10066  	NextToken *string `type:"string"`
 10067  
 10068  	// The list of service profiles.
 10069  	ServiceProfileList []*ServiceProfile `type:"list"`
 10070  }
 10071  
 10072  // String returns the string representation.
 10073  //
 10074  // API parameter values that are decorated as "sensitive" in the API will not
 10075  // be included in the string output. The member name will be present, but the
 10076  // value will be replaced with "sensitive".
 10077  func (s ListServiceProfilesOutput) String() string {
 10078  	return awsutil.Prettify(s)
 10079  }
 10080  
 10081  // GoString returns the string representation.
 10082  //
 10083  // API parameter values that are decorated as "sensitive" in the API will not
 10084  // be included in the string output. The member name will be present, but the
 10085  // value will be replaced with "sensitive".
 10086  func (s ListServiceProfilesOutput) GoString() string {
 10087  	return s.String()
 10088  }
 10089  
 10090  // SetNextToken sets the NextToken field's value.
 10091  func (s *ListServiceProfilesOutput) SetNextToken(v string) *ListServiceProfilesOutput {
 10092  	s.NextToken = &v
 10093  	return s
 10094  }
 10095  
 10096  // SetServiceProfileList sets the ServiceProfileList field's value.
 10097  func (s *ListServiceProfilesOutput) SetServiceProfileList(v []*ServiceProfile) *ListServiceProfilesOutput {
 10098  	s.ServiceProfileList = v
 10099  	return s
 10100  }
 10101  
 10102  type ListTagsForResourceInput struct {
 10103  	_ struct{} `type:"structure" nopayload:"true"`
 10104  
 10105  	// The ARN of the resource for which you want to list tags.
 10106  	//
 10107  	// ResourceArn is a required field
 10108  	ResourceArn *string `location:"querystring" locationName:"resourceArn" min:"1" type:"string" required:"true"`
 10109  }
 10110  
 10111  // String returns the string representation.
 10112  //
 10113  // API parameter values that are decorated as "sensitive" in the API will not
 10114  // be included in the string output. The member name will be present, but the
 10115  // value will be replaced with "sensitive".
 10116  func (s ListTagsForResourceInput) String() string {
 10117  	return awsutil.Prettify(s)
 10118  }
 10119  
 10120  // GoString returns the string representation.
 10121  //
 10122  // API parameter values that are decorated as "sensitive" in the API will not
 10123  // be included in the string output. The member name will be present, but the
 10124  // value will be replaced with "sensitive".
 10125  func (s ListTagsForResourceInput) GoString() string {
 10126  	return s.String()
 10127  }
 10128  
 10129  // Validate inspects the fields of the type to determine if they are valid.
 10130  func (s *ListTagsForResourceInput) Validate() error {
 10131  	invalidParams := request.ErrInvalidParams{Context: "ListTagsForResourceInput"}
 10132  	if s.ResourceArn == nil {
 10133  		invalidParams.Add(request.NewErrParamRequired("ResourceArn"))
 10134  	}
 10135  	if s.ResourceArn != nil && len(*s.ResourceArn) < 1 {
 10136  		invalidParams.Add(request.NewErrParamMinLen("ResourceArn", 1))
 10137  	}
 10138  
 10139  	if invalidParams.Len() > 0 {
 10140  		return invalidParams
 10141  	}
 10142  	return nil
 10143  }
 10144  
 10145  // SetResourceArn sets the ResourceArn field's value.
 10146  func (s *ListTagsForResourceInput) SetResourceArn(v string) *ListTagsForResourceInput {
 10147  	s.ResourceArn = &v
 10148  	return s
 10149  }
 10150  
 10151  type ListTagsForResourceOutput struct {
 10152  	_ struct{} `type:"structure"`
 10153  
 10154  	// The tags to attach to the specified resource. Tags are metadata that you
 10155  	// can use to manage a resource.
 10156  	Tags []*Tag `type:"list"`
 10157  }
 10158  
 10159  // String returns the string representation.
 10160  //
 10161  // API parameter values that are decorated as "sensitive" in the API will not
 10162  // be included in the string output. The member name will be present, but the
 10163  // value will be replaced with "sensitive".
 10164  func (s ListTagsForResourceOutput) String() string {
 10165  	return awsutil.Prettify(s)
 10166  }
 10167  
 10168  // GoString returns the string representation.
 10169  //
 10170  // API parameter values that are decorated as "sensitive" in the API will not
 10171  // be included in the string output. The member name will be present, but the
 10172  // value will be replaced with "sensitive".
 10173  func (s ListTagsForResourceOutput) GoString() string {
 10174  	return s.String()
 10175  }
 10176  
 10177  // SetTags sets the Tags field's value.
 10178  func (s *ListTagsForResourceOutput) SetTags(v []*Tag) *ListTagsForResourceOutput {
 10179  	s.Tags = v
 10180  	return s
 10181  }
 10182  
 10183  type ListWirelessDevicesInput struct {
 10184  	_ struct{} `type:"structure" nopayload:"true"`
 10185  
 10186  	// A filter to list only the wireless devices that use this destination.
 10187  	DestinationName *string `location:"querystring" locationName:"destinationName" type:"string"`
 10188  
 10189  	// A filter to list only the wireless devices that use this device profile.
 10190  	DeviceProfileId *string `location:"querystring" locationName:"deviceProfileId" type:"string"`
 10191  
 10192  	// The maximum number of results to return in this operation.
 10193  	MaxResults *int64 `location:"querystring" locationName:"maxResults" type:"integer"`
 10194  
 10195  	// To retrieve the next set of results, the nextToken value from a previous
 10196  	// response; otherwise null to receive the first set of results.
 10197  	NextToken *string `location:"querystring" locationName:"nextToken" type:"string"`
 10198  
 10199  	// A filter to list only the wireless devices that use this service profile.
 10200  	ServiceProfileId *string `location:"querystring" locationName:"serviceProfileId" type:"string"`
 10201  
 10202  	// A filter to list only the wireless devices that use this wireless device
 10203  	// type.
 10204  	WirelessDeviceType *string `location:"querystring" locationName:"wirelessDeviceType" type:"string" enum:"WirelessDeviceType"`
 10205  }
 10206  
 10207  // String returns the string representation.
 10208  //
 10209  // API parameter values that are decorated as "sensitive" in the API will not
 10210  // be included in the string output. The member name will be present, but the
 10211  // value will be replaced with "sensitive".
 10212  func (s ListWirelessDevicesInput) String() string {
 10213  	return awsutil.Prettify(s)
 10214  }
 10215  
 10216  // GoString returns the string representation.
 10217  //
 10218  // API parameter values that are decorated as "sensitive" in the API will not
 10219  // be included in the string output. The member name will be present, but the
 10220  // value will be replaced with "sensitive".
 10221  func (s ListWirelessDevicesInput) GoString() string {
 10222  	return s.String()
 10223  }
 10224  
 10225  // SetDestinationName sets the DestinationName field's value.
 10226  func (s *ListWirelessDevicesInput) SetDestinationName(v string) *ListWirelessDevicesInput {
 10227  	s.DestinationName = &v
 10228  	return s
 10229  }
 10230  
 10231  // SetDeviceProfileId sets the DeviceProfileId field's value.
 10232  func (s *ListWirelessDevicesInput) SetDeviceProfileId(v string) *ListWirelessDevicesInput {
 10233  	s.DeviceProfileId = &v
 10234  	return s
 10235  }
 10236  
 10237  // SetMaxResults sets the MaxResults field's value.
 10238  func (s *ListWirelessDevicesInput) SetMaxResults(v int64) *ListWirelessDevicesInput {
 10239  	s.MaxResults = &v
 10240  	return s
 10241  }
 10242  
 10243  // SetNextToken sets the NextToken field's value.
 10244  func (s *ListWirelessDevicesInput) SetNextToken(v string) *ListWirelessDevicesInput {
 10245  	s.NextToken = &v
 10246  	return s
 10247  }
 10248  
 10249  // SetServiceProfileId sets the ServiceProfileId field's value.
 10250  func (s *ListWirelessDevicesInput) SetServiceProfileId(v string) *ListWirelessDevicesInput {
 10251  	s.ServiceProfileId = &v
 10252  	return s
 10253  }
 10254  
 10255  // SetWirelessDeviceType sets the WirelessDeviceType field's value.
 10256  func (s *ListWirelessDevicesInput) SetWirelessDeviceType(v string) *ListWirelessDevicesInput {
 10257  	s.WirelessDeviceType = &v
 10258  	return s
 10259  }
 10260  
 10261  type ListWirelessDevicesOutput struct {
 10262  	_ struct{} `type:"structure"`
 10263  
 10264  	// The token to use to get the next set of results, or null if there are no
 10265  	// additional results.
 10266  	NextToken *string `type:"string"`
 10267  
 10268  	// The ID of the wireless device.
 10269  	WirelessDeviceList []*WirelessDeviceStatistics `type:"list"`
 10270  }
 10271  
 10272  // String returns the string representation.
 10273  //
 10274  // API parameter values that are decorated as "sensitive" in the API will not
 10275  // be included in the string output. The member name will be present, but the
 10276  // value will be replaced with "sensitive".
 10277  func (s ListWirelessDevicesOutput) String() string {
 10278  	return awsutil.Prettify(s)
 10279  }
 10280  
 10281  // GoString returns the string representation.
 10282  //
 10283  // API parameter values that are decorated as "sensitive" in the API will not
 10284  // be included in the string output. The member name will be present, but the
 10285  // value will be replaced with "sensitive".
 10286  func (s ListWirelessDevicesOutput) GoString() string {
 10287  	return s.String()
 10288  }
 10289  
 10290  // SetNextToken sets the NextToken field's value.
 10291  func (s *ListWirelessDevicesOutput) SetNextToken(v string) *ListWirelessDevicesOutput {
 10292  	s.NextToken = &v
 10293  	return s
 10294  }
 10295  
 10296  // SetWirelessDeviceList sets the WirelessDeviceList field's value.
 10297  func (s *ListWirelessDevicesOutput) SetWirelessDeviceList(v []*WirelessDeviceStatistics) *ListWirelessDevicesOutput {
 10298  	s.WirelessDeviceList = v
 10299  	return s
 10300  }
 10301  
 10302  type ListWirelessGatewayTaskDefinitionsInput struct {
 10303  	_ struct{} `type:"structure" nopayload:"true"`
 10304  
 10305  	// The maximum number of results to return in this operation.
 10306  	MaxResults *int64 `location:"querystring" locationName:"maxResults" type:"integer"`
 10307  
 10308  	// To retrieve the next set of results, the nextToken value from a previous
 10309  	// response; otherwise null to receive the first set of results.
 10310  	NextToken *string `location:"querystring" locationName:"nextToken" type:"string"`
 10311  
 10312  	// A filter to list only the wireless gateway task definitions that use this
 10313  	// task definition type.
 10314  	TaskDefinitionType *string `location:"querystring" locationName:"taskDefinitionType" type:"string" enum:"WirelessGatewayTaskDefinitionType"`
 10315  }
 10316  
 10317  // String returns the string representation.
 10318  //
 10319  // API parameter values that are decorated as "sensitive" in the API will not
 10320  // be included in the string output. The member name will be present, but the
 10321  // value will be replaced with "sensitive".
 10322  func (s ListWirelessGatewayTaskDefinitionsInput) String() string {
 10323  	return awsutil.Prettify(s)
 10324  }
 10325  
 10326  // GoString returns the string representation.
 10327  //
 10328  // API parameter values that are decorated as "sensitive" in the API will not
 10329  // be included in the string output. The member name will be present, but the
 10330  // value will be replaced with "sensitive".
 10331  func (s ListWirelessGatewayTaskDefinitionsInput) GoString() string {
 10332  	return s.String()
 10333  }
 10334  
 10335  // SetMaxResults sets the MaxResults field's value.
 10336  func (s *ListWirelessGatewayTaskDefinitionsInput) SetMaxResults(v int64) *ListWirelessGatewayTaskDefinitionsInput {
 10337  	s.MaxResults = &v
 10338  	return s
 10339  }
 10340  
 10341  // SetNextToken sets the NextToken field's value.
 10342  func (s *ListWirelessGatewayTaskDefinitionsInput) SetNextToken(v string) *ListWirelessGatewayTaskDefinitionsInput {
 10343  	s.NextToken = &v
 10344  	return s
 10345  }
 10346  
 10347  // SetTaskDefinitionType sets the TaskDefinitionType field's value.
 10348  func (s *ListWirelessGatewayTaskDefinitionsInput) SetTaskDefinitionType(v string) *ListWirelessGatewayTaskDefinitionsInput {
 10349  	s.TaskDefinitionType = &v
 10350  	return s
 10351  }
 10352  
 10353  type ListWirelessGatewayTaskDefinitionsOutput struct {
 10354  	_ struct{} `type:"structure"`
 10355  
 10356  	// The token to use to get the next set of results, or null if there are no
 10357  	// additional results.
 10358  	NextToken *string `type:"string"`
 10359  
 10360  	// The list of task definitions.
 10361  	TaskDefinitions []*UpdateWirelessGatewayTaskEntry `type:"list"`
 10362  }
 10363  
 10364  // String returns the string representation.
 10365  //
 10366  // API parameter values that are decorated as "sensitive" in the API will not
 10367  // be included in the string output. The member name will be present, but the
 10368  // value will be replaced with "sensitive".
 10369  func (s ListWirelessGatewayTaskDefinitionsOutput) String() string {
 10370  	return awsutil.Prettify(s)
 10371  }
 10372  
 10373  // GoString returns the string representation.
 10374  //
 10375  // API parameter values that are decorated as "sensitive" in the API will not
 10376  // be included in the string output. The member name will be present, but the
 10377  // value will be replaced with "sensitive".
 10378  func (s ListWirelessGatewayTaskDefinitionsOutput) GoString() string {
 10379  	return s.String()
 10380  }
 10381  
 10382  // SetNextToken sets the NextToken field's value.
 10383  func (s *ListWirelessGatewayTaskDefinitionsOutput) SetNextToken(v string) *ListWirelessGatewayTaskDefinitionsOutput {
 10384  	s.NextToken = &v
 10385  	return s
 10386  }
 10387  
 10388  // SetTaskDefinitions sets the TaskDefinitions field's value.
 10389  func (s *ListWirelessGatewayTaskDefinitionsOutput) SetTaskDefinitions(v []*UpdateWirelessGatewayTaskEntry) *ListWirelessGatewayTaskDefinitionsOutput {
 10390  	s.TaskDefinitions = v
 10391  	return s
 10392  }
 10393  
 10394  type ListWirelessGatewaysInput struct {
 10395  	_ struct{} `type:"structure" nopayload:"true"`
 10396  
 10397  	// The maximum number of results to return in this operation.
 10398  	MaxResults *int64 `location:"querystring" locationName:"maxResults" type:"integer"`
 10399  
 10400  	// To retrieve the next set of results, the nextToken value from a previous
 10401  	// response; otherwise null to receive the first set of results.
 10402  	NextToken *string `location:"querystring" locationName:"nextToken" type:"string"`
 10403  }
 10404  
 10405  // String returns the string representation.
 10406  //
 10407  // API parameter values that are decorated as "sensitive" in the API will not
 10408  // be included in the string output. The member name will be present, but the
 10409  // value will be replaced with "sensitive".
 10410  func (s ListWirelessGatewaysInput) String() string {
 10411  	return awsutil.Prettify(s)
 10412  }
 10413  
 10414  // GoString returns the string representation.
 10415  //
 10416  // API parameter values that are decorated as "sensitive" in the API will not
 10417  // be included in the string output. The member name will be present, but the
 10418  // value will be replaced with "sensitive".
 10419  func (s ListWirelessGatewaysInput) GoString() string {
 10420  	return s.String()
 10421  }
 10422  
 10423  // SetMaxResults sets the MaxResults field's value.
 10424  func (s *ListWirelessGatewaysInput) SetMaxResults(v int64) *ListWirelessGatewaysInput {
 10425  	s.MaxResults = &v
 10426  	return s
 10427  }
 10428  
 10429  // SetNextToken sets the NextToken field's value.
 10430  func (s *ListWirelessGatewaysInput) SetNextToken(v string) *ListWirelessGatewaysInput {
 10431  	s.NextToken = &v
 10432  	return s
 10433  }
 10434  
 10435  type ListWirelessGatewaysOutput struct {
 10436  	_ struct{} `type:"structure"`
 10437  
 10438  	// The token to use to get the next set of results, or null if there are no
 10439  	// additional results.
 10440  	NextToken *string `type:"string"`
 10441  
 10442  	// The ID of the wireless gateway.
 10443  	WirelessGatewayList []*WirelessGatewayStatistics `type:"list"`
 10444  }
 10445  
 10446  // String returns the string representation.
 10447  //
 10448  // API parameter values that are decorated as "sensitive" in the API will not
 10449  // be included in the string output. The member name will be present, but the
 10450  // value will be replaced with "sensitive".
 10451  func (s ListWirelessGatewaysOutput) String() string {
 10452  	return awsutil.Prettify(s)
 10453  }
 10454  
 10455  // GoString returns the string representation.
 10456  //
 10457  // API parameter values that are decorated as "sensitive" in the API will not
 10458  // be included in the string output. The member name will be present, but the
 10459  // value will be replaced with "sensitive".
 10460  func (s ListWirelessGatewaysOutput) GoString() string {
 10461  	return s.String()
 10462  }
 10463  
 10464  // SetNextToken sets the NextToken field's value.
 10465  func (s *ListWirelessGatewaysOutput) SetNextToken(v string) *ListWirelessGatewaysOutput {
 10466  	s.NextToken = &v
 10467  	return s
 10468  }
 10469  
 10470  // SetWirelessGatewayList sets the WirelessGatewayList field's value.
 10471  func (s *ListWirelessGatewaysOutput) SetWirelessGatewayList(v []*WirelessGatewayStatistics) *ListWirelessGatewaysOutput {
 10472  	s.WirelessGatewayList = v
 10473  	return s
 10474  }
 10475  
 10476  // LoRaWAN object for create functions.
 10477  type LoRaWANDevice struct {
 10478  	_ struct{} `type:"structure"`
 10479  
 10480  	// LoRaWAN object for create APIs
 10481  	AbpV1_0_x *AbpV10X `type:"structure"`
 10482  
 10483  	// ABP device object for create APIs for v1.1
 10484  	AbpV1_1 *AbpV11 `type:"structure"`
 10485  
 10486  	// The DevEUI value.
 10487  	DevEui *string `type:"string"`
 10488  
 10489  	// The ID of the device profile for the new wireless device.
 10490  	DeviceProfileId *string `type:"string"`
 10491  
 10492  	// OTAA device object for create APIs for v1.0.x
 10493  	OtaaV1_0_x *OtaaV10X `type:"structure"`
 10494  
 10495  	// OTAA device object for v1.1 for create APIs
 10496  	OtaaV1_1 *OtaaV11 `type:"structure"`
 10497  
 10498  	// The ID of the service profile.
 10499  	ServiceProfileId *string `type:"string"`
 10500  }
 10501  
 10502  // String returns the string representation.
 10503  //
 10504  // API parameter values that are decorated as "sensitive" in the API will not
 10505  // be included in the string output. The member name will be present, but the
 10506  // value will be replaced with "sensitive".
 10507  func (s LoRaWANDevice) String() string {
 10508  	return awsutil.Prettify(s)
 10509  }
 10510  
 10511  // GoString returns the string representation.
 10512  //
 10513  // API parameter values that are decorated as "sensitive" in the API will not
 10514  // be included in the string output. The member name will be present, but the
 10515  // value will be replaced with "sensitive".
 10516  func (s LoRaWANDevice) GoString() string {
 10517  	return s.String()
 10518  }
 10519  
 10520  // SetAbpV1_0_x sets the AbpV1_0_x field's value.
 10521  func (s *LoRaWANDevice) SetAbpV1_0_x(v *AbpV10X) *LoRaWANDevice {
 10522  	s.AbpV1_0_x = v
 10523  	return s
 10524  }
 10525  
 10526  // SetAbpV1_1 sets the AbpV1_1 field's value.
 10527  func (s *LoRaWANDevice) SetAbpV1_1(v *AbpV11) *LoRaWANDevice {
 10528  	s.AbpV1_1 = v
 10529  	return s
 10530  }
 10531  
 10532  // SetDevEui sets the DevEui field's value.
 10533  func (s *LoRaWANDevice) SetDevEui(v string) *LoRaWANDevice {
 10534  	s.DevEui = &v
 10535  	return s
 10536  }
 10537  
 10538  // SetDeviceProfileId sets the DeviceProfileId field's value.
 10539  func (s *LoRaWANDevice) SetDeviceProfileId(v string) *LoRaWANDevice {
 10540  	s.DeviceProfileId = &v
 10541  	return s
 10542  }
 10543  
 10544  // SetOtaaV1_0_x sets the OtaaV1_0_x field's value.
 10545  func (s *LoRaWANDevice) SetOtaaV1_0_x(v *OtaaV10X) *LoRaWANDevice {
 10546  	s.OtaaV1_0_x = v
 10547  	return s
 10548  }
 10549  
 10550  // SetOtaaV1_1 sets the OtaaV1_1 field's value.
 10551  func (s *LoRaWANDevice) SetOtaaV1_1(v *OtaaV11) *LoRaWANDevice {
 10552  	s.OtaaV1_1 = v
 10553  	return s
 10554  }
 10555  
 10556  // SetServiceProfileId sets the ServiceProfileId field's value.
 10557  func (s *LoRaWANDevice) SetServiceProfileId(v string) *LoRaWANDevice {
 10558  	s.ServiceProfileId = &v
 10559  	return s
 10560  }
 10561  
 10562  // LoRaWAN device metatdata.
 10563  type LoRaWANDeviceMetadata struct {
 10564  	_ struct{} `type:"structure"`
 10565  
 10566  	// The DataRate value.
 10567  	DataRate *int64 `type:"integer"`
 10568  
 10569  	// The DevEUI value.
 10570  	DevEui *string `type:"string"`
 10571  
 10572  	// The FPort value.
 10573  	FPort *int64 `type:"integer"`
 10574  
 10575  	// The device's channel frequency in Hz.
 10576  	Frequency *int64 `type:"integer"`
 10577  
 10578  	// Information about the gateways accessed by the device.
 10579  	Gateways []*LoRaWANGatewayMetadata `type:"list"`
 10580  
 10581  	// The date and time of the metadata.
 10582  	Timestamp *string `type:"string"`
 10583  }
 10584  
 10585  // String returns the string representation.
 10586  //
 10587  // API parameter values that are decorated as "sensitive" in the API will not
 10588  // be included in the string output. The member name will be present, but the
 10589  // value will be replaced with "sensitive".
 10590  func (s LoRaWANDeviceMetadata) String() string {
 10591  	return awsutil.Prettify(s)
 10592  }
 10593  
 10594  // GoString returns the string representation.
 10595  //
 10596  // API parameter values that are decorated as "sensitive" in the API will not
 10597  // be included in the string output. The member name will be present, but the
 10598  // value will be replaced with "sensitive".
 10599  func (s LoRaWANDeviceMetadata) GoString() string {
 10600  	return s.String()
 10601  }
 10602  
 10603  // SetDataRate sets the DataRate field's value.
 10604  func (s *LoRaWANDeviceMetadata) SetDataRate(v int64) *LoRaWANDeviceMetadata {
 10605  	s.DataRate = &v
 10606  	return s
 10607  }
 10608  
 10609  // SetDevEui sets the DevEui field's value.
 10610  func (s *LoRaWANDeviceMetadata) SetDevEui(v string) *LoRaWANDeviceMetadata {
 10611  	s.DevEui = &v
 10612  	return s
 10613  }
 10614  
 10615  // SetFPort sets the FPort field's value.
 10616  func (s *LoRaWANDeviceMetadata) SetFPort(v int64) *LoRaWANDeviceMetadata {
 10617  	s.FPort = &v
 10618  	return s
 10619  }
 10620  
 10621  // SetFrequency sets the Frequency field's value.
 10622  func (s *LoRaWANDeviceMetadata) SetFrequency(v int64) *LoRaWANDeviceMetadata {
 10623  	s.Frequency = &v
 10624  	return s
 10625  }
 10626  
 10627  // SetGateways sets the Gateways field's value.
 10628  func (s *LoRaWANDeviceMetadata) SetGateways(v []*LoRaWANGatewayMetadata) *LoRaWANDeviceMetadata {
 10629  	s.Gateways = v
 10630  	return s
 10631  }
 10632  
 10633  // SetTimestamp sets the Timestamp field's value.
 10634  func (s *LoRaWANDeviceMetadata) SetTimestamp(v string) *LoRaWANDeviceMetadata {
 10635  	s.Timestamp = &v
 10636  	return s
 10637  }
 10638  
 10639  // LoRaWANDeviceProfile object.
 10640  type LoRaWANDeviceProfile struct {
 10641  	_ struct{} `type:"structure"`
 10642  
 10643  	// The ClassBTimeout value.
 10644  	ClassBTimeout *int64 `type:"integer"`
 10645  
 10646  	// The ClassCTimeout value.
 10647  	ClassCTimeout *int64 `type:"integer"`
 10648  
 10649  	// The list of values that make up the FactoryPresetFreqs value.
 10650  	FactoryPresetFreqsList []*int64 `type:"list"`
 10651  
 10652  	// The MAC version (such as OTAA 1.1 or OTAA 1.0.3) to use with this device
 10653  	// profile.
 10654  	MacVersion *string `type:"string"`
 10655  
 10656  	// The MaxDutyCycle value.
 10657  	MaxDutyCycle *int64 `type:"integer"`
 10658  
 10659  	// The MaxEIRP value.
 10660  	MaxEirp *int64 `type:"integer"`
 10661  
 10662  	// The PingSlotDR value.
 10663  	PingSlotDr *int64 `type:"integer"`
 10664  
 10665  	// The PingSlotFreq value.
 10666  	PingSlotFreq *int64 `min:"1e+06" type:"integer"`
 10667  
 10668  	// The PingSlotPeriod value.
 10669  	PingSlotPeriod *int64 `min:"128" type:"integer"`
 10670  
 10671  	// The version of regional parameters.
 10672  	RegParamsRevision *string `type:"string"`
 10673  
 10674  	// The frequency band (RFRegion) value.
 10675  	RfRegion *string `type:"string"`
 10676  
 10677  	// The RXDataRate2 value.
 10678  	RxDataRate2 *int64 `type:"integer"`
 10679  
 10680  	// The RXDelay1 value.
 10681  	RxDelay1 *int64 `type:"integer"`
 10682  
 10683  	// The RXDROffset1 value.
 10684  	RxDrOffset1 *int64 `type:"integer"`
 10685  
 10686  	// The RXFreq2 value.
 10687  	RxFreq2 *int64 `min:"1e+06" type:"integer"`
 10688  
 10689  	// The Supports32BitFCnt value.
 10690  	Supports32BitFCnt *bool `type:"boolean"`
 10691  
 10692  	// The SupportsClassB value.
 10693  	SupportsClassB *bool `type:"boolean"`
 10694  
 10695  	// The SupportsClassC value.
 10696  	SupportsClassC *bool `type:"boolean"`
 10697  
 10698  	// The SupportsJoin value.
 10699  	SupportsJoin *bool `type:"boolean"`
 10700  }
 10701  
 10702  // String returns the string representation.
 10703  //
 10704  // API parameter values that are decorated as "sensitive" in the API will not
 10705  // be included in the string output. The member name will be present, but the
 10706  // value will be replaced with "sensitive".
 10707  func (s LoRaWANDeviceProfile) String() string {
 10708  	return awsutil.Prettify(s)
 10709  }
 10710  
 10711  // GoString returns the string representation.
 10712  //
 10713  // API parameter values that are decorated as "sensitive" in the API will not
 10714  // be included in the string output. The member name will be present, but the
 10715  // value will be replaced with "sensitive".
 10716  func (s LoRaWANDeviceProfile) GoString() string {
 10717  	return s.String()
 10718  }
 10719  
 10720  // Validate inspects the fields of the type to determine if they are valid.
 10721  func (s *LoRaWANDeviceProfile) Validate() error {
 10722  	invalidParams := request.ErrInvalidParams{Context: "LoRaWANDeviceProfile"}
 10723  	if s.PingSlotFreq != nil && *s.PingSlotFreq < 1e+06 {
 10724  		invalidParams.Add(request.NewErrParamMinValue("PingSlotFreq", 1e+06))
 10725  	}
 10726  	if s.PingSlotPeriod != nil && *s.PingSlotPeriod < 128 {
 10727  		invalidParams.Add(request.NewErrParamMinValue("PingSlotPeriod", 128))
 10728  	}
 10729  	if s.RxFreq2 != nil && *s.RxFreq2 < 1e+06 {
 10730  		invalidParams.Add(request.NewErrParamMinValue("RxFreq2", 1e+06))
 10731  	}
 10732  
 10733  	if invalidParams.Len() > 0 {
 10734  		return invalidParams
 10735  	}
 10736  	return nil
 10737  }
 10738  
 10739  // SetClassBTimeout sets the ClassBTimeout field's value.
 10740  func (s *LoRaWANDeviceProfile) SetClassBTimeout(v int64) *LoRaWANDeviceProfile {
 10741  	s.ClassBTimeout = &v
 10742  	return s
 10743  }
 10744  
 10745  // SetClassCTimeout sets the ClassCTimeout field's value.
 10746  func (s *LoRaWANDeviceProfile) SetClassCTimeout(v int64) *LoRaWANDeviceProfile {
 10747  	s.ClassCTimeout = &v
 10748  	return s
 10749  }
 10750  
 10751  // SetFactoryPresetFreqsList sets the FactoryPresetFreqsList field's value.
 10752  func (s *LoRaWANDeviceProfile) SetFactoryPresetFreqsList(v []*int64) *LoRaWANDeviceProfile {
 10753  	s.FactoryPresetFreqsList = v
 10754  	return s
 10755  }
 10756  
 10757  // SetMacVersion sets the MacVersion field's value.
 10758  func (s *LoRaWANDeviceProfile) SetMacVersion(v string) *LoRaWANDeviceProfile {
 10759  	s.MacVersion = &v
 10760  	return s
 10761  }
 10762  
 10763  // SetMaxDutyCycle sets the MaxDutyCycle field's value.
 10764  func (s *LoRaWANDeviceProfile) SetMaxDutyCycle(v int64) *LoRaWANDeviceProfile {
 10765  	s.MaxDutyCycle = &v
 10766  	return s
 10767  }
 10768  
 10769  // SetMaxEirp sets the MaxEirp field's value.
 10770  func (s *LoRaWANDeviceProfile) SetMaxEirp(v int64) *LoRaWANDeviceProfile {
 10771  	s.MaxEirp = &v
 10772  	return s
 10773  }
 10774  
 10775  // SetPingSlotDr sets the PingSlotDr field's value.
 10776  func (s *LoRaWANDeviceProfile) SetPingSlotDr(v int64) *LoRaWANDeviceProfile {
 10777  	s.PingSlotDr = &v
 10778  	return s
 10779  }
 10780  
 10781  // SetPingSlotFreq sets the PingSlotFreq field's value.
 10782  func (s *LoRaWANDeviceProfile) SetPingSlotFreq(v int64) *LoRaWANDeviceProfile {
 10783  	s.PingSlotFreq = &v
 10784  	return s
 10785  }
 10786  
 10787  // SetPingSlotPeriod sets the PingSlotPeriod field's value.
 10788  func (s *LoRaWANDeviceProfile) SetPingSlotPeriod(v int64) *LoRaWANDeviceProfile {
 10789  	s.PingSlotPeriod = &v
 10790  	return s
 10791  }
 10792  
 10793  // SetRegParamsRevision sets the RegParamsRevision field's value.
 10794  func (s *LoRaWANDeviceProfile) SetRegParamsRevision(v string) *LoRaWANDeviceProfile {
 10795  	s.RegParamsRevision = &v
 10796  	return s
 10797  }
 10798  
 10799  // SetRfRegion sets the RfRegion field's value.
 10800  func (s *LoRaWANDeviceProfile) SetRfRegion(v string) *LoRaWANDeviceProfile {
 10801  	s.RfRegion = &v
 10802  	return s
 10803  }
 10804  
 10805  // SetRxDataRate2 sets the RxDataRate2 field's value.
 10806  func (s *LoRaWANDeviceProfile) SetRxDataRate2(v int64) *LoRaWANDeviceProfile {
 10807  	s.RxDataRate2 = &v
 10808  	return s
 10809  }
 10810  
 10811  // SetRxDelay1 sets the RxDelay1 field's value.
 10812  func (s *LoRaWANDeviceProfile) SetRxDelay1(v int64) *LoRaWANDeviceProfile {
 10813  	s.RxDelay1 = &v
 10814  	return s
 10815  }
 10816  
 10817  // SetRxDrOffset1 sets the RxDrOffset1 field's value.
 10818  func (s *LoRaWANDeviceProfile) SetRxDrOffset1(v int64) *LoRaWANDeviceProfile {
 10819  	s.RxDrOffset1 = &v
 10820  	return s
 10821  }
 10822  
 10823  // SetRxFreq2 sets the RxFreq2 field's value.
 10824  func (s *LoRaWANDeviceProfile) SetRxFreq2(v int64) *LoRaWANDeviceProfile {
 10825  	s.RxFreq2 = &v
 10826  	return s
 10827  }
 10828  
 10829  // SetSupports32BitFCnt sets the Supports32BitFCnt field's value.
 10830  func (s *LoRaWANDeviceProfile) SetSupports32BitFCnt(v bool) *LoRaWANDeviceProfile {
 10831  	s.Supports32BitFCnt = &v
 10832  	return s
 10833  }
 10834  
 10835  // SetSupportsClassB sets the SupportsClassB field's value.
 10836  func (s *LoRaWANDeviceProfile) SetSupportsClassB(v bool) *LoRaWANDeviceProfile {
 10837  	s.SupportsClassB = &v
 10838  	return s
 10839  }
 10840  
 10841  // SetSupportsClassC sets the SupportsClassC field's value.
 10842  func (s *LoRaWANDeviceProfile) SetSupportsClassC(v bool) *LoRaWANDeviceProfile {
 10843  	s.SupportsClassC = &v
 10844  	return s
 10845  }
 10846  
 10847  // SetSupportsJoin sets the SupportsJoin field's value.
 10848  func (s *LoRaWANDeviceProfile) SetSupportsJoin(v bool) *LoRaWANDeviceProfile {
 10849  	s.SupportsJoin = &v
 10850  	return s
 10851  }
 10852  
 10853  // LoRaWANGateway object.
 10854  type LoRaWANGateway struct {
 10855  	_ struct{} `type:"structure"`
 10856  
 10857  	// The gateway's EUI value.
 10858  	GatewayEui *string `type:"string"`
 10859  
 10860  	// A list of JoinEuiRange used by LoRa gateways to filter LoRa frames.
 10861  	JoinEuiFilters [][]*string `type:"list"`
 10862  
 10863  	// A list of NetId values that are used by LoRa gateways to filter the uplink
 10864  	// frames.
 10865  	NetIdFilters []*string `type:"list"`
 10866  
 10867  	// The frequency band (RFRegion) value.
 10868  	RfRegion *string `type:"string"`
 10869  
 10870  	// A list of integer indicating which sub bands are supported by LoRa gateway.
 10871  	SubBands []*int64 `type:"list"`
 10872  }
 10873  
 10874  // String returns the string representation.
 10875  //
 10876  // API parameter values that are decorated as "sensitive" in the API will not
 10877  // be included in the string output. The member name will be present, but the
 10878  // value will be replaced with "sensitive".
 10879  func (s LoRaWANGateway) String() string {
 10880  	return awsutil.Prettify(s)
 10881  }
 10882  
 10883  // GoString returns the string representation.
 10884  //
 10885  // API parameter values that are decorated as "sensitive" in the API will not
 10886  // be included in the string output. The member name will be present, but the
 10887  // value will be replaced with "sensitive".
 10888  func (s LoRaWANGateway) GoString() string {
 10889  	return s.String()
 10890  }
 10891  
 10892  // SetGatewayEui sets the GatewayEui field's value.
 10893  func (s *LoRaWANGateway) SetGatewayEui(v string) *LoRaWANGateway {
 10894  	s.GatewayEui = &v
 10895  	return s
 10896  }
 10897  
 10898  // SetJoinEuiFilters sets the JoinEuiFilters field's value.
 10899  func (s *LoRaWANGateway) SetJoinEuiFilters(v [][]*string) *LoRaWANGateway {
 10900  	s.JoinEuiFilters = v
 10901  	return s
 10902  }
 10903  
 10904  // SetNetIdFilters sets the NetIdFilters field's value.
 10905  func (s *LoRaWANGateway) SetNetIdFilters(v []*string) *LoRaWANGateway {
 10906  	s.NetIdFilters = v
 10907  	return s
 10908  }
 10909  
 10910  // SetRfRegion sets the RfRegion field's value.
 10911  func (s *LoRaWANGateway) SetRfRegion(v string) *LoRaWANGateway {
 10912  	s.RfRegion = &v
 10913  	return s
 10914  }
 10915  
 10916  // SetSubBands sets the SubBands field's value.
 10917  func (s *LoRaWANGateway) SetSubBands(v []*int64) *LoRaWANGateway {
 10918  	s.SubBands = v
 10919  	return s
 10920  }
 10921  
 10922  // LoRaWANGatewayCurrentVersion object.
 10923  type LoRaWANGatewayCurrentVersion struct {
 10924  	_ struct{} `type:"structure"`
 10925  
 10926  	// The version of the gateways that should receive the update.
 10927  	CurrentVersion *LoRaWANGatewayVersion `type:"structure"`
 10928  }
 10929  
 10930  // String returns the string representation.
 10931  //
 10932  // API parameter values that are decorated as "sensitive" in the API will not
 10933  // be included in the string output. The member name will be present, but the
 10934  // value will be replaced with "sensitive".
 10935  func (s LoRaWANGatewayCurrentVersion) String() string {
 10936  	return awsutil.Prettify(s)
 10937  }
 10938  
 10939  // GoString returns the string representation.
 10940  //
 10941  // API parameter values that are decorated as "sensitive" in the API will not
 10942  // be included in the string output. The member name will be present, but the
 10943  // value will be replaced with "sensitive".
 10944  func (s LoRaWANGatewayCurrentVersion) GoString() string {
 10945  	return s.String()
 10946  }
 10947  
 10948  // SetCurrentVersion sets the CurrentVersion field's value.
 10949  func (s *LoRaWANGatewayCurrentVersion) SetCurrentVersion(v *LoRaWANGatewayVersion) *LoRaWANGatewayCurrentVersion {
 10950  	s.CurrentVersion = v
 10951  	return s
 10952  }
 10953  
 10954  // LoRaWAN gateway metatdata.
 10955  type LoRaWANGatewayMetadata struct {
 10956  	_ struct{} `type:"structure"`
 10957  
 10958  	// The gateway's EUI value.
 10959  	GatewayEui *string `type:"string"`
 10960  
 10961  	// The RSSI value.
 10962  	Rssi *float64 `type:"double"`
 10963  
 10964  	// The SNR value.
 10965  	Snr *float64 `type:"double"`
 10966  }
 10967  
 10968  // String returns the string representation.
 10969  //
 10970  // API parameter values that are decorated as "sensitive" in the API will not
 10971  // be included in the string output. The member name will be present, but the
 10972  // value will be replaced with "sensitive".
 10973  func (s LoRaWANGatewayMetadata) String() string {
 10974  	return awsutil.Prettify(s)
 10975  }
 10976  
 10977  // GoString returns the string representation.
 10978  //
 10979  // API parameter values that are decorated as "sensitive" in the API will not
 10980  // be included in the string output. The member name will be present, but the
 10981  // value will be replaced with "sensitive".
 10982  func (s LoRaWANGatewayMetadata) GoString() string {
 10983  	return s.String()
 10984  }
 10985  
 10986  // SetGatewayEui sets the GatewayEui field's value.
 10987  func (s *LoRaWANGatewayMetadata) SetGatewayEui(v string) *LoRaWANGatewayMetadata {
 10988  	s.GatewayEui = &v
 10989  	return s
 10990  }
 10991  
 10992  // SetRssi sets the Rssi field's value.
 10993  func (s *LoRaWANGatewayMetadata) SetRssi(v float64) *LoRaWANGatewayMetadata {
 10994  	s.Rssi = &v
 10995  	return s
 10996  }
 10997  
 10998  // SetSnr sets the Snr field's value.
 10999  func (s *LoRaWANGatewayMetadata) SetSnr(v float64) *LoRaWANGatewayMetadata {
 11000  	s.Snr = &v
 11001  	return s
 11002  }
 11003  
 11004  // LoRaWANGatewayVersion object.
 11005  type LoRaWANGatewayVersion struct {
 11006  	_ struct{} `type:"structure"`
 11007  
 11008  	// The model number of the wireless gateway.
 11009  	Model *string `min:"1" type:"string"`
 11010  
 11011  	// The version of the wireless gateway firmware.
 11012  	PackageVersion *string `min:"1" type:"string"`
 11013  
 11014  	// The basic station version of the wireless gateway.
 11015  	Station *string `min:"1" type:"string"`
 11016  }
 11017  
 11018  // String returns the string representation.
 11019  //
 11020  // API parameter values that are decorated as "sensitive" in the API will not
 11021  // be included in the string output. The member name will be present, but the
 11022  // value will be replaced with "sensitive".
 11023  func (s LoRaWANGatewayVersion) String() string {
 11024  	return awsutil.Prettify(s)
 11025  }
 11026  
 11027  // GoString returns the string representation.
 11028  //
 11029  // API parameter values that are decorated as "sensitive" in the API will not
 11030  // be included in the string output. The member name will be present, but the
 11031  // value will be replaced with "sensitive".
 11032  func (s LoRaWANGatewayVersion) GoString() string {
 11033  	return s.String()
 11034  }
 11035  
 11036  // Validate inspects the fields of the type to determine if they are valid.
 11037  func (s *LoRaWANGatewayVersion) Validate() error {
 11038  	invalidParams := request.ErrInvalidParams{Context: "LoRaWANGatewayVersion"}
 11039  	if s.Model != nil && len(*s.Model) < 1 {
 11040  		invalidParams.Add(request.NewErrParamMinLen("Model", 1))
 11041  	}
 11042  	if s.PackageVersion != nil && len(*s.PackageVersion) < 1 {
 11043  		invalidParams.Add(request.NewErrParamMinLen("PackageVersion", 1))
 11044  	}
 11045  	if s.Station != nil && len(*s.Station) < 1 {
 11046  		invalidParams.Add(request.NewErrParamMinLen("Station", 1))
 11047  	}
 11048  
 11049  	if invalidParams.Len() > 0 {
 11050  		return invalidParams
 11051  	}
 11052  	return nil
 11053  }
 11054  
 11055  // SetModel sets the Model field's value.
 11056  func (s *LoRaWANGatewayVersion) SetModel(v string) *LoRaWANGatewayVersion {
 11057  	s.Model = &v
 11058  	return s
 11059  }
 11060  
 11061  // SetPackageVersion sets the PackageVersion field's value.
 11062  func (s *LoRaWANGatewayVersion) SetPackageVersion(v string) *LoRaWANGatewayVersion {
 11063  	s.PackageVersion = &v
 11064  	return s
 11065  }
 11066  
 11067  // SetStation sets the Station field's value.
 11068  func (s *LoRaWANGatewayVersion) SetStation(v string) *LoRaWANGatewayVersion {
 11069  	s.Station = &v
 11070  	return s
 11071  }
 11072  
 11073  // LoRaWANGetServiceProfileInfo object.
 11074  type LoRaWANGetServiceProfileInfo struct {
 11075  	_ struct{} `type:"structure"`
 11076  
 11077  	// The AddGWMetaData value.
 11078  	AddGwMetadata *bool `type:"boolean"`
 11079  
 11080  	// The ChannelMask value.
 11081  	ChannelMask *string `type:"string"`
 11082  
 11083  	// The DevStatusReqFreq value.
 11084  	DevStatusReqFreq *int64 `type:"integer"`
 11085  
 11086  	// The DLBucketSize value.
 11087  	DlBucketSize *int64 `type:"integer"`
 11088  
 11089  	// The DLRate value.
 11090  	DlRate *int64 `type:"integer"`
 11091  
 11092  	// The DLRatePolicy value.
 11093  	DlRatePolicy *string `type:"string"`
 11094  
 11095  	// The DRMax value.
 11096  	DrMax *int64 `type:"integer"`
 11097  
 11098  	// The DRMin value.
 11099  	DrMin *int64 `type:"integer"`
 11100  
 11101  	// The HRAllowed value that describes whether handover roaming is allowed.
 11102  	HrAllowed *bool `type:"boolean"`
 11103  
 11104  	// The MinGwDiversity value.
 11105  	MinGwDiversity *int64 `min:"1" type:"integer"`
 11106  
 11107  	// The NwkGeoLoc value.
 11108  	NwkGeoLoc *bool `type:"boolean"`
 11109  
 11110  	// The PRAllowed value that describes whether passive roaming is allowed.
 11111  	PrAllowed *bool `type:"boolean"`
 11112  
 11113  	// The RAAllowed value that describes whether roaming activation is allowed.
 11114  	RaAllowed *bool `type:"boolean"`
 11115  
 11116  	// The ReportDevStatusBattery value.
 11117  	ReportDevStatusBattery *bool `type:"boolean"`
 11118  
 11119  	// The ReportDevStatusMargin value.
 11120  	ReportDevStatusMargin *bool `type:"boolean"`
 11121  
 11122  	// The TargetPER value.
 11123  	TargetPer *int64 `type:"integer"`
 11124  
 11125  	// The ULBucketSize value.
 11126  	UlBucketSize *int64 `type:"integer"`
 11127  
 11128  	// The ULRate value.
 11129  	UlRate *int64 `type:"integer"`
 11130  
 11131  	// The ULRatePolicy value.
 11132  	UlRatePolicy *string `type:"string"`
 11133  }
 11134  
 11135  // String returns the string representation.
 11136  //
 11137  // API parameter values that are decorated as "sensitive" in the API will not
 11138  // be included in the string output. The member name will be present, but the
 11139  // value will be replaced with "sensitive".
 11140  func (s LoRaWANGetServiceProfileInfo) String() string {
 11141  	return awsutil.Prettify(s)
 11142  }
 11143  
 11144  // GoString returns the string representation.
 11145  //
 11146  // API parameter values that are decorated as "sensitive" in the API will not
 11147  // be included in the string output. The member name will be present, but the
 11148  // value will be replaced with "sensitive".
 11149  func (s LoRaWANGetServiceProfileInfo) GoString() string {
 11150  	return s.String()
 11151  }
 11152  
 11153  // SetAddGwMetadata sets the AddGwMetadata field's value.
 11154  func (s *LoRaWANGetServiceProfileInfo) SetAddGwMetadata(v bool) *LoRaWANGetServiceProfileInfo {
 11155  	s.AddGwMetadata = &v
 11156  	return s
 11157  }
 11158  
 11159  // SetChannelMask sets the ChannelMask field's value.
 11160  func (s *LoRaWANGetServiceProfileInfo) SetChannelMask(v string) *LoRaWANGetServiceProfileInfo {
 11161  	s.ChannelMask = &v
 11162  	return s
 11163  }
 11164  
 11165  // SetDevStatusReqFreq sets the DevStatusReqFreq field's value.
 11166  func (s *LoRaWANGetServiceProfileInfo) SetDevStatusReqFreq(v int64) *LoRaWANGetServiceProfileInfo {
 11167  	s.DevStatusReqFreq = &v
 11168  	return s
 11169  }
 11170  
 11171  // SetDlBucketSize sets the DlBucketSize field's value.
 11172  func (s *LoRaWANGetServiceProfileInfo) SetDlBucketSize(v int64) *LoRaWANGetServiceProfileInfo {
 11173  	s.DlBucketSize = &v
 11174  	return s
 11175  }
 11176  
 11177  // SetDlRate sets the DlRate field's value.
 11178  func (s *LoRaWANGetServiceProfileInfo) SetDlRate(v int64) *LoRaWANGetServiceProfileInfo {
 11179  	s.DlRate = &v
 11180  	return s
 11181  }
 11182  
 11183  // SetDlRatePolicy sets the DlRatePolicy field's value.
 11184  func (s *LoRaWANGetServiceProfileInfo) SetDlRatePolicy(v string) *LoRaWANGetServiceProfileInfo {
 11185  	s.DlRatePolicy = &v
 11186  	return s
 11187  }
 11188  
 11189  // SetDrMax sets the DrMax field's value.
 11190  func (s *LoRaWANGetServiceProfileInfo) SetDrMax(v int64) *LoRaWANGetServiceProfileInfo {
 11191  	s.DrMax = &v
 11192  	return s
 11193  }
 11194  
 11195  // SetDrMin sets the DrMin field's value.
 11196  func (s *LoRaWANGetServiceProfileInfo) SetDrMin(v int64) *LoRaWANGetServiceProfileInfo {
 11197  	s.DrMin = &v
 11198  	return s
 11199  }
 11200  
 11201  // SetHrAllowed sets the HrAllowed field's value.
 11202  func (s *LoRaWANGetServiceProfileInfo) SetHrAllowed(v bool) *LoRaWANGetServiceProfileInfo {
 11203  	s.HrAllowed = &v
 11204  	return s
 11205  }
 11206  
 11207  // SetMinGwDiversity sets the MinGwDiversity field's value.
 11208  func (s *LoRaWANGetServiceProfileInfo) SetMinGwDiversity(v int64) *LoRaWANGetServiceProfileInfo {
 11209  	s.MinGwDiversity = &v
 11210  	return s
 11211  }
 11212  
 11213  // SetNwkGeoLoc sets the NwkGeoLoc field's value.
 11214  func (s *LoRaWANGetServiceProfileInfo) SetNwkGeoLoc(v bool) *LoRaWANGetServiceProfileInfo {
 11215  	s.NwkGeoLoc = &v
 11216  	return s
 11217  }
 11218  
 11219  // SetPrAllowed sets the PrAllowed field's value.
 11220  func (s *LoRaWANGetServiceProfileInfo) SetPrAllowed(v bool) *LoRaWANGetServiceProfileInfo {
 11221  	s.PrAllowed = &v
 11222  	return s
 11223  }
 11224  
 11225  // SetRaAllowed sets the RaAllowed field's value.
 11226  func (s *LoRaWANGetServiceProfileInfo) SetRaAllowed(v bool) *LoRaWANGetServiceProfileInfo {
 11227  	s.RaAllowed = &v
 11228  	return s
 11229  }
 11230  
 11231  // SetReportDevStatusBattery sets the ReportDevStatusBattery field's value.
 11232  func (s *LoRaWANGetServiceProfileInfo) SetReportDevStatusBattery(v bool) *LoRaWANGetServiceProfileInfo {
 11233  	s.ReportDevStatusBattery = &v
 11234  	return s
 11235  }
 11236  
 11237  // SetReportDevStatusMargin sets the ReportDevStatusMargin field's value.
 11238  func (s *LoRaWANGetServiceProfileInfo) SetReportDevStatusMargin(v bool) *LoRaWANGetServiceProfileInfo {
 11239  	s.ReportDevStatusMargin = &v
 11240  	return s
 11241  }
 11242  
 11243  // SetTargetPer sets the TargetPer field's value.
 11244  func (s *LoRaWANGetServiceProfileInfo) SetTargetPer(v int64) *LoRaWANGetServiceProfileInfo {
 11245  	s.TargetPer = &v
 11246  	return s
 11247  }
 11248  
 11249  // SetUlBucketSize sets the UlBucketSize field's value.
 11250  func (s *LoRaWANGetServiceProfileInfo) SetUlBucketSize(v int64) *LoRaWANGetServiceProfileInfo {
 11251  	s.UlBucketSize = &v
 11252  	return s
 11253  }
 11254  
 11255  // SetUlRate sets the UlRate field's value.
 11256  func (s *LoRaWANGetServiceProfileInfo) SetUlRate(v int64) *LoRaWANGetServiceProfileInfo {
 11257  	s.UlRate = &v
 11258  	return s
 11259  }
 11260  
 11261  // SetUlRatePolicy sets the UlRatePolicy field's value.
 11262  func (s *LoRaWANGetServiceProfileInfo) SetUlRatePolicy(v string) *LoRaWANGetServiceProfileInfo {
 11263  	s.UlRatePolicy = &v
 11264  	return s
 11265  }
 11266  
 11267  // LoRaWAN object for list functions.
 11268  type LoRaWANListDevice struct {
 11269  	_ struct{} `type:"structure"`
 11270  
 11271  	// The DevEUI value.
 11272  	DevEui *string `type:"string"`
 11273  }
 11274  
 11275  // String returns the string representation.
 11276  //
 11277  // API parameter values that are decorated as "sensitive" in the API will not
 11278  // be included in the string output. The member name will be present, but the
 11279  // value will be replaced with "sensitive".
 11280  func (s LoRaWANListDevice) String() string {
 11281  	return awsutil.Prettify(s)
 11282  }
 11283  
 11284  // GoString returns the string representation.
 11285  //
 11286  // API parameter values that are decorated as "sensitive" in the API will not
 11287  // be included in the string output. The member name will be present, but the
 11288  // value will be replaced with "sensitive".
 11289  func (s LoRaWANListDevice) GoString() string {
 11290  	return s.String()
 11291  }
 11292  
 11293  // SetDevEui sets the DevEui field's value.
 11294  func (s *LoRaWANListDevice) SetDevEui(v string) *LoRaWANListDevice {
 11295  	s.DevEui = &v
 11296  	return s
 11297  }
 11298  
 11299  // LoRaWAN router info.
 11300  type LoRaWANSendDataToDevice struct {
 11301  	_ struct{} `type:"structure"`
 11302  
 11303  	// The Fport value.
 11304  	FPort *int64 `min:"1" type:"integer"`
 11305  }
 11306  
 11307  // String returns the string representation.
 11308  //
 11309  // API parameter values that are decorated as "sensitive" in the API will not
 11310  // be included in the string output. The member name will be present, but the
 11311  // value will be replaced with "sensitive".
 11312  func (s LoRaWANSendDataToDevice) String() string {
 11313  	return awsutil.Prettify(s)
 11314  }
 11315  
 11316  // GoString returns the string representation.
 11317  //
 11318  // API parameter values that are decorated as "sensitive" in the API will not
 11319  // be included in the string output. The member name will be present, but the
 11320  // value will be replaced with "sensitive".
 11321  func (s LoRaWANSendDataToDevice) GoString() string {
 11322  	return s.String()
 11323  }
 11324  
 11325  // Validate inspects the fields of the type to determine if they are valid.
 11326  func (s *LoRaWANSendDataToDevice) Validate() error {
 11327  	invalidParams := request.ErrInvalidParams{Context: "LoRaWANSendDataToDevice"}
 11328  	if s.FPort != nil && *s.FPort < 1 {
 11329  		invalidParams.Add(request.NewErrParamMinValue("FPort", 1))
 11330  	}
 11331  
 11332  	if invalidParams.Len() > 0 {
 11333  		return invalidParams
 11334  	}
 11335  	return nil
 11336  }
 11337  
 11338  // SetFPort sets the FPort field's value.
 11339  func (s *LoRaWANSendDataToDevice) SetFPort(v int64) *LoRaWANSendDataToDevice {
 11340  	s.FPort = &v
 11341  	return s
 11342  }
 11343  
 11344  // LoRaWANServiceProfile object.
 11345  type LoRaWANServiceProfile struct {
 11346  	_ struct{} `type:"structure"`
 11347  
 11348  	// The AddGWMetaData value.
 11349  	AddGwMetadata *bool `type:"boolean"`
 11350  }
 11351  
 11352  // String returns the string representation.
 11353  //
 11354  // API parameter values that are decorated as "sensitive" in the API will not
 11355  // be included in the string output. The member name will be present, but the
 11356  // value will be replaced with "sensitive".
 11357  func (s LoRaWANServiceProfile) String() string {
 11358  	return awsutil.Prettify(s)
 11359  }
 11360  
 11361  // GoString returns the string representation.
 11362  //
 11363  // API parameter values that are decorated as "sensitive" in the API will not
 11364  // be included in the string output. The member name will be present, but the
 11365  // value will be replaced with "sensitive".
 11366  func (s LoRaWANServiceProfile) GoString() string {
 11367  	return s.String()
 11368  }
 11369  
 11370  // SetAddGwMetadata sets the AddGwMetadata field's value.
 11371  func (s *LoRaWANServiceProfile) SetAddGwMetadata(v bool) *LoRaWANServiceProfile {
 11372  	s.AddGwMetadata = &v
 11373  	return s
 11374  }
 11375  
 11376  // LoRaWAN object for update functions.
 11377  type LoRaWANUpdateDevice struct {
 11378  	_ struct{} `type:"structure"`
 11379  
 11380  	// The ID of the device profile for the wireless device.
 11381  	DeviceProfileId *string `type:"string"`
 11382  
 11383  	// The ID of the service profile.
 11384  	ServiceProfileId *string `type:"string"`
 11385  }
 11386  
 11387  // String returns the string representation.
 11388  //
 11389  // API parameter values that are decorated as "sensitive" in the API will not
 11390  // be included in the string output. The member name will be present, but the
 11391  // value will be replaced with "sensitive".
 11392  func (s LoRaWANUpdateDevice) String() string {
 11393  	return awsutil.Prettify(s)
 11394  }
 11395  
 11396  // GoString returns the string representation.
 11397  //
 11398  // API parameter values that are decorated as "sensitive" in the API will not
 11399  // be included in the string output. The member name will be present, but the
 11400  // value will be replaced with "sensitive".
 11401  func (s LoRaWANUpdateDevice) GoString() string {
 11402  	return s.String()
 11403  }
 11404  
 11405  // SetDeviceProfileId sets the DeviceProfileId field's value.
 11406  func (s *LoRaWANUpdateDevice) SetDeviceProfileId(v string) *LoRaWANUpdateDevice {
 11407  	s.DeviceProfileId = &v
 11408  	return s
 11409  }
 11410  
 11411  // SetServiceProfileId sets the ServiceProfileId field's value.
 11412  func (s *LoRaWANUpdateDevice) SetServiceProfileId(v string) *LoRaWANUpdateDevice {
 11413  	s.ServiceProfileId = &v
 11414  	return s
 11415  }
 11416  
 11417  // LoRaWANUpdateGatewayTaskCreate object.
 11418  type LoRaWANUpdateGatewayTaskCreate struct {
 11419  	_ struct{} `type:"structure"`
 11420  
 11421  	// The version of the gateways that should receive the update.
 11422  	CurrentVersion *LoRaWANGatewayVersion `type:"structure"`
 11423  
 11424  	// The CRC of the signature private key to check.
 11425  	SigKeyCrc *int64 `min:"1" type:"long"`
 11426  
 11427  	// The signature used to verify the update firmware.
 11428  	UpdateSignature *string `min:"1" type:"string"`
 11429  
 11430  	// The firmware version to update the gateway to.
 11431  	UpdateVersion *LoRaWANGatewayVersion `type:"structure"`
 11432  }
 11433  
 11434  // String returns the string representation.
 11435  //
 11436  // API parameter values that are decorated as "sensitive" in the API will not
 11437  // be included in the string output. The member name will be present, but the
 11438  // value will be replaced with "sensitive".
 11439  func (s LoRaWANUpdateGatewayTaskCreate) String() string {
 11440  	return awsutil.Prettify(s)
 11441  }
 11442  
 11443  // GoString returns the string representation.
 11444  //
 11445  // API parameter values that are decorated as "sensitive" in the API will not
 11446  // be included in the string output. The member name will be present, but the
 11447  // value will be replaced with "sensitive".
 11448  func (s LoRaWANUpdateGatewayTaskCreate) GoString() string {
 11449  	return s.String()
 11450  }
 11451  
 11452  // Validate inspects the fields of the type to determine if they are valid.
 11453  func (s *LoRaWANUpdateGatewayTaskCreate) Validate() error {
 11454  	invalidParams := request.ErrInvalidParams{Context: "LoRaWANUpdateGatewayTaskCreate"}
 11455  	if s.SigKeyCrc != nil && *s.SigKeyCrc < 1 {
 11456  		invalidParams.Add(request.NewErrParamMinValue("SigKeyCrc", 1))
 11457  	}
 11458  	if s.UpdateSignature != nil && len(*s.UpdateSignature) < 1 {
 11459  		invalidParams.Add(request.NewErrParamMinLen("UpdateSignature", 1))
 11460  	}
 11461  	if s.CurrentVersion != nil {
 11462  		if err := s.CurrentVersion.Validate(); err != nil {
 11463  			invalidParams.AddNested("CurrentVersion", err.(request.ErrInvalidParams))
 11464  		}
 11465  	}
 11466  	if s.UpdateVersion != nil {
 11467  		if err := s.UpdateVersion.Validate(); err != nil {
 11468  			invalidParams.AddNested("UpdateVersion", err.(request.ErrInvalidParams))
 11469  		}
 11470  	}
 11471  
 11472  	if invalidParams.Len() > 0 {
 11473  		return invalidParams
 11474  	}
 11475  	return nil
 11476  }
 11477  
 11478  // SetCurrentVersion sets the CurrentVersion field's value.
 11479  func (s *LoRaWANUpdateGatewayTaskCreate) SetCurrentVersion(v *LoRaWANGatewayVersion) *LoRaWANUpdateGatewayTaskCreate {
 11480  	s.CurrentVersion = v
 11481  	return s
 11482  }
 11483  
 11484  // SetSigKeyCrc sets the SigKeyCrc field's value.
 11485  func (s *LoRaWANUpdateGatewayTaskCreate) SetSigKeyCrc(v int64) *LoRaWANUpdateGatewayTaskCreate {
 11486  	s.SigKeyCrc = &v
 11487  	return s
 11488  }
 11489  
 11490  // SetUpdateSignature sets the UpdateSignature field's value.
 11491  func (s *LoRaWANUpdateGatewayTaskCreate) SetUpdateSignature(v string) *LoRaWANUpdateGatewayTaskCreate {
 11492  	s.UpdateSignature = &v
 11493  	return s
 11494  }
 11495  
 11496  // SetUpdateVersion sets the UpdateVersion field's value.
 11497  func (s *LoRaWANUpdateGatewayTaskCreate) SetUpdateVersion(v *LoRaWANGatewayVersion) *LoRaWANUpdateGatewayTaskCreate {
 11498  	s.UpdateVersion = v
 11499  	return s
 11500  }
 11501  
 11502  // LoRaWANUpdateGatewayTaskEntry object.
 11503  type LoRaWANUpdateGatewayTaskEntry struct {
 11504  	_ struct{} `type:"structure"`
 11505  
 11506  	// The version of the gateways that should receive the update.
 11507  	CurrentVersion *LoRaWANGatewayVersion `type:"structure"`
 11508  
 11509  	// The firmware version to update the gateway to.
 11510  	UpdateVersion *LoRaWANGatewayVersion `type:"structure"`
 11511  }
 11512  
 11513  // String returns the string representation.
 11514  //
 11515  // API parameter values that are decorated as "sensitive" in the API will not
 11516  // be included in the string output. The member name will be present, but the
 11517  // value will be replaced with "sensitive".
 11518  func (s LoRaWANUpdateGatewayTaskEntry) String() string {
 11519  	return awsutil.Prettify(s)
 11520  }
 11521  
 11522  // GoString returns the string representation.
 11523  //
 11524  // API parameter values that are decorated as "sensitive" in the API will not
 11525  // be included in the string output. The member name will be present, but the
 11526  // value will be replaced with "sensitive".
 11527  func (s LoRaWANUpdateGatewayTaskEntry) GoString() string {
 11528  	return s.String()
 11529  }
 11530  
 11531  // SetCurrentVersion sets the CurrentVersion field's value.
 11532  func (s *LoRaWANUpdateGatewayTaskEntry) SetCurrentVersion(v *LoRaWANGatewayVersion) *LoRaWANUpdateGatewayTaskEntry {
 11533  	s.CurrentVersion = v
 11534  	return s
 11535  }
 11536  
 11537  // SetUpdateVersion sets the UpdateVersion field's value.
 11538  func (s *LoRaWANUpdateGatewayTaskEntry) SetUpdateVersion(v *LoRaWANGatewayVersion) *LoRaWANUpdateGatewayTaskEntry {
 11539  	s.UpdateVersion = v
 11540  	return s
 11541  }
 11542  
 11543  // OTAA device object for v1.0.x
 11544  type OtaaV10X struct {
 11545  	_ struct{} `type:"structure"`
 11546  
 11547  	// The AppEUI value.
 11548  	AppEui *string `type:"string"`
 11549  
 11550  	// The AppKey value.
 11551  	AppKey *string `type:"string"`
 11552  }
 11553  
 11554  // String returns the string representation.
 11555  //
 11556  // API parameter values that are decorated as "sensitive" in the API will not
 11557  // be included in the string output. The member name will be present, but the
 11558  // value will be replaced with "sensitive".
 11559  func (s OtaaV10X) String() string {
 11560  	return awsutil.Prettify(s)
 11561  }
 11562  
 11563  // GoString returns the string representation.
 11564  //
 11565  // API parameter values that are decorated as "sensitive" in the API will not
 11566  // be included in the string output. The member name will be present, but the
 11567  // value will be replaced with "sensitive".
 11568  func (s OtaaV10X) GoString() string {
 11569  	return s.String()
 11570  }
 11571  
 11572  // SetAppEui sets the AppEui field's value.
 11573  func (s *OtaaV10X) SetAppEui(v string) *OtaaV10X {
 11574  	s.AppEui = &v
 11575  	return s
 11576  }
 11577  
 11578  // SetAppKey sets the AppKey field's value.
 11579  func (s *OtaaV10X) SetAppKey(v string) *OtaaV10X {
 11580  	s.AppKey = &v
 11581  	return s
 11582  }
 11583  
 11584  // OTAA device object for v1.1
 11585  type OtaaV11 struct {
 11586  	_ struct{} `type:"structure"`
 11587  
 11588  	// The AppKey value.
 11589  	AppKey *string `type:"string"`
 11590  
 11591  	// The JoinEUI value.
 11592  	JoinEui *string `type:"string"`
 11593  
 11594  	// The NwkKey value.
 11595  	NwkKey *string `type:"string"`
 11596  }
 11597  
 11598  // String returns the string representation.
 11599  //
 11600  // API parameter values that are decorated as "sensitive" in the API will not
 11601  // be included in the string output. The member name will be present, but the
 11602  // value will be replaced with "sensitive".
 11603  func (s OtaaV11) String() string {
 11604  	return awsutil.Prettify(s)
 11605  }
 11606  
 11607  // GoString returns the string representation.
 11608  //
 11609  // API parameter values that are decorated as "sensitive" in the API will not
 11610  // be included in the string output. The member name will be present, but the
 11611  // value will be replaced with "sensitive".
 11612  func (s OtaaV11) GoString() string {
 11613  	return s.String()
 11614  }
 11615  
 11616  // SetAppKey sets the AppKey field's value.
 11617  func (s *OtaaV11) SetAppKey(v string) *OtaaV11 {
 11618  	s.AppKey = &v
 11619  	return s
 11620  }
 11621  
 11622  // SetJoinEui sets the JoinEui field's value.
 11623  func (s *OtaaV11) SetJoinEui(v string) *OtaaV11 {
 11624  	s.JoinEui = &v
 11625  	return s
 11626  }
 11627  
 11628  // SetNwkKey sets the NwkKey field's value.
 11629  func (s *OtaaV11) SetNwkKey(v string) *OtaaV11 {
 11630  	s.NwkKey = &v
 11631  	return s
 11632  }
 11633  
 11634  type PutResourceLogLevelInput struct {
 11635  	_ struct{} `type:"structure"`
 11636  
 11637  	// The log level for a log message.
 11638  	//
 11639  	// LogLevel is a required field
 11640  	LogLevel *string `type:"string" required:"true" enum:"LogLevel"`
 11641  
 11642  	// The identifier of the resource. For a Wireless Device, it is the wireless
 11643  	// device ID. For a wireless gateway, it is the wireless gateway ID.
 11644  	//
 11645  	// ResourceIdentifier is a required field
 11646  	ResourceIdentifier *string `location:"uri" locationName:"ResourceIdentifier" type:"string" required:"true"`
 11647  
 11648  	// The type of the resource, which can be WirelessDevice or WirelessGateway.
 11649  	//
 11650  	// ResourceType is a required field
 11651  	ResourceType *string `location:"querystring" locationName:"resourceType" type:"string" required:"true"`
 11652  }
 11653  
 11654  // String returns the string representation.
 11655  //
 11656  // API parameter values that are decorated as "sensitive" in the API will not
 11657  // be included in the string output. The member name will be present, but the
 11658  // value will be replaced with "sensitive".
 11659  func (s PutResourceLogLevelInput) String() string {
 11660  	return awsutil.Prettify(s)
 11661  }
 11662  
 11663  // GoString returns the string representation.
 11664  //
 11665  // API parameter values that are decorated as "sensitive" in the API will not
 11666  // be included in the string output. The member name will be present, but the
 11667  // value will be replaced with "sensitive".
 11668  func (s PutResourceLogLevelInput) GoString() string {
 11669  	return s.String()
 11670  }
 11671  
 11672  // Validate inspects the fields of the type to determine if they are valid.
 11673  func (s *PutResourceLogLevelInput) Validate() error {
 11674  	invalidParams := request.ErrInvalidParams{Context: "PutResourceLogLevelInput"}
 11675  	if s.LogLevel == nil {
 11676  		invalidParams.Add(request.NewErrParamRequired("LogLevel"))
 11677  	}
 11678  	if s.ResourceIdentifier == nil {
 11679  		invalidParams.Add(request.NewErrParamRequired("ResourceIdentifier"))
 11680  	}
 11681  	if s.ResourceIdentifier != nil && len(*s.ResourceIdentifier) < 1 {
 11682  		invalidParams.Add(request.NewErrParamMinLen("ResourceIdentifier", 1))
 11683  	}
 11684  	if s.ResourceType == nil {
 11685  		invalidParams.Add(request.NewErrParamRequired("ResourceType"))
 11686  	}
 11687  
 11688  	if invalidParams.Len() > 0 {
 11689  		return invalidParams
 11690  	}
 11691  	return nil
 11692  }
 11693  
 11694  // SetLogLevel sets the LogLevel field's value.
 11695  func (s *PutResourceLogLevelInput) SetLogLevel(v string) *PutResourceLogLevelInput {
 11696  	s.LogLevel = &v
 11697  	return s
 11698  }
 11699  
 11700  // SetResourceIdentifier sets the ResourceIdentifier field's value.
 11701  func (s *PutResourceLogLevelInput) SetResourceIdentifier(v string) *PutResourceLogLevelInput {
 11702  	s.ResourceIdentifier = &v
 11703  	return s
 11704  }
 11705  
 11706  // SetResourceType sets the ResourceType field's value.
 11707  func (s *PutResourceLogLevelInput) SetResourceType(v string) *PutResourceLogLevelInput {
 11708  	s.ResourceType = &v
 11709  	return s
 11710  }
 11711  
 11712  type PutResourceLogLevelOutput struct {
 11713  	_ struct{} `type:"structure" nopayload:"true"`
 11714  }
 11715  
 11716  // String returns the string representation.
 11717  //
 11718  // API parameter values that are decorated as "sensitive" in the API will not
 11719  // be included in the string output. The member name will be present, but the
 11720  // value will be replaced with "sensitive".
 11721  func (s PutResourceLogLevelOutput) String() string {
 11722  	return awsutil.Prettify(s)
 11723  }
 11724  
 11725  // GoString returns the string representation.
 11726  //
 11727  // API parameter values that are decorated as "sensitive" in the API will not
 11728  // be included in the string output. The member name will be present, but the
 11729  // value will be replaced with "sensitive".
 11730  func (s PutResourceLogLevelOutput) GoString() string {
 11731  	return s.String()
 11732  }
 11733  
 11734  type ResetAllResourceLogLevelsInput struct {
 11735  	_ struct{} `type:"structure" nopayload:"true"`
 11736  }
 11737  
 11738  // String returns the string representation.
 11739  //
 11740  // API parameter values that are decorated as "sensitive" in the API will not
 11741  // be included in the string output. The member name will be present, but the
 11742  // value will be replaced with "sensitive".
 11743  func (s ResetAllResourceLogLevelsInput) String() string {
 11744  	return awsutil.Prettify(s)
 11745  }
 11746  
 11747  // GoString returns the string representation.
 11748  //
 11749  // API parameter values that are decorated as "sensitive" in the API will not
 11750  // be included in the string output. The member name will be present, but the
 11751  // value will be replaced with "sensitive".
 11752  func (s ResetAllResourceLogLevelsInput) GoString() string {
 11753  	return s.String()
 11754  }
 11755  
 11756  type ResetAllResourceLogLevelsOutput struct {
 11757  	_ struct{} `type:"structure" nopayload:"true"`
 11758  }
 11759  
 11760  // String returns the string representation.
 11761  //
 11762  // API parameter values that are decorated as "sensitive" in the API will not
 11763  // be included in the string output. The member name will be present, but the
 11764  // value will be replaced with "sensitive".
 11765  func (s ResetAllResourceLogLevelsOutput) String() string {
 11766  	return awsutil.Prettify(s)
 11767  }
 11768  
 11769  // GoString returns the string representation.
 11770  //
 11771  // API parameter values that are decorated as "sensitive" in the API will not
 11772  // be included in the string output. The member name will be present, but the
 11773  // value will be replaced with "sensitive".
 11774  func (s ResetAllResourceLogLevelsOutput) GoString() string {
 11775  	return s.String()
 11776  }
 11777  
 11778  type ResetResourceLogLevelInput struct {
 11779  	_ struct{} `type:"structure" nopayload:"true"`
 11780  
 11781  	// The identifier of the resource. For a Wireless Device, it is the wireless
 11782  	// device ID. For a wireless gateway, it is the wireless gateway ID.
 11783  	//
 11784  	// ResourceIdentifier is a required field
 11785  	ResourceIdentifier *string `location:"uri" locationName:"ResourceIdentifier" type:"string" required:"true"`
 11786  
 11787  	// The type of the resource, which can be WirelessDevice or WirelessGateway.
 11788  	//
 11789  	// ResourceType is a required field
 11790  	ResourceType *string `location:"querystring" locationName:"resourceType" type:"string" required:"true"`
 11791  }
 11792  
 11793  // String returns the string representation.
 11794  //
 11795  // API parameter values that are decorated as "sensitive" in the API will not
 11796  // be included in the string output. The member name will be present, but the
 11797  // value will be replaced with "sensitive".
 11798  func (s ResetResourceLogLevelInput) String() string {
 11799  	return awsutil.Prettify(s)
 11800  }
 11801  
 11802  // GoString returns the string representation.
 11803  //
 11804  // API parameter values that are decorated as "sensitive" in the API will not
 11805  // be included in the string output. The member name will be present, but the
 11806  // value will be replaced with "sensitive".
 11807  func (s ResetResourceLogLevelInput) GoString() string {
 11808  	return s.String()
 11809  }
 11810  
 11811  // Validate inspects the fields of the type to determine if they are valid.
 11812  func (s *ResetResourceLogLevelInput) Validate() error {
 11813  	invalidParams := request.ErrInvalidParams{Context: "ResetResourceLogLevelInput"}
 11814  	if s.ResourceIdentifier == nil {
 11815  		invalidParams.Add(request.NewErrParamRequired("ResourceIdentifier"))
 11816  	}
 11817  	if s.ResourceIdentifier != nil && len(*s.ResourceIdentifier) < 1 {
 11818  		invalidParams.Add(request.NewErrParamMinLen("ResourceIdentifier", 1))
 11819  	}
 11820  	if s.ResourceType == nil {
 11821  		invalidParams.Add(request.NewErrParamRequired("ResourceType"))
 11822  	}
 11823  
 11824  	if invalidParams.Len() > 0 {
 11825  		return invalidParams
 11826  	}
 11827  	return nil
 11828  }
 11829  
 11830  // SetResourceIdentifier sets the ResourceIdentifier field's value.
 11831  func (s *ResetResourceLogLevelInput) SetResourceIdentifier(v string) *ResetResourceLogLevelInput {
 11832  	s.ResourceIdentifier = &v
 11833  	return s
 11834  }
 11835  
 11836  // SetResourceType sets the ResourceType field's value.
 11837  func (s *ResetResourceLogLevelInput) SetResourceType(v string) *ResetResourceLogLevelInput {
 11838  	s.ResourceType = &v
 11839  	return s
 11840  }
 11841  
 11842  type ResetResourceLogLevelOutput struct {
 11843  	_ struct{} `type:"structure" nopayload:"true"`
 11844  }
 11845  
 11846  // String returns the string representation.
 11847  //
 11848  // API parameter values that are decorated as "sensitive" in the API will not
 11849  // be included in the string output. The member name will be present, but the
 11850  // value will be replaced with "sensitive".
 11851  func (s ResetResourceLogLevelOutput) String() string {
 11852  	return awsutil.Prettify(s)
 11853  }
 11854  
 11855  // GoString returns the string representation.
 11856  //
 11857  // API parameter values that are decorated as "sensitive" in the API will not
 11858  // be included in the string output. The member name will be present, but the
 11859  // value will be replaced with "sensitive".
 11860  func (s ResetResourceLogLevelOutput) GoString() string {
 11861  	return s.String()
 11862  }
 11863  
 11864  // Resource does not exist.
 11865  type ResourceNotFoundException struct {
 11866  	_            struct{}                  `type:"structure"`
 11867  	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
 11868  
 11869  	Message_ *string `locationName:"Message" type:"string"`
 11870  
 11871  	// Id of the not found resource.
 11872  	ResourceId *string `type:"string"`
 11873  
 11874  	// Type of the font found resource.
 11875  	ResourceType *string `type:"string"`
 11876  }
 11877  
 11878  // String returns the string representation.
 11879  //
 11880  // API parameter values that are decorated as "sensitive" in the API will not
 11881  // be included in the string output. The member name will be present, but the
 11882  // value will be replaced with "sensitive".
 11883  func (s ResourceNotFoundException) String() string {
 11884  	return awsutil.Prettify(s)
 11885  }
 11886  
 11887  // GoString returns the string representation.
 11888  //
 11889  // API parameter values that are decorated as "sensitive" in the API will not
 11890  // be included in the string output. The member name will be present, but the
 11891  // value will be replaced with "sensitive".
 11892  func (s ResourceNotFoundException) GoString() string {
 11893  	return s.String()
 11894  }
 11895  
 11896  func newErrorResourceNotFoundException(v protocol.ResponseMetadata) error {
 11897  	return &ResourceNotFoundException{
 11898  		RespMetadata: v,
 11899  	}
 11900  }
 11901  
 11902  // Code returns the exception type name.
 11903  func (s *ResourceNotFoundException) Code() string {
 11904  	return "ResourceNotFoundException"
 11905  }
 11906  
 11907  // Message returns the exception's message.
 11908  func (s *ResourceNotFoundException) Message() string {
 11909  	if s.Message_ != nil {
 11910  		return *s.Message_
 11911  	}
 11912  	return ""
 11913  }
 11914  
 11915  // OrigErr always returns nil, satisfies awserr.Error interface.
 11916  func (s *ResourceNotFoundException) OrigErr() error {
 11917  	return nil
 11918  }
 11919  
 11920  func (s *ResourceNotFoundException) Error() string {
 11921  	return fmt.Sprintf("%s: %s\n%s", s.Code(), s.Message(), s.String())
 11922  }
 11923  
 11924  // Status code returns the HTTP status code for the request's response error.
 11925  func (s *ResourceNotFoundException) StatusCode() int {
 11926  	return s.RespMetadata.StatusCode
 11927  }
 11928  
 11929  // RequestID returns the service's response RequestID for request.
 11930  func (s *ResourceNotFoundException) RequestID() string {
 11931  	return s.RespMetadata.RequestID
 11932  }
 11933  
 11934  type SendDataToWirelessDeviceInput struct {
 11935  	_ struct{} `type:"structure"`
 11936  
 11937  	// The ID of the wireless device to receive the data.
 11938  	//
 11939  	// Id is a required field
 11940  	Id *string `location:"uri" locationName:"Id" type:"string" required:"true"`
 11941  
 11942  	// The binary to be sent to the end device, encoded in base64.
 11943  	//
 11944  	// PayloadData is a required field
 11945  	PayloadData *string `type:"string" required:"true"`
 11946  
 11947  	// The transmit mode to use to send data to the wireless device. Can be: 0 for
 11948  	// UM (unacknowledge mode) or 1 for AM (acknowledge mode).
 11949  	//
 11950  	// TransmitMode is a required field
 11951  	TransmitMode *int64 `type:"integer" required:"true"`
 11952  
 11953  	// Metadata about the message request.
 11954  	WirelessMetadata *WirelessMetadata `type:"structure"`
 11955  }
 11956  
 11957  // String returns the string representation.
 11958  //
 11959  // API parameter values that are decorated as "sensitive" in the API will not
 11960  // be included in the string output. The member name will be present, but the
 11961  // value will be replaced with "sensitive".
 11962  func (s SendDataToWirelessDeviceInput) String() string {
 11963  	return awsutil.Prettify(s)
 11964  }
 11965  
 11966  // GoString returns the string representation.
 11967  //
 11968  // API parameter values that are decorated as "sensitive" in the API will not
 11969  // be included in the string output. The member name will be present, but the
 11970  // value will be replaced with "sensitive".
 11971  func (s SendDataToWirelessDeviceInput) GoString() string {
 11972  	return s.String()
 11973  }
 11974  
 11975  // Validate inspects the fields of the type to determine if they are valid.
 11976  func (s *SendDataToWirelessDeviceInput) Validate() error {
 11977  	invalidParams := request.ErrInvalidParams{Context: "SendDataToWirelessDeviceInput"}
 11978  	if s.Id == nil {
 11979  		invalidParams.Add(request.NewErrParamRequired("Id"))
 11980  	}
 11981  	if s.Id != nil && len(*s.Id) < 1 {
 11982  		invalidParams.Add(request.NewErrParamMinLen("Id", 1))
 11983  	}
 11984  	if s.PayloadData == nil {
 11985  		invalidParams.Add(request.NewErrParamRequired("PayloadData"))
 11986  	}
 11987  	if s.TransmitMode == nil {
 11988  		invalidParams.Add(request.NewErrParamRequired("TransmitMode"))
 11989  	}
 11990  	if s.WirelessMetadata != nil {
 11991  		if err := s.WirelessMetadata.Validate(); err != nil {
 11992  			invalidParams.AddNested("WirelessMetadata", err.(request.ErrInvalidParams))
 11993  		}
 11994  	}
 11995  
 11996  	if invalidParams.Len() > 0 {
 11997  		return invalidParams
 11998  	}
 11999  	return nil
 12000  }
 12001  
 12002  // SetId sets the Id field's value.
 12003  func (s *SendDataToWirelessDeviceInput) SetId(v string) *SendDataToWirelessDeviceInput {
 12004  	s.Id = &v
 12005  	return s
 12006  }
 12007  
 12008  // SetPayloadData sets the PayloadData field's value.
 12009  func (s *SendDataToWirelessDeviceInput) SetPayloadData(v string) *SendDataToWirelessDeviceInput {
 12010  	s.PayloadData = &v
 12011  	return s
 12012  }
 12013  
 12014  // SetTransmitMode sets the TransmitMode field's value.
 12015  func (s *SendDataToWirelessDeviceInput) SetTransmitMode(v int64) *SendDataToWirelessDeviceInput {
 12016  	s.TransmitMode = &v
 12017  	return s
 12018  }
 12019  
 12020  // SetWirelessMetadata sets the WirelessMetadata field's value.
 12021  func (s *SendDataToWirelessDeviceInput) SetWirelessMetadata(v *WirelessMetadata) *SendDataToWirelessDeviceInput {
 12022  	s.WirelessMetadata = v
 12023  	return s
 12024  }
 12025  
 12026  type SendDataToWirelessDeviceOutput struct {
 12027  	_ struct{} `type:"structure"`
 12028  
 12029  	// The ID of the message sent to the wireless device.
 12030  	MessageId *string `type:"string"`
 12031  }
 12032  
 12033  // String returns the string representation.
 12034  //
 12035  // API parameter values that are decorated as "sensitive" in the API will not
 12036  // be included in the string output. The member name will be present, but the
 12037  // value will be replaced with "sensitive".
 12038  func (s SendDataToWirelessDeviceOutput) String() string {
 12039  	return awsutil.Prettify(s)
 12040  }
 12041  
 12042  // GoString returns the string representation.
 12043  //
 12044  // API parameter values that are decorated as "sensitive" in the API will not
 12045  // be included in the string output. The member name will be present, but the
 12046  // value will be replaced with "sensitive".
 12047  func (s SendDataToWirelessDeviceOutput) GoString() string {
 12048  	return s.String()
 12049  }
 12050  
 12051  // SetMessageId sets the MessageId field's value.
 12052  func (s *SendDataToWirelessDeviceOutput) SetMessageId(v string) *SendDataToWirelessDeviceOutput {
 12053  	s.MessageId = &v
 12054  	return s
 12055  }
 12056  
 12057  // Information about a service profile.
 12058  type ServiceProfile struct {
 12059  	_ struct{} `type:"structure"`
 12060  
 12061  	// The Amazon Resource Name of the resource.
 12062  	Arn *string `type:"string"`
 12063  
 12064  	// The ID of the service profile.
 12065  	Id *string `type:"string"`
 12066  
 12067  	// The name of the resource.
 12068  	Name *string `type:"string"`
 12069  }
 12070  
 12071  // String returns the string representation.
 12072  //
 12073  // API parameter values that are decorated as "sensitive" in the API will not
 12074  // be included in the string output. The member name will be present, but the
 12075  // value will be replaced with "sensitive".
 12076  func (s ServiceProfile) String() string {
 12077  	return awsutil.Prettify(s)
 12078  }
 12079  
 12080  // GoString returns the string representation.
 12081  //
 12082  // API parameter values that are decorated as "sensitive" in the API will not
 12083  // be included in the string output. The member name will be present, but the
 12084  // value will be replaced with "sensitive".
 12085  func (s ServiceProfile) GoString() string {
 12086  	return s.String()
 12087  }
 12088  
 12089  // SetArn sets the Arn field's value.
 12090  func (s *ServiceProfile) SetArn(v string) *ServiceProfile {
 12091  	s.Arn = &v
 12092  	return s
 12093  }
 12094  
 12095  // SetId sets the Id field's value.
 12096  func (s *ServiceProfile) SetId(v string) *ServiceProfile {
 12097  	s.Id = &v
 12098  	return s
 12099  }
 12100  
 12101  // SetName sets the Name field's value.
 12102  func (s *ServiceProfile) SetName(v string) *ServiceProfile {
 12103  	s.Name = &v
 12104  	return s
 12105  }
 12106  
 12107  // Session keys for ABP v1.1
 12108  type SessionKeysAbpV10X struct {
 12109  	_ struct{} `type:"structure"`
 12110  
 12111  	// The AppSKey value.
 12112  	AppSKey *string `type:"string"`
 12113  
 12114  	// The NwkSKey value.
 12115  	NwkSKey *string `type:"string"`
 12116  }
 12117  
 12118  // String returns the string representation.
 12119  //
 12120  // API parameter values that are decorated as "sensitive" in the API will not
 12121  // be included in the string output. The member name will be present, but the
 12122  // value will be replaced with "sensitive".
 12123  func (s SessionKeysAbpV10X) String() string {
 12124  	return awsutil.Prettify(s)
 12125  }
 12126  
 12127  // GoString returns the string representation.
 12128  //
 12129  // API parameter values that are decorated as "sensitive" in the API will not
 12130  // be included in the string output. The member name will be present, but the
 12131  // value will be replaced with "sensitive".
 12132  func (s SessionKeysAbpV10X) GoString() string {
 12133  	return s.String()
 12134  }
 12135  
 12136  // SetAppSKey sets the AppSKey field's value.
 12137  func (s *SessionKeysAbpV10X) SetAppSKey(v string) *SessionKeysAbpV10X {
 12138  	s.AppSKey = &v
 12139  	return s
 12140  }
 12141  
 12142  // SetNwkSKey sets the NwkSKey field's value.
 12143  func (s *SessionKeysAbpV10X) SetNwkSKey(v string) *SessionKeysAbpV10X {
 12144  	s.NwkSKey = &v
 12145  	return s
 12146  }
 12147  
 12148  // Session keys for ABP v1.1
 12149  type SessionKeysAbpV11 struct {
 12150  	_ struct{} `type:"structure"`
 12151  
 12152  	// The AppSKey value.
 12153  	AppSKey *string `type:"string"`
 12154  
 12155  	// The FNwkSIntKey value.
 12156  	FNwkSIntKey *string `type:"string"`
 12157  
 12158  	// The NwkSEncKey value.
 12159  	NwkSEncKey *string `type:"string"`
 12160  
 12161  	// The SNwkSIntKey value.
 12162  	SNwkSIntKey *string `type:"string"`
 12163  }
 12164  
 12165  // String returns the string representation.
 12166  //
 12167  // API parameter values that are decorated as "sensitive" in the API will not
 12168  // be included in the string output. The member name will be present, but the
 12169  // value will be replaced with "sensitive".
 12170  func (s SessionKeysAbpV11) String() string {
 12171  	return awsutil.Prettify(s)
 12172  }
 12173  
 12174  // GoString returns the string representation.
 12175  //
 12176  // API parameter values that are decorated as "sensitive" in the API will not
 12177  // be included in the string output. The member name will be present, but the
 12178  // value will be replaced with "sensitive".
 12179  func (s SessionKeysAbpV11) GoString() string {
 12180  	return s.String()
 12181  }
 12182  
 12183  // SetAppSKey sets the AppSKey field's value.
 12184  func (s *SessionKeysAbpV11) SetAppSKey(v string) *SessionKeysAbpV11 {
 12185  	s.AppSKey = &v
 12186  	return s
 12187  }
 12188  
 12189  // SetFNwkSIntKey sets the FNwkSIntKey field's value.
 12190  func (s *SessionKeysAbpV11) SetFNwkSIntKey(v string) *SessionKeysAbpV11 {
 12191  	s.FNwkSIntKey = &v
 12192  	return s
 12193  }
 12194  
 12195  // SetNwkSEncKey sets the NwkSEncKey field's value.
 12196  func (s *SessionKeysAbpV11) SetNwkSEncKey(v string) *SessionKeysAbpV11 {
 12197  	s.NwkSEncKey = &v
 12198  	return s
 12199  }
 12200  
 12201  // SetSNwkSIntKey sets the SNwkSIntKey field's value.
 12202  func (s *SessionKeysAbpV11) SetSNwkSIntKey(v string) *SessionKeysAbpV11 {
 12203  	s.SNwkSIntKey = &v
 12204  	return s
 12205  }
 12206  
 12207  // Information about a Sidewalk account.
 12208  type SidewalkAccountInfo struct {
 12209  	_ struct{} `type:"structure"`
 12210  
 12211  	// The Sidewalk Amazon ID.
 12212  	AmazonId *string `type:"string"`
 12213  
 12214  	// The Sidewalk application server private key.
 12215  	//
 12216  	// AppServerPrivateKey is a sensitive parameter and its value will be
 12217  	// replaced with "sensitive" in string returned by SidewalkAccountInfo's
 12218  	// String and GoString methods.
 12219  	AppServerPrivateKey *string `min:"1" type:"string" sensitive:"true"`
 12220  }
 12221  
 12222  // String returns the string representation.
 12223  //
 12224  // API parameter values that are decorated as "sensitive" in the API will not
 12225  // be included in the string output. The member name will be present, but the
 12226  // value will be replaced with "sensitive".
 12227  func (s SidewalkAccountInfo) String() string {
 12228  	return awsutil.Prettify(s)
 12229  }
 12230  
 12231  // GoString returns the string representation.
 12232  //
 12233  // API parameter values that are decorated as "sensitive" in the API will not
 12234  // be included in the string output. The member name will be present, but the
 12235  // value will be replaced with "sensitive".
 12236  func (s SidewalkAccountInfo) GoString() string {
 12237  	return s.String()
 12238  }
 12239  
 12240  // Validate inspects the fields of the type to determine if they are valid.
 12241  func (s *SidewalkAccountInfo) Validate() error {
 12242  	invalidParams := request.ErrInvalidParams{Context: "SidewalkAccountInfo"}
 12243  	if s.AppServerPrivateKey != nil && len(*s.AppServerPrivateKey) < 1 {
 12244  		invalidParams.Add(request.NewErrParamMinLen("AppServerPrivateKey", 1))
 12245  	}
 12246  
 12247  	if invalidParams.Len() > 0 {
 12248  		return invalidParams
 12249  	}
 12250  	return nil
 12251  }
 12252  
 12253  // SetAmazonId sets the AmazonId field's value.
 12254  func (s *SidewalkAccountInfo) SetAmazonId(v string) *SidewalkAccountInfo {
 12255  	s.AmazonId = &v
 12256  	return s
 12257  }
 12258  
 12259  // SetAppServerPrivateKey sets the AppServerPrivateKey field's value.
 12260  func (s *SidewalkAccountInfo) SetAppServerPrivateKey(v string) *SidewalkAccountInfo {
 12261  	s.AppServerPrivateKey = &v
 12262  	return s
 12263  }
 12264  
 12265  // Information about a Sidewalk account.
 12266  type SidewalkAccountInfoWithFingerprint struct {
 12267  	_ struct{} `type:"structure"`
 12268  
 12269  	// The Sidewalk Amazon ID.
 12270  	AmazonId *string `type:"string"`
 12271  
 12272  	// The Amazon Resource Name of the resource.
 12273  	Arn *string `type:"string"`
 12274  
 12275  	// The fingerprint of the Sidewalk application server private key.
 12276  	//
 12277  	// Fingerprint is a sensitive parameter and its value will be
 12278  	// replaced with "sensitive" in string returned by SidewalkAccountInfoWithFingerprint's
 12279  	// String and GoString methods.
 12280  	Fingerprint *string `min:"64" type:"string" sensitive:"true"`
 12281  }
 12282  
 12283  // String returns the string representation.
 12284  //
 12285  // API parameter values that are decorated as "sensitive" in the API will not
 12286  // be included in the string output. The member name will be present, but the
 12287  // value will be replaced with "sensitive".
 12288  func (s SidewalkAccountInfoWithFingerprint) String() string {
 12289  	return awsutil.Prettify(s)
 12290  }
 12291  
 12292  // GoString returns the string representation.
 12293  //
 12294  // API parameter values that are decorated as "sensitive" in the API will not
 12295  // be included in the string output. The member name will be present, but the
 12296  // value will be replaced with "sensitive".
 12297  func (s SidewalkAccountInfoWithFingerprint) GoString() string {
 12298  	return s.String()
 12299  }
 12300  
 12301  // SetAmazonId sets the AmazonId field's value.
 12302  func (s *SidewalkAccountInfoWithFingerprint) SetAmazonId(v string) *SidewalkAccountInfoWithFingerprint {
 12303  	s.AmazonId = &v
 12304  	return s
 12305  }
 12306  
 12307  // SetArn sets the Arn field's value.
 12308  func (s *SidewalkAccountInfoWithFingerprint) SetArn(v string) *SidewalkAccountInfoWithFingerprint {
 12309  	s.Arn = &v
 12310  	return s
 12311  }
 12312  
 12313  // SetFingerprint sets the Fingerprint field's value.
 12314  func (s *SidewalkAccountInfoWithFingerprint) SetFingerprint(v string) *SidewalkAccountInfoWithFingerprint {
 12315  	s.Fingerprint = &v
 12316  	return s
 12317  }
 12318  
 12319  // Sidewalk device object.
 12320  type SidewalkDevice struct {
 12321  	_ struct{} `type:"structure"`
 12322  
 12323  	// The Sidewalk Amazon ID.
 12324  	AmazonId *string `type:"string"`
 12325  
 12326  	// The sidewalk device certificates for Ed25519 and P256r1.
 12327  	DeviceCertificates []*CertificateList `type:"list"`
 12328  
 12329  	// The sidewalk device identification.
 12330  	SidewalkId *string `type:"string"`
 12331  
 12332  	// The Sidewalk manufacturing series number.
 12333  	SidewalkManufacturingSn *string `type:"string"`
 12334  }
 12335  
 12336  // String returns the string representation.
 12337  //
 12338  // API parameter values that are decorated as "sensitive" in the API will not
 12339  // be included in the string output. The member name will be present, but the
 12340  // value will be replaced with "sensitive".
 12341  func (s SidewalkDevice) String() string {
 12342  	return awsutil.Prettify(s)
 12343  }
 12344  
 12345  // GoString returns the string representation.
 12346  //
 12347  // API parameter values that are decorated as "sensitive" in the API will not
 12348  // be included in the string output. The member name will be present, but the
 12349  // value will be replaced with "sensitive".
 12350  func (s SidewalkDevice) GoString() string {
 12351  	return s.String()
 12352  }
 12353  
 12354  // SetAmazonId sets the AmazonId field's value.
 12355  func (s *SidewalkDevice) SetAmazonId(v string) *SidewalkDevice {
 12356  	s.AmazonId = &v
 12357  	return s
 12358  }
 12359  
 12360  // SetDeviceCertificates sets the DeviceCertificates field's value.
 12361  func (s *SidewalkDevice) SetDeviceCertificates(v []*CertificateList) *SidewalkDevice {
 12362  	s.DeviceCertificates = v
 12363  	return s
 12364  }
 12365  
 12366  // SetSidewalkId sets the SidewalkId field's value.
 12367  func (s *SidewalkDevice) SetSidewalkId(v string) *SidewalkDevice {
 12368  	s.SidewalkId = &v
 12369  	return s
 12370  }
 12371  
 12372  // SetSidewalkManufacturingSn sets the SidewalkManufacturingSn field's value.
 12373  func (s *SidewalkDevice) SetSidewalkManufacturingSn(v string) *SidewalkDevice {
 12374  	s.SidewalkManufacturingSn = &v
 12375  	return s
 12376  }
 12377  
 12378  // MetaData for Sidewalk device.
 12379  type SidewalkDeviceMetadata struct {
 12380  	_ struct{} `type:"structure"`
 12381  
 12382  	// Sidewalk device battery level.
 12383  	BatteryLevel *string `type:"string" enum:"BatteryLevel"`
 12384  
 12385  	// Device state defines the device status of sidewalk device.
 12386  	DeviceState *string `type:"string" enum:"DeviceState"`
 12387  
 12388  	// Sidewalk device status notification.
 12389  	Event *string `type:"string" enum:"Event"`
 12390  
 12391  	// The RSSI value.
 12392  	Rssi *int64 `type:"integer"`
 12393  }
 12394  
 12395  // String returns the string representation.
 12396  //
 12397  // API parameter values that are decorated as "sensitive" in the API will not
 12398  // be included in the string output. The member name will be present, but the
 12399  // value will be replaced with "sensitive".
 12400  func (s SidewalkDeviceMetadata) String() string {
 12401  	return awsutil.Prettify(s)
 12402  }
 12403  
 12404  // GoString returns the string representation.
 12405  //
 12406  // API parameter values that are decorated as "sensitive" in the API will not
 12407  // be included in the string output. The member name will be present, but the
 12408  // value will be replaced with "sensitive".
 12409  func (s SidewalkDeviceMetadata) GoString() string {
 12410  	return s.String()
 12411  }
 12412  
 12413  // SetBatteryLevel sets the BatteryLevel field's value.
 12414  func (s *SidewalkDeviceMetadata) SetBatteryLevel(v string) *SidewalkDeviceMetadata {
 12415  	s.BatteryLevel = &v
 12416  	return s
 12417  }
 12418  
 12419  // SetDeviceState sets the DeviceState field's value.
 12420  func (s *SidewalkDeviceMetadata) SetDeviceState(v string) *SidewalkDeviceMetadata {
 12421  	s.DeviceState = &v
 12422  	return s
 12423  }
 12424  
 12425  // SetEvent sets the Event field's value.
 12426  func (s *SidewalkDeviceMetadata) SetEvent(v string) *SidewalkDeviceMetadata {
 12427  	s.Event = &v
 12428  	return s
 12429  }
 12430  
 12431  // SetRssi sets the Rssi field's value.
 12432  func (s *SidewalkDeviceMetadata) SetRssi(v int64) *SidewalkDeviceMetadata {
 12433  	s.Rssi = &v
 12434  	return s
 12435  }
 12436  
 12437  // Sidewalk object used by list functions.
 12438  type SidewalkListDevice struct {
 12439  	_ struct{} `type:"structure"`
 12440  
 12441  	// The Sidewalk Amazon ID.
 12442  	AmazonId *string `type:"string"`
 12443  
 12444  	// The sidewalk device certificates for Ed25519 and P256r1.
 12445  	DeviceCertificates []*CertificateList `type:"list"`
 12446  
 12447  	// The sidewalk device identification.
 12448  	SidewalkId *string `type:"string"`
 12449  
 12450  	// The Sidewalk manufacturing series number.
 12451  	SidewalkManufacturingSn *string `type:"string"`
 12452  }
 12453  
 12454  // String returns the string representation.
 12455  //
 12456  // API parameter values that are decorated as "sensitive" in the API will not
 12457  // be included in the string output. The member name will be present, but the
 12458  // value will be replaced with "sensitive".
 12459  func (s SidewalkListDevice) String() string {
 12460  	return awsutil.Prettify(s)
 12461  }
 12462  
 12463  // GoString returns the string representation.
 12464  //
 12465  // API parameter values that are decorated as "sensitive" in the API will not
 12466  // be included in the string output. The member name will be present, but the
 12467  // value will be replaced with "sensitive".
 12468  func (s SidewalkListDevice) GoString() string {
 12469  	return s.String()
 12470  }
 12471  
 12472  // SetAmazonId sets the AmazonId field's value.
 12473  func (s *SidewalkListDevice) SetAmazonId(v string) *SidewalkListDevice {
 12474  	s.AmazonId = &v
 12475  	return s
 12476  }
 12477  
 12478  // SetDeviceCertificates sets the DeviceCertificates field's value.
 12479  func (s *SidewalkListDevice) SetDeviceCertificates(v []*CertificateList) *SidewalkListDevice {
 12480  	s.DeviceCertificates = v
 12481  	return s
 12482  }
 12483  
 12484  // SetSidewalkId sets the SidewalkId field's value.
 12485  func (s *SidewalkListDevice) SetSidewalkId(v string) *SidewalkListDevice {
 12486  	s.SidewalkId = &v
 12487  	return s
 12488  }
 12489  
 12490  // SetSidewalkManufacturingSn sets the SidewalkManufacturingSn field's value.
 12491  func (s *SidewalkListDevice) SetSidewalkManufacturingSn(v string) *SidewalkListDevice {
 12492  	s.SidewalkManufacturingSn = &v
 12493  	return s
 12494  }
 12495  
 12496  // Information about a Sidewalk router.
 12497  type SidewalkSendDataToDevice struct {
 12498  	_ struct{} `type:"structure"`
 12499  
 12500  	// Sidewalk device message type. Default value is CUSTOM_COMMAND_ID_NOTIFY.
 12501  	MessageType *string `type:"string" enum:"MessageType"`
 12502  
 12503  	// The sequence number.
 12504  	Seq *int64 `type:"integer"`
 12505  }
 12506  
 12507  // String returns the string representation.
 12508  //
 12509  // API parameter values that are decorated as "sensitive" in the API will not
 12510  // be included in the string output. The member name will be present, but the
 12511  // value will be replaced with "sensitive".
 12512  func (s SidewalkSendDataToDevice) String() string {
 12513  	return awsutil.Prettify(s)
 12514  }
 12515  
 12516  // GoString returns the string representation.
 12517  //
 12518  // API parameter values that are decorated as "sensitive" in the API will not
 12519  // be included in the string output. The member name will be present, but the
 12520  // value will be replaced with "sensitive".
 12521  func (s SidewalkSendDataToDevice) GoString() string {
 12522  	return s.String()
 12523  }
 12524  
 12525  // SetMessageType sets the MessageType field's value.
 12526  func (s *SidewalkSendDataToDevice) SetMessageType(v string) *SidewalkSendDataToDevice {
 12527  	s.MessageType = &v
 12528  	return s
 12529  }
 12530  
 12531  // SetSeq sets the Seq field's value.
 12532  func (s *SidewalkSendDataToDevice) SetSeq(v int64) *SidewalkSendDataToDevice {
 12533  	s.Seq = &v
 12534  	return s
 12535  }
 12536  
 12537  // Sidewalk update.
 12538  type SidewalkUpdateAccount struct {
 12539  	_ struct{} `type:"structure"`
 12540  
 12541  	// The new Sidewalk application server private key.
 12542  	//
 12543  	// AppServerPrivateKey is a sensitive parameter and its value will be
 12544  	// replaced with "sensitive" in string returned by SidewalkUpdateAccount's
 12545  	// String and GoString methods.
 12546  	AppServerPrivateKey *string `min:"1" type:"string" sensitive:"true"`
 12547  }
 12548  
 12549  // String returns the string representation.
 12550  //
 12551  // API parameter values that are decorated as "sensitive" in the API will not
 12552  // be included in the string output. The member name will be present, but the
 12553  // value will be replaced with "sensitive".
 12554  func (s SidewalkUpdateAccount) String() string {
 12555  	return awsutil.Prettify(s)
 12556  }
 12557  
 12558  // GoString returns the string representation.
 12559  //
 12560  // API parameter values that are decorated as "sensitive" in the API will not
 12561  // be included in the string output. The member name will be present, but the
 12562  // value will be replaced with "sensitive".
 12563  func (s SidewalkUpdateAccount) GoString() string {
 12564  	return s.String()
 12565  }
 12566  
 12567  // Validate inspects the fields of the type to determine if they are valid.
 12568  func (s *SidewalkUpdateAccount) Validate() error {
 12569  	invalidParams := request.ErrInvalidParams{Context: "SidewalkUpdateAccount"}
 12570  	if s.AppServerPrivateKey != nil && len(*s.AppServerPrivateKey) < 1 {
 12571  		invalidParams.Add(request.NewErrParamMinLen("AppServerPrivateKey", 1))
 12572  	}
 12573  
 12574  	if invalidParams.Len() > 0 {
 12575  		return invalidParams
 12576  	}
 12577  	return nil
 12578  }
 12579  
 12580  // SetAppServerPrivateKey sets the AppServerPrivateKey field's value.
 12581  func (s *SidewalkUpdateAccount) SetAppServerPrivateKey(v string) *SidewalkUpdateAccount {
 12582  	s.AppServerPrivateKey = &v
 12583  	return s
 12584  }
 12585  
 12586  // A simple label consisting of a customer-defined key-value pair
 12587  type Tag struct {
 12588  	_ struct{} `type:"structure"`
 12589  
 12590  	// The tag's key value.
 12591  	//
 12592  	// Key is a required field
 12593  	Key *string `min:"1" type:"string" required:"true"`
 12594  
 12595  	// The tag's value.
 12596  	//
 12597  	// Value is a required field
 12598  	Value *string `type:"string" required:"true"`
 12599  }
 12600  
 12601  // String returns the string representation.
 12602  //
 12603  // API parameter values that are decorated as "sensitive" in the API will not
 12604  // be included in the string output. The member name will be present, but the
 12605  // value will be replaced with "sensitive".
 12606  func (s Tag) String() string {
 12607  	return awsutil.Prettify(s)
 12608  }
 12609  
 12610  // GoString returns the string representation.
 12611  //
 12612  // API parameter values that are decorated as "sensitive" in the API will not
 12613  // be included in the string output. The member name will be present, but the
 12614  // value will be replaced with "sensitive".
 12615  func (s Tag) GoString() string {
 12616  	return s.String()
 12617  }
 12618  
 12619  // Validate inspects the fields of the type to determine if they are valid.
 12620  func (s *Tag) Validate() error {
 12621  	invalidParams := request.ErrInvalidParams{Context: "Tag"}
 12622  	if s.Key == nil {
 12623  		invalidParams.Add(request.NewErrParamRequired("Key"))
 12624  	}
 12625  	if s.Key != nil && len(*s.Key) < 1 {
 12626  		invalidParams.Add(request.NewErrParamMinLen("Key", 1))
 12627  	}
 12628  	if s.Value == nil {
 12629  		invalidParams.Add(request.NewErrParamRequired("Value"))
 12630  	}
 12631  
 12632  	if invalidParams.Len() > 0 {
 12633  		return invalidParams
 12634  	}
 12635  	return nil
 12636  }
 12637  
 12638  // SetKey sets the Key field's value.
 12639  func (s *Tag) SetKey(v string) *Tag {
 12640  	s.Key = &v
 12641  	return s
 12642  }
 12643  
 12644  // SetValue sets the Value field's value.
 12645  func (s *Tag) SetValue(v string) *Tag {
 12646  	s.Value = &v
 12647  	return s
 12648  }
 12649  
 12650  type TagResourceInput struct {
 12651  	_ struct{} `type:"structure"`
 12652  
 12653  	// The ARN of the resource to add tags to.
 12654  	//
 12655  	// ResourceArn is a required field
 12656  	ResourceArn *string `location:"querystring" locationName:"resourceArn" min:"1" type:"string" required:"true"`
 12657  
 12658  	// Adds to or modifies the tags of the given resource. Tags are metadata that
 12659  	// you can use to manage a resource.
 12660  	//
 12661  	// Tags is a required field
 12662  	Tags []*Tag `type:"list" required:"true"`
 12663  }
 12664  
 12665  // String returns the string representation.
 12666  //
 12667  // API parameter values that are decorated as "sensitive" in the API will not
 12668  // be included in the string output. The member name will be present, but the
 12669  // value will be replaced with "sensitive".
 12670  func (s TagResourceInput) String() string {
 12671  	return awsutil.Prettify(s)
 12672  }
 12673  
 12674  // GoString returns the string representation.
 12675  //
 12676  // API parameter values that are decorated as "sensitive" in the API will not
 12677  // be included in the string output. The member name will be present, but the
 12678  // value will be replaced with "sensitive".
 12679  func (s TagResourceInput) GoString() string {
 12680  	return s.String()
 12681  }
 12682  
 12683  // Validate inspects the fields of the type to determine if they are valid.
 12684  func (s *TagResourceInput) Validate() error {
 12685  	invalidParams := request.ErrInvalidParams{Context: "TagResourceInput"}
 12686  	if s.ResourceArn == nil {
 12687  		invalidParams.Add(request.NewErrParamRequired("ResourceArn"))
 12688  	}
 12689  	if s.ResourceArn != nil && len(*s.ResourceArn) < 1 {
 12690  		invalidParams.Add(request.NewErrParamMinLen("ResourceArn", 1))
 12691  	}
 12692  	if s.Tags == nil {
 12693  		invalidParams.Add(request.NewErrParamRequired("Tags"))
 12694  	}
 12695  	if s.Tags != nil {
 12696  		for i, v := range s.Tags {
 12697  			if v == nil {
 12698  				continue
 12699  			}
 12700  			if err := v.Validate(); err != nil {
 12701  				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Tags", i), err.(request.ErrInvalidParams))
 12702  			}
 12703  		}
 12704  	}
 12705  
 12706  	if invalidParams.Len() > 0 {
 12707  		return invalidParams
 12708  	}
 12709  	return nil
 12710  }
 12711  
 12712  // SetResourceArn sets the ResourceArn field's value.
 12713  func (s *TagResourceInput) SetResourceArn(v string) *TagResourceInput {
 12714  	s.ResourceArn = &v
 12715  	return s
 12716  }
 12717  
 12718  // SetTags sets the Tags field's value.
 12719  func (s *TagResourceInput) SetTags(v []*Tag) *TagResourceInput {
 12720  	s.Tags = v
 12721  	return s
 12722  }
 12723  
 12724  type TagResourceOutput struct {
 12725  	_ struct{} `type:"structure" nopayload:"true"`
 12726  }
 12727  
 12728  // String returns the string representation.
 12729  //
 12730  // API parameter values that are decorated as "sensitive" in the API will not
 12731  // be included in the string output. The member name will be present, but the
 12732  // value will be replaced with "sensitive".
 12733  func (s TagResourceOutput) String() string {
 12734  	return awsutil.Prettify(s)
 12735  }
 12736  
 12737  // GoString returns the string representation.
 12738  //
 12739  // API parameter values that are decorated as "sensitive" in the API will not
 12740  // be included in the string output. The member name will be present, but the
 12741  // value will be replaced with "sensitive".
 12742  func (s TagResourceOutput) GoString() string {
 12743  	return s.String()
 12744  }
 12745  
 12746  type TestWirelessDeviceInput struct {
 12747  	_ struct{} `type:"structure" nopayload:"true"`
 12748  
 12749  	// The ID of the wireless device to test.
 12750  	//
 12751  	// Id is a required field
 12752  	Id *string `location:"uri" locationName:"Id" type:"string" required:"true"`
 12753  }
 12754  
 12755  // String returns the string representation.
 12756  //
 12757  // API parameter values that are decorated as "sensitive" in the API will not
 12758  // be included in the string output. The member name will be present, but the
 12759  // value will be replaced with "sensitive".
 12760  func (s TestWirelessDeviceInput) String() string {
 12761  	return awsutil.Prettify(s)
 12762  }
 12763  
 12764  // GoString returns the string representation.
 12765  //
 12766  // API parameter values that are decorated as "sensitive" in the API will not
 12767  // be included in the string output. The member name will be present, but the
 12768  // value will be replaced with "sensitive".
 12769  func (s TestWirelessDeviceInput) GoString() string {
 12770  	return s.String()
 12771  }
 12772  
 12773  // Validate inspects the fields of the type to determine if they are valid.
 12774  func (s *TestWirelessDeviceInput) Validate() error {
 12775  	invalidParams := request.ErrInvalidParams{Context: "TestWirelessDeviceInput"}
 12776  	if s.Id == nil {
 12777  		invalidParams.Add(request.NewErrParamRequired("Id"))
 12778  	}
 12779  	if s.Id != nil && len(*s.Id) < 1 {
 12780  		invalidParams.Add(request.NewErrParamMinLen("Id", 1))
 12781  	}
 12782  
 12783  	if invalidParams.Len() > 0 {
 12784  		return invalidParams
 12785  	}
 12786  	return nil
 12787  }
 12788  
 12789  // SetId sets the Id field's value.
 12790  func (s *TestWirelessDeviceInput) SetId(v string) *TestWirelessDeviceInput {
 12791  	s.Id = &v
 12792  	return s
 12793  }
 12794  
 12795  type TestWirelessDeviceOutput struct {
 12796  	_ struct{} `type:"structure"`
 12797  
 12798  	// The result returned by the test.
 12799  	Result *string `type:"string"`
 12800  }
 12801  
 12802  // String returns the string representation.
 12803  //
 12804  // API parameter values that are decorated as "sensitive" in the API will not
 12805  // be included in the string output. The member name will be present, but the
 12806  // value will be replaced with "sensitive".
 12807  func (s TestWirelessDeviceOutput) String() string {
 12808  	return awsutil.Prettify(s)
 12809  }
 12810  
 12811  // GoString returns the string representation.
 12812  //
 12813  // API parameter values that are decorated as "sensitive" in the API will not
 12814  // be included in the string output. The member name will be present, but the
 12815  // value will be replaced with "sensitive".
 12816  func (s TestWirelessDeviceOutput) GoString() string {
 12817  	return s.String()
 12818  }
 12819  
 12820  // SetResult sets the Result field's value.
 12821  func (s *TestWirelessDeviceOutput) SetResult(v string) *TestWirelessDeviceOutput {
 12822  	s.Result = &v
 12823  	return s
 12824  }
 12825  
 12826  // The request was denied because it exceeded the allowed API request rate.
 12827  type ThrottlingException struct {
 12828  	_            struct{}                  `type:"structure"`
 12829  	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
 12830  
 12831  	Message_ *string `locationName:"Message" type:"string"`
 12832  }
 12833  
 12834  // String returns the string representation.
 12835  //
 12836  // API parameter values that are decorated as "sensitive" in the API will not
 12837  // be included in the string output. The member name will be present, but the
 12838  // value will be replaced with "sensitive".
 12839  func (s ThrottlingException) String() string {
 12840  	return awsutil.Prettify(s)
 12841  }
 12842  
 12843  // GoString returns the string representation.
 12844  //
 12845  // API parameter values that are decorated as "sensitive" in the API will not
 12846  // be included in the string output. The member name will be present, but the
 12847  // value will be replaced with "sensitive".
 12848  func (s ThrottlingException) GoString() string {
 12849  	return s.String()
 12850  }
 12851  
 12852  func newErrorThrottlingException(v protocol.ResponseMetadata) error {
 12853  	return &ThrottlingException{
 12854  		RespMetadata: v,
 12855  	}
 12856  }
 12857  
 12858  // Code returns the exception type name.
 12859  func (s *ThrottlingException) Code() string {
 12860  	return "ThrottlingException"
 12861  }
 12862  
 12863  // Message returns the exception's message.
 12864  func (s *ThrottlingException) Message() string {
 12865  	if s.Message_ != nil {
 12866  		return *s.Message_
 12867  	}
 12868  	return ""
 12869  }
 12870  
 12871  // OrigErr always returns nil, satisfies awserr.Error interface.
 12872  func (s *ThrottlingException) OrigErr() error {
 12873  	return nil
 12874  }
 12875  
 12876  func (s *ThrottlingException) Error() string {
 12877  	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
 12878  }
 12879  
 12880  // Status code returns the HTTP status code for the request's response error.
 12881  func (s *ThrottlingException) StatusCode() int {
 12882  	return s.RespMetadata.StatusCode
 12883  }
 12884  
 12885  // RequestID returns the service's response RequestID for request.
 12886  func (s *ThrottlingException) RequestID() string {
 12887  	return s.RespMetadata.RequestID
 12888  }
 12889  
 12890  // The request was denied because the resource can't have any more tags.
 12891  type TooManyTagsException struct {
 12892  	_            struct{}                  `type:"structure"`
 12893  	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
 12894  
 12895  	Message_ *string `locationName:"Message" type:"string"`
 12896  
 12897  	// Name of the resource that exceeds maximum number of tags allowed.
 12898  	ResourceName *string `min:"1" type:"string"`
 12899  }
 12900  
 12901  // String returns the string representation.
 12902  //
 12903  // API parameter values that are decorated as "sensitive" in the API will not
 12904  // be included in the string output. The member name will be present, but the
 12905  // value will be replaced with "sensitive".
 12906  func (s TooManyTagsException) String() string {
 12907  	return awsutil.Prettify(s)
 12908  }
 12909  
 12910  // GoString returns the string representation.
 12911  //
 12912  // API parameter values that are decorated as "sensitive" in the API will not
 12913  // be included in the string output. The member name will be present, but the
 12914  // value will be replaced with "sensitive".
 12915  func (s TooManyTagsException) GoString() string {
 12916  	return s.String()
 12917  }
 12918  
 12919  func newErrorTooManyTagsException(v protocol.ResponseMetadata) error {
 12920  	return &TooManyTagsException{
 12921  		RespMetadata: v,
 12922  	}
 12923  }
 12924  
 12925  // Code returns the exception type name.
 12926  func (s *TooManyTagsException) Code() string {
 12927  	return "TooManyTagsException"
 12928  }
 12929  
 12930  // Message returns the exception's message.
 12931  func (s *TooManyTagsException) Message() string {
 12932  	if s.Message_ != nil {
 12933  		return *s.Message_
 12934  	}
 12935  	return ""
 12936  }
 12937  
 12938  // OrigErr always returns nil, satisfies awserr.Error interface.
 12939  func (s *TooManyTagsException) OrigErr() error {
 12940  	return nil
 12941  }
 12942  
 12943  func (s *TooManyTagsException) Error() string {
 12944  	return fmt.Sprintf("%s: %s\n%s", s.Code(), s.Message(), s.String())
 12945  }
 12946  
 12947  // Status code returns the HTTP status code for the request's response error.
 12948  func (s *TooManyTagsException) StatusCode() int {
 12949  	return s.RespMetadata.StatusCode
 12950  }
 12951  
 12952  // RequestID returns the service's response RequestID for request.
 12953  func (s *TooManyTagsException) RequestID() string {
 12954  	return s.RespMetadata.RequestID
 12955  }
 12956  
 12957  type UntagResourceInput struct {
 12958  	_ struct{} `type:"structure" nopayload:"true"`
 12959  
 12960  	// The ARN of the resource to remove tags from.
 12961  	//
 12962  	// ResourceArn is a required field
 12963  	ResourceArn *string `location:"querystring" locationName:"resourceArn" min:"1" type:"string" required:"true"`
 12964  
 12965  	// A list of the keys of the tags to remove from the resource.
 12966  	//
 12967  	// TagKeys is a required field
 12968  	TagKeys []*string `location:"querystring" locationName:"tagKeys" type:"list" required:"true"`
 12969  }
 12970  
 12971  // String returns the string representation.
 12972  //
 12973  // API parameter values that are decorated as "sensitive" in the API will not
 12974  // be included in the string output. The member name will be present, but the
 12975  // value will be replaced with "sensitive".
 12976  func (s UntagResourceInput) String() string {
 12977  	return awsutil.Prettify(s)
 12978  }
 12979  
 12980  // GoString returns the string representation.
 12981  //
 12982  // API parameter values that are decorated as "sensitive" in the API will not
 12983  // be included in the string output. The member name will be present, but the
 12984  // value will be replaced with "sensitive".
 12985  func (s UntagResourceInput) GoString() string {
 12986  	return s.String()
 12987  }
 12988  
 12989  // Validate inspects the fields of the type to determine if they are valid.
 12990  func (s *UntagResourceInput) Validate() error {
 12991  	invalidParams := request.ErrInvalidParams{Context: "UntagResourceInput"}
 12992  	if s.ResourceArn == nil {
 12993  		invalidParams.Add(request.NewErrParamRequired("ResourceArn"))
 12994  	}
 12995  	if s.ResourceArn != nil && len(*s.ResourceArn) < 1 {
 12996  		invalidParams.Add(request.NewErrParamMinLen("ResourceArn", 1))
 12997  	}
 12998  	if s.TagKeys == nil {
 12999  		invalidParams.Add(request.NewErrParamRequired("TagKeys"))
 13000  	}
 13001  
 13002  	if invalidParams.Len() > 0 {
 13003  		return invalidParams
 13004  	}
 13005  	return nil
 13006  }
 13007  
 13008  // SetResourceArn sets the ResourceArn field's value.
 13009  func (s *UntagResourceInput) SetResourceArn(v string) *UntagResourceInput {
 13010  	s.ResourceArn = &v
 13011  	return s
 13012  }
 13013  
 13014  // SetTagKeys sets the TagKeys field's value.
 13015  func (s *UntagResourceInput) SetTagKeys(v []*string) *UntagResourceInput {
 13016  	s.TagKeys = v
 13017  	return s
 13018  }
 13019  
 13020  type UntagResourceOutput struct {
 13021  	_ struct{} `type:"structure" nopayload:"true"`
 13022  }
 13023  
 13024  // String returns the string representation.
 13025  //
 13026  // API parameter values that are decorated as "sensitive" in the API will not
 13027  // be included in the string output. The member name will be present, but the
 13028  // value will be replaced with "sensitive".
 13029  func (s UntagResourceOutput) String() string {
 13030  	return awsutil.Prettify(s)
 13031  }
 13032  
 13033  // GoString returns the string representation.
 13034  //
 13035  // API parameter values that are decorated as "sensitive" in the API will not
 13036  // be included in the string output. The member name will be present, but the
 13037  // value will be replaced with "sensitive".
 13038  func (s UntagResourceOutput) GoString() string {
 13039  	return s.String()
 13040  }
 13041  
 13042  type UpdateDestinationInput struct {
 13043  	_ struct{} `type:"structure"`
 13044  
 13045  	// A new description of the resource.
 13046  	Description *string `type:"string"`
 13047  
 13048  	// The new rule name or topic rule to send messages to.
 13049  	Expression *string `type:"string"`
 13050  
 13051  	// The type of value in Expression.
 13052  	ExpressionType *string `type:"string" enum:"ExpressionType"`
 13053  
 13054  	// The new name of the resource.
 13055  	//
 13056  	// Name is a required field
 13057  	Name *string `location:"uri" locationName:"Name" type:"string" required:"true"`
 13058  
 13059  	// The ARN of the IAM Role that authorizes the destination.
 13060  	RoleArn *string `min:"20" type:"string"`
 13061  }
 13062  
 13063  // String returns the string representation.
 13064  //
 13065  // API parameter values that are decorated as "sensitive" in the API will not
 13066  // be included in the string output. The member name will be present, but the
 13067  // value will be replaced with "sensitive".
 13068  func (s UpdateDestinationInput) String() string {
 13069  	return awsutil.Prettify(s)
 13070  }
 13071  
 13072  // GoString returns the string representation.
 13073  //
 13074  // API parameter values that are decorated as "sensitive" in the API will not
 13075  // be included in the string output. The member name will be present, but the
 13076  // value will be replaced with "sensitive".
 13077  func (s UpdateDestinationInput) GoString() string {
 13078  	return s.String()
 13079  }
 13080  
 13081  // Validate inspects the fields of the type to determine if they are valid.
 13082  func (s *UpdateDestinationInput) Validate() error {
 13083  	invalidParams := request.ErrInvalidParams{Context: "UpdateDestinationInput"}
 13084  	if s.Name == nil {
 13085  		invalidParams.Add(request.NewErrParamRequired("Name"))
 13086  	}
 13087  	if s.Name != nil && len(*s.Name) < 1 {
 13088  		invalidParams.Add(request.NewErrParamMinLen("Name", 1))
 13089  	}
 13090  	if s.RoleArn != nil && len(*s.RoleArn) < 20 {
 13091  		invalidParams.Add(request.NewErrParamMinLen("RoleArn", 20))
 13092  	}
 13093  
 13094  	if invalidParams.Len() > 0 {
 13095  		return invalidParams
 13096  	}
 13097  	return nil
 13098  }
 13099  
 13100  // SetDescription sets the Description field's value.
 13101  func (s *UpdateDestinationInput) SetDescription(v string) *UpdateDestinationInput {
 13102  	s.Description = &v
 13103  	return s
 13104  }
 13105  
 13106  // SetExpression sets the Expression field's value.
 13107  func (s *UpdateDestinationInput) SetExpression(v string) *UpdateDestinationInput {
 13108  	s.Expression = &v
 13109  	return s
 13110  }
 13111  
 13112  // SetExpressionType sets the ExpressionType field's value.
 13113  func (s *UpdateDestinationInput) SetExpressionType(v string) *UpdateDestinationInput {
 13114  	s.ExpressionType = &v
 13115  	return s
 13116  }
 13117  
 13118  // SetName sets the Name field's value.
 13119  func (s *UpdateDestinationInput) SetName(v string) *UpdateDestinationInput {
 13120  	s.Name = &v
 13121  	return s
 13122  }
 13123  
 13124  // SetRoleArn sets the RoleArn field's value.
 13125  func (s *UpdateDestinationInput) SetRoleArn(v string) *UpdateDestinationInput {
 13126  	s.RoleArn = &v
 13127  	return s
 13128  }
 13129  
 13130  type UpdateDestinationOutput struct {
 13131  	_ struct{} `type:"structure" nopayload:"true"`
 13132  }
 13133  
 13134  // String returns the string representation.
 13135  //
 13136  // API parameter values that are decorated as "sensitive" in the API will not
 13137  // be included in the string output. The member name will be present, but the
 13138  // value will be replaced with "sensitive".
 13139  func (s UpdateDestinationOutput) String() string {
 13140  	return awsutil.Prettify(s)
 13141  }
 13142  
 13143  // GoString returns the string representation.
 13144  //
 13145  // API parameter values that are decorated as "sensitive" in the API will not
 13146  // be included in the string output. The member name will be present, but the
 13147  // value will be replaced with "sensitive".
 13148  func (s UpdateDestinationOutput) GoString() string {
 13149  	return s.String()
 13150  }
 13151  
 13152  type UpdateLogLevelsByResourceTypesInput struct {
 13153  	_ struct{} `type:"structure"`
 13154  
 13155  	// The log level for a log message.
 13156  	DefaultLogLevel *string `type:"string" enum:"LogLevel"`
 13157  
 13158  	// The list of wireless device log options.
 13159  	WirelessDeviceLogOptions []*WirelessDeviceLogOption `type:"list"`
 13160  
 13161  	// The list of wireless gateway log options.
 13162  	WirelessGatewayLogOptions []*WirelessGatewayLogOption `type:"list"`
 13163  }
 13164  
 13165  // String returns the string representation.
 13166  //
 13167  // API parameter values that are decorated as "sensitive" in the API will not
 13168  // be included in the string output. The member name will be present, but the
 13169  // value will be replaced with "sensitive".
 13170  func (s UpdateLogLevelsByResourceTypesInput) String() string {
 13171  	return awsutil.Prettify(s)
 13172  }
 13173  
 13174  // GoString returns the string representation.
 13175  //
 13176  // API parameter values that are decorated as "sensitive" in the API will not
 13177  // be included in the string output. The member name will be present, but the
 13178  // value will be replaced with "sensitive".
 13179  func (s UpdateLogLevelsByResourceTypesInput) GoString() string {
 13180  	return s.String()
 13181  }
 13182  
 13183  // Validate inspects the fields of the type to determine if they are valid.
 13184  func (s *UpdateLogLevelsByResourceTypesInput) Validate() error {
 13185  	invalidParams := request.ErrInvalidParams{Context: "UpdateLogLevelsByResourceTypesInput"}
 13186  	if s.WirelessDeviceLogOptions != nil {
 13187  		for i, v := range s.WirelessDeviceLogOptions {
 13188  			if v == nil {
 13189  				continue
 13190  			}
 13191  			if err := v.Validate(); err != nil {
 13192  				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "WirelessDeviceLogOptions", i), err.(request.ErrInvalidParams))
 13193  			}
 13194  		}
 13195  	}
 13196  	if s.WirelessGatewayLogOptions != nil {
 13197  		for i, v := range s.WirelessGatewayLogOptions {
 13198  			if v == nil {
 13199  				continue
 13200  			}
 13201  			if err := v.Validate(); err != nil {
 13202  				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "WirelessGatewayLogOptions", i), err.(request.ErrInvalidParams))
 13203  			}
 13204  		}
 13205  	}
 13206  
 13207  	if invalidParams.Len() > 0 {
 13208  		return invalidParams
 13209  	}
 13210  	return nil
 13211  }
 13212  
 13213  // SetDefaultLogLevel sets the DefaultLogLevel field's value.
 13214  func (s *UpdateLogLevelsByResourceTypesInput) SetDefaultLogLevel(v string) *UpdateLogLevelsByResourceTypesInput {
 13215  	s.DefaultLogLevel = &v
 13216  	return s
 13217  }
 13218  
 13219  // SetWirelessDeviceLogOptions sets the WirelessDeviceLogOptions field's value.
 13220  func (s *UpdateLogLevelsByResourceTypesInput) SetWirelessDeviceLogOptions(v []*WirelessDeviceLogOption) *UpdateLogLevelsByResourceTypesInput {
 13221  	s.WirelessDeviceLogOptions = v
 13222  	return s
 13223  }
 13224  
 13225  // SetWirelessGatewayLogOptions sets the WirelessGatewayLogOptions field's value.
 13226  func (s *UpdateLogLevelsByResourceTypesInput) SetWirelessGatewayLogOptions(v []*WirelessGatewayLogOption) *UpdateLogLevelsByResourceTypesInput {
 13227  	s.WirelessGatewayLogOptions = v
 13228  	return s
 13229  }
 13230  
 13231  type UpdateLogLevelsByResourceTypesOutput struct {
 13232  	_ struct{} `type:"structure" nopayload:"true"`
 13233  }
 13234  
 13235  // String returns the string representation.
 13236  //
 13237  // API parameter values that are decorated as "sensitive" in the API will not
 13238  // be included in the string output. The member name will be present, but the
 13239  // value will be replaced with "sensitive".
 13240  func (s UpdateLogLevelsByResourceTypesOutput) String() string {
 13241  	return awsutil.Prettify(s)
 13242  }
 13243  
 13244  // GoString returns the string representation.
 13245  //
 13246  // API parameter values that are decorated as "sensitive" in the API will not
 13247  // be included in the string output. The member name will be present, but the
 13248  // value will be replaced with "sensitive".
 13249  func (s UpdateLogLevelsByResourceTypesOutput) GoString() string {
 13250  	return s.String()
 13251  }
 13252  
 13253  type UpdatePartnerAccountInput struct {
 13254  	_ struct{} `type:"structure"`
 13255  
 13256  	// The ID of the partner account to update.
 13257  	//
 13258  	// PartnerAccountId is a required field
 13259  	PartnerAccountId *string `location:"uri" locationName:"PartnerAccountId" type:"string" required:"true"`
 13260  
 13261  	// The partner type.
 13262  	//
 13263  	// PartnerType is a required field
 13264  	PartnerType *string `location:"querystring" locationName:"partnerType" type:"string" required:"true" enum:"PartnerType"`
 13265  
 13266  	// The Sidewalk account credentials.
 13267  	//
 13268  	// Sidewalk is a required field
 13269  	Sidewalk *SidewalkUpdateAccount `type:"structure" required:"true"`
 13270  }
 13271  
 13272  // String returns the string representation.
 13273  //
 13274  // API parameter values that are decorated as "sensitive" in the API will not
 13275  // be included in the string output. The member name will be present, but the
 13276  // value will be replaced with "sensitive".
 13277  func (s UpdatePartnerAccountInput) String() string {
 13278  	return awsutil.Prettify(s)
 13279  }
 13280  
 13281  // GoString returns the string representation.
 13282  //
 13283  // API parameter values that are decorated as "sensitive" in the API will not
 13284  // be included in the string output. The member name will be present, but the
 13285  // value will be replaced with "sensitive".
 13286  func (s UpdatePartnerAccountInput) GoString() string {
 13287  	return s.String()
 13288  }
 13289  
 13290  // Validate inspects the fields of the type to determine if they are valid.
 13291  func (s *UpdatePartnerAccountInput) Validate() error {
 13292  	invalidParams := request.ErrInvalidParams{Context: "UpdatePartnerAccountInput"}
 13293  	if s.PartnerAccountId == nil {
 13294  		invalidParams.Add(request.NewErrParamRequired("PartnerAccountId"))
 13295  	}
 13296  	if s.PartnerAccountId != nil && len(*s.PartnerAccountId) < 1 {
 13297  		invalidParams.Add(request.NewErrParamMinLen("PartnerAccountId", 1))
 13298  	}
 13299  	if s.PartnerType == nil {
 13300  		invalidParams.Add(request.NewErrParamRequired("PartnerType"))
 13301  	}
 13302  	if s.Sidewalk == nil {
 13303  		invalidParams.Add(request.NewErrParamRequired("Sidewalk"))
 13304  	}
 13305  	if s.Sidewalk != nil {
 13306  		if err := s.Sidewalk.Validate(); err != nil {
 13307  			invalidParams.AddNested("Sidewalk", err.(request.ErrInvalidParams))
 13308  		}
 13309  	}
 13310  
 13311  	if invalidParams.Len() > 0 {
 13312  		return invalidParams
 13313  	}
 13314  	return nil
 13315  }
 13316  
 13317  // SetPartnerAccountId sets the PartnerAccountId field's value.
 13318  func (s *UpdatePartnerAccountInput) SetPartnerAccountId(v string) *UpdatePartnerAccountInput {
 13319  	s.PartnerAccountId = &v
 13320  	return s
 13321  }
 13322  
 13323  // SetPartnerType sets the PartnerType field's value.
 13324  func (s *UpdatePartnerAccountInput) SetPartnerType(v string) *UpdatePartnerAccountInput {
 13325  	s.PartnerType = &v
 13326  	return s
 13327  }
 13328  
 13329  // SetSidewalk sets the Sidewalk field's value.
 13330  func (s *UpdatePartnerAccountInput) SetSidewalk(v *SidewalkUpdateAccount) *UpdatePartnerAccountInput {
 13331  	s.Sidewalk = v
 13332  	return s
 13333  }
 13334  
 13335  type UpdatePartnerAccountOutput struct {
 13336  	_ struct{} `type:"structure" nopayload:"true"`
 13337  }
 13338  
 13339  // String returns the string representation.
 13340  //
 13341  // API parameter values that are decorated as "sensitive" in the API will not
 13342  // be included in the string output. The member name will be present, but the
 13343  // value will be replaced with "sensitive".
 13344  func (s UpdatePartnerAccountOutput) String() string {
 13345  	return awsutil.Prettify(s)
 13346  }
 13347  
 13348  // GoString returns the string representation.
 13349  //
 13350  // API parameter values that are decorated as "sensitive" in the API will not
 13351  // be included in the string output. The member name will be present, but the
 13352  // value will be replaced with "sensitive".
 13353  func (s UpdatePartnerAccountOutput) GoString() string {
 13354  	return s.String()
 13355  }
 13356  
 13357  type UpdateWirelessDeviceInput struct {
 13358  	_ struct{} `type:"structure"`
 13359  
 13360  	// A new description of the resource.
 13361  	Description *string `type:"string"`
 13362  
 13363  	// The name of the new destination for the device.
 13364  	DestinationName *string `type:"string"`
 13365  
 13366  	// The ID of the resource to update.
 13367  	//
 13368  	// Id is a required field
 13369  	Id *string `location:"uri" locationName:"Id" type:"string" required:"true"`
 13370  
 13371  	// The updated wireless device's configuration.
 13372  	LoRaWAN *LoRaWANUpdateDevice `type:"structure"`
 13373  
 13374  	// The new name of the resource.
 13375  	Name *string `type:"string"`
 13376  }
 13377  
 13378  // String returns the string representation.
 13379  //
 13380  // API parameter values that are decorated as "sensitive" in the API will not
 13381  // be included in the string output. The member name will be present, but the
 13382  // value will be replaced with "sensitive".
 13383  func (s UpdateWirelessDeviceInput) String() string {
 13384  	return awsutil.Prettify(s)
 13385  }
 13386  
 13387  // GoString returns the string representation.
 13388  //
 13389  // API parameter values that are decorated as "sensitive" in the API will not
 13390  // be included in the string output. The member name will be present, but the
 13391  // value will be replaced with "sensitive".
 13392  func (s UpdateWirelessDeviceInput) GoString() string {
 13393  	return s.String()
 13394  }
 13395  
 13396  // Validate inspects the fields of the type to determine if they are valid.
 13397  func (s *UpdateWirelessDeviceInput) Validate() error {
 13398  	invalidParams := request.ErrInvalidParams{Context: "UpdateWirelessDeviceInput"}
 13399  	if s.Id == nil {
 13400  		invalidParams.Add(request.NewErrParamRequired("Id"))
 13401  	}
 13402  	if s.Id != nil && len(*s.Id) < 1 {
 13403  		invalidParams.Add(request.NewErrParamMinLen("Id", 1))
 13404  	}
 13405  
 13406  	if invalidParams.Len() > 0 {
 13407  		return invalidParams
 13408  	}
 13409  	return nil
 13410  }
 13411  
 13412  // SetDescription sets the Description field's value.
 13413  func (s *UpdateWirelessDeviceInput) SetDescription(v string) *UpdateWirelessDeviceInput {
 13414  	s.Description = &v
 13415  	return s
 13416  }
 13417  
 13418  // SetDestinationName sets the DestinationName field's value.
 13419  func (s *UpdateWirelessDeviceInput) SetDestinationName(v string) *UpdateWirelessDeviceInput {
 13420  	s.DestinationName = &v
 13421  	return s
 13422  }
 13423  
 13424  // SetId sets the Id field's value.
 13425  func (s *UpdateWirelessDeviceInput) SetId(v string) *UpdateWirelessDeviceInput {
 13426  	s.Id = &v
 13427  	return s
 13428  }
 13429  
 13430  // SetLoRaWAN sets the LoRaWAN field's value.
 13431  func (s *UpdateWirelessDeviceInput) SetLoRaWAN(v *LoRaWANUpdateDevice) *UpdateWirelessDeviceInput {
 13432  	s.LoRaWAN = v
 13433  	return s
 13434  }
 13435  
 13436  // SetName sets the Name field's value.
 13437  func (s *UpdateWirelessDeviceInput) SetName(v string) *UpdateWirelessDeviceInput {
 13438  	s.Name = &v
 13439  	return s
 13440  }
 13441  
 13442  type UpdateWirelessDeviceOutput struct {
 13443  	_ struct{} `type:"structure" nopayload:"true"`
 13444  }
 13445  
 13446  // String returns the string representation.
 13447  //
 13448  // API parameter values that are decorated as "sensitive" in the API will not
 13449  // be included in the string output. The member name will be present, but the
 13450  // value will be replaced with "sensitive".
 13451  func (s UpdateWirelessDeviceOutput) String() string {
 13452  	return awsutil.Prettify(s)
 13453  }
 13454  
 13455  // GoString returns the string representation.
 13456  //
 13457  // API parameter values that are decorated as "sensitive" in the API will not
 13458  // be included in the string output. The member name will be present, but the
 13459  // value will be replaced with "sensitive".
 13460  func (s UpdateWirelessDeviceOutput) GoString() string {
 13461  	return s.String()
 13462  }
 13463  
 13464  type UpdateWirelessGatewayInput struct {
 13465  	_ struct{} `type:"structure"`
 13466  
 13467  	// A new description of the resource.
 13468  	Description *string `type:"string"`
 13469  
 13470  	// The ID of the resource to update.
 13471  	//
 13472  	// Id is a required field
 13473  	Id *string `location:"uri" locationName:"Id" type:"string" required:"true"`
 13474  
 13475  	// A list of JoinEuiRange used by LoRa gateways to filter LoRa frames.
 13476  	JoinEuiFilters [][]*string `type:"list"`
 13477  
 13478  	// The new name of the resource.
 13479  	Name *string `type:"string"`
 13480  
 13481  	// A list of NetId values that are used by LoRa gateways to filter the uplink
 13482  	// frames.
 13483  	NetIdFilters []*string `type:"list"`
 13484  }
 13485  
 13486  // String returns the string representation.
 13487  //
 13488  // API parameter values that are decorated as "sensitive" in the API will not
 13489  // be included in the string output. The member name will be present, but the
 13490  // value will be replaced with "sensitive".
 13491  func (s UpdateWirelessGatewayInput) String() string {
 13492  	return awsutil.Prettify(s)
 13493  }
 13494  
 13495  // GoString returns the string representation.
 13496  //
 13497  // API parameter values that are decorated as "sensitive" in the API will not
 13498  // be included in the string output. The member name will be present, but the
 13499  // value will be replaced with "sensitive".
 13500  func (s UpdateWirelessGatewayInput) GoString() string {
 13501  	return s.String()
 13502  }
 13503  
 13504  // Validate inspects the fields of the type to determine if they are valid.
 13505  func (s *UpdateWirelessGatewayInput) Validate() error {
 13506  	invalidParams := request.ErrInvalidParams{Context: "UpdateWirelessGatewayInput"}
 13507  	if s.Id == nil {
 13508  		invalidParams.Add(request.NewErrParamRequired("Id"))
 13509  	}
 13510  	if s.Id != nil && len(*s.Id) < 1 {
 13511  		invalidParams.Add(request.NewErrParamMinLen("Id", 1))
 13512  	}
 13513  
 13514  	if invalidParams.Len() > 0 {
 13515  		return invalidParams
 13516  	}
 13517  	return nil
 13518  }
 13519  
 13520  // SetDescription sets the Description field's value.
 13521  func (s *UpdateWirelessGatewayInput) SetDescription(v string) *UpdateWirelessGatewayInput {
 13522  	s.Description = &v
 13523  	return s
 13524  }
 13525  
 13526  // SetId sets the Id field's value.
 13527  func (s *UpdateWirelessGatewayInput) SetId(v string) *UpdateWirelessGatewayInput {
 13528  	s.Id = &v
 13529  	return s
 13530  }
 13531  
 13532  // SetJoinEuiFilters sets the JoinEuiFilters field's value.
 13533  func (s *UpdateWirelessGatewayInput) SetJoinEuiFilters(v [][]*string) *UpdateWirelessGatewayInput {
 13534  	s.JoinEuiFilters = v
 13535  	return s
 13536  }
 13537  
 13538  // SetName sets the Name field's value.
 13539  func (s *UpdateWirelessGatewayInput) SetName(v string) *UpdateWirelessGatewayInput {
 13540  	s.Name = &v
 13541  	return s
 13542  }
 13543  
 13544  // SetNetIdFilters sets the NetIdFilters field's value.
 13545  func (s *UpdateWirelessGatewayInput) SetNetIdFilters(v []*string) *UpdateWirelessGatewayInput {
 13546  	s.NetIdFilters = v
 13547  	return s
 13548  }
 13549  
 13550  type UpdateWirelessGatewayOutput struct {
 13551  	_ struct{} `type:"structure" nopayload:"true"`
 13552  }
 13553  
 13554  // String returns the string representation.
 13555  //
 13556  // API parameter values that are decorated as "sensitive" in the API will not
 13557  // be included in the string output. The member name will be present, but the
 13558  // value will be replaced with "sensitive".
 13559  func (s UpdateWirelessGatewayOutput) String() string {
 13560  	return awsutil.Prettify(s)
 13561  }
 13562  
 13563  // GoString returns the string representation.
 13564  //
 13565  // API parameter values that are decorated as "sensitive" in the API will not
 13566  // be included in the string output. The member name will be present, but the
 13567  // value will be replaced with "sensitive".
 13568  func (s UpdateWirelessGatewayOutput) GoString() string {
 13569  	return s.String()
 13570  }
 13571  
 13572  // UpdateWirelessGatewayTaskCreate object.
 13573  type UpdateWirelessGatewayTaskCreate struct {
 13574  	_ struct{} `type:"structure"`
 13575  
 13576  	// The properties that relate to the LoRaWAN wireless gateway.
 13577  	LoRaWAN *LoRaWANUpdateGatewayTaskCreate `type:"structure"`
 13578  
 13579  	// The IAM role used to read data from the S3 bucket.
 13580  	UpdateDataRole *string `min:"1" type:"string"`
 13581  
 13582  	// The link to the S3 bucket.
 13583  	UpdateDataSource *string `min:"1" type:"string"`
 13584  }
 13585  
 13586  // String returns the string representation.
 13587  //
 13588  // API parameter values that are decorated as "sensitive" in the API will not
 13589  // be included in the string output. The member name will be present, but the
 13590  // value will be replaced with "sensitive".
 13591  func (s UpdateWirelessGatewayTaskCreate) String() string {
 13592  	return awsutil.Prettify(s)
 13593  }
 13594  
 13595  // GoString returns the string representation.
 13596  //
 13597  // API parameter values that are decorated as "sensitive" in the API will not
 13598  // be included in the string output. The member name will be present, but the
 13599  // value will be replaced with "sensitive".
 13600  func (s UpdateWirelessGatewayTaskCreate) GoString() string {
 13601  	return s.String()
 13602  }
 13603  
 13604  // Validate inspects the fields of the type to determine if they are valid.
 13605  func (s *UpdateWirelessGatewayTaskCreate) Validate() error {
 13606  	invalidParams := request.ErrInvalidParams{Context: "UpdateWirelessGatewayTaskCreate"}
 13607  	if s.UpdateDataRole != nil && len(*s.UpdateDataRole) < 1 {
 13608  		invalidParams.Add(request.NewErrParamMinLen("UpdateDataRole", 1))
 13609  	}
 13610  	if s.UpdateDataSource != nil && len(*s.UpdateDataSource) < 1 {
 13611  		invalidParams.Add(request.NewErrParamMinLen("UpdateDataSource", 1))
 13612  	}
 13613  	if s.LoRaWAN != nil {
 13614  		if err := s.LoRaWAN.Validate(); err != nil {
 13615  			invalidParams.AddNested("LoRaWAN", err.(request.ErrInvalidParams))
 13616  		}
 13617  	}
 13618  
 13619  	if invalidParams.Len() > 0 {
 13620  		return invalidParams
 13621  	}
 13622  	return nil
 13623  }
 13624  
 13625  // SetLoRaWAN sets the LoRaWAN field's value.
 13626  func (s *UpdateWirelessGatewayTaskCreate) SetLoRaWAN(v *LoRaWANUpdateGatewayTaskCreate) *UpdateWirelessGatewayTaskCreate {
 13627  	s.LoRaWAN = v
 13628  	return s
 13629  }
 13630  
 13631  // SetUpdateDataRole sets the UpdateDataRole field's value.
 13632  func (s *UpdateWirelessGatewayTaskCreate) SetUpdateDataRole(v string) *UpdateWirelessGatewayTaskCreate {
 13633  	s.UpdateDataRole = &v
 13634  	return s
 13635  }
 13636  
 13637  // SetUpdateDataSource sets the UpdateDataSource field's value.
 13638  func (s *UpdateWirelessGatewayTaskCreate) SetUpdateDataSource(v string) *UpdateWirelessGatewayTaskCreate {
 13639  	s.UpdateDataSource = &v
 13640  	return s
 13641  }
 13642  
 13643  // UpdateWirelessGatewayTaskEntry object.
 13644  type UpdateWirelessGatewayTaskEntry struct {
 13645  	_ struct{} `type:"structure"`
 13646  
 13647  	// The Amazon Resource Name of the resource.
 13648  	Arn *string `type:"string"`
 13649  
 13650  	// The ID of the new wireless gateway task entry.
 13651  	Id *string `type:"string"`
 13652  
 13653  	// The properties that relate to the LoRaWAN wireless gateway.
 13654  	LoRaWAN *LoRaWANUpdateGatewayTaskEntry `type:"structure"`
 13655  }
 13656  
 13657  // String returns the string representation.
 13658  //
 13659  // API parameter values that are decorated as "sensitive" in the API will not
 13660  // be included in the string output. The member name will be present, but the
 13661  // value will be replaced with "sensitive".
 13662  func (s UpdateWirelessGatewayTaskEntry) String() string {
 13663  	return awsutil.Prettify(s)
 13664  }
 13665  
 13666  // GoString returns the string representation.
 13667  //
 13668  // API parameter values that are decorated as "sensitive" in the API will not
 13669  // be included in the string output. The member name will be present, but the
 13670  // value will be replaced with "sensitive".
 13671  func (s UpdateWirelessGatewayTaskEntry) GoString() string {
 13672  	return s.String()
 13673  }
 13674  
 13675  // SetArn sets the Arn field's value.
 13676  func (s *UpdateWirelessGatewayTaskEntry) SetArn(v string) *UpdateWirelessGatewayTaskEntry {
 13677  	s.Arn = &v
 13678  	return s
 13679  }
 13680  
 13681  // SetId sets the Id field's value.
 13682  func (s *UpdateWirelessGatewayTaskEntry) SetId(v string) *UpdateWirelessGatewayTaskEntry {
 13683  	s.Id = &v
 13684  	return s
 13685  }
 13686  
 13687  // SetLoRaWAN sets the LoRaWAN field's value.
 13688  func (s *UpdateWirelessGatewayTaskEntry) SetLoRaWAN(v *LoRaWANUpdateGatewayTaskEntry) *UpdateWirelessGatewayTaskEntry {
 13689  	s.LoRaWAN = v
 13690  	return s
 13691  }
 13692  
 13693  // The input did not meet the specified constraints.
 13694  type ValidationException struct {
 13695  	_            struct{}                  `type:"structure"`
 13696  	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
 13697  
 13698  	Message_ *string `locationName:"Message" type:"string"`
 13699  }
 13700  
 13701  // String returns the string representation.
 13702  //
 13703  // API parameter values that are decorated as "sensitive" in the API will not
 13704  // be included in the string output. The member name will be present, but the
 13705  // value will be replaced with "sensitive".
 13706  func (s ValidationException) String() string {
 13707  	return awsutil.Prettify(s)
 13708  }
 13709  
 13710  // GoString returns the string representation.
 13711  //
 13712  // API parameter values that are decorated as "sensitive" in the API will not
 13713  // be included in the string output. The member name will be present, but the
 13714  // value will be replaced with "sensitive".
 13715  func (s ValidationException) GoString() string {
 13716  	return s.String()
 13717  }
 13718  
 13719  func newErrorValidationException(v protocol.ResponseMetadata) error {
 13720  	return &ValidationException{
 13721  		RespMetadata: v,
 13722  	}
 13723  }
 13724  
 13725  // Code returns the exception type name.
 13726  func (s *ValidationException) Code() string {
 13727  	return "ValidationException"
 13728  }
 13729  
 13730  // Message returns the exception's message.
 13731  func (s *ValidationException) Message() string {
 13732  	if s.Message_ != nil {
 13733  		return *s.Message_
 13734  	}
 13735  	return ""
 13736  }
 13737  
 13738  // OrigErr always returns nil, satisfies awserr.Error interface.
 13739  func (s *ValidationException) OrigErr() error {
 13740  	return nil
 13741  }
 13742  
 13743  func (s *ValidationException) Error() string {
 13744  	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
 13745  }
 13746  
 13747  // Status code returns the HTTP status code for the request's response error.
 13748  func (s *ValidationException) StatusCode() int {
 13749  	return s.RespMetadata.StatusCode
 13750  }
 13751  
 13752  // RequestID returns the service's response RequestID for request.
 13753  func (s *ValidationException) RequestID() string {
 13754  	return s.RespMetadata.RequestID
 13755  }
 13756  
 13757  // The log options for a wireless device event and can be used to set log levels
 13758  // for a specific wireless device event.
 13759  //
 13760  // For a LoRaWAN device, possible events for a log messsage are: Join, Rejoin,
 13761  // Downlink_Data, and Uplink_Data. For a Sidewalk device, possible events for
 13762  // a log message are Registration, Downlink_Data, and Uplink_Data.
 13763  type WirelessDeviceEventLogOption struct {
 13764  	_ struct{} `type:"structure"`
 13765  
 13766  	// The event for a log message, if the log message is tied to a wireless device.
 13767  	//
 13768  	// Event is a required field
 13769  	Event *string `type:"string" required:"true" enum:"WirelessDeviceEvent"`
 13770  
 13771  	// The log level for a log message.
 13772  	//
 13773  	// LogLevel is a required field
 13774  	LogLevel *string `type:"string" required:"true" enum:"LogLevel"`
 13775  }
 13776  
 13777  // String returns the string representation.
 13778  //
 13779  // API parameter values that are decorated as "sensitive" in the API will not
 13780  // be included in the string output. The member name will be present, but the
 13781  // value will be replaced with "sensitive".
 13782  func (s WirelessDeviceEventLogOption) String() string {
 13783  	return awsutil.Prettify(s)
 13784  }
 13785  
 13786  // GoString returns the string representation.
 13787  //
 13788  // API parameter values that are decorated as "sensitive" in the API will not
 13789  // be included in the string output. The member name will be present, but the
 13790  // value will be replaced with "sensitive".
 13791  func (s WirelessDeviceEventLogOption) GoString() string {
 13792  	return s.String()
 13793  }
 13794  
 13795  // Validate inspects the fields of the type to determine if they are valid.
 13796  func (s *WirelessDeviceEventLogOption) Validate() error {
 13797  	invalidParams := request.ErrInvalidParams{Context: "WirelessDeviceEventLogOption"}
 13798  	if s.Event == nil {
 13799  		invalidParams.Add(request.NewErrParamRequired("Event"))
 13800  	}
 13801  	if s.LogLevel == nil {
 13802  		invalidParams.Add(request.NewErrParamRequired("LogLevel"))
 13803  	}
 13804  
 13805  	if invalidParams.Len() > 0 {
 13806  		return invalidParams
 13807  	}
 13808  	return nil
 13809  }
 13810  
 13811  // SetEvent sets the Event field's value.
 13812  func (s *WirelessDeviceEventLogOption) SetEvent(v string) *WirelessDeviceEventLogOption {
 13813  	s.Event = &v
 13814  	return s
 13815  }
 13816  
 13817  // SetLogLevel sets the LogLevel field's value.
 13818  func (s *WirelessDeviceEventLogOption) SetLogLevel(v string) *WirelessDeviceEventLogOption {
 13819  	s.LogLevel = &v
 13820  	return s
 13821  }
 13822  
 13823  // The log options for wireless devices and can be used to set log levels for
 13824  // a specific type of wireless device.
 13825  type WirelessDeviceLogOption struct {
 13826  	_ struct{} `type:"structure"`
 13827  
 13828  	// The list of wireless device event log options.
 13829  	Events []*WirelessDeviceEventLogOption `type:"list"`
 13830  
 13831  	// The log level for a log message.
 13832  	//
 13833  	// LogLevel is a required field
 13834  	LogLevel *string `type:"string" required:"true" enum:"LogLevel"`
 13835  
 13836  	// The wireless device type.
 13837  	//
 13838  	// Type is a required field
 13839  	Type *string `type:"string" required:"true" enum:"WirelessDeviceType"`
 13840  }
 13841  
 13842  // String returns the string representation.
 13843  //
 13844  // API parameter values that are decorated as "sensitive" in the API will not
 13845  // be included in the string output. The member name will be present, but the
 13846  // value will be replaced with "sensitive".
 13847  func (s WirelessDeviceLogOption) String() string {
 13848  	return awsutil.Prettify(s)
 13849  }
 13850  
 13851  // GoString returns the string representation.
 13852  //
 13853  // API parameter values that are decorated as "sensitive" in the API will not
 13854  // be included in the string output. The member name will be present, but the
 13855  // value will be replaced with "sensitive".
 13856  func (s WirelessDeviceLogOption) GoString() string {
 13857  	return s.String()
 13858  }
 13859  
 13860  // Validate inspects the fields of the type to determine if they are valid.
 13861  func (s *WirelessDeviceLogOption) Validate() error {
 13862  	invalidParams := request.ErrInvalidParams{Context: "WirelessDeviceLogOption"}
 13863  	if s.LogLevel == nil {
 13864  		invalidParams.Add(request.NewErrParamRequired("LogLevel"))
 13865  	}
 13866  	if s.Type == nil {
 13867  		invalidParams.Add(request.NewErrParamRequired("Type"))
 13868  	}
 13869  	if s.Events != nil {
 13870  		for i, v := range s.Events {
 13871  			if v == nil {
 13872  				continue
 13873  			}
 13874  			if err := v.Validate(); err != nil {
 13875  				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Events", i), err.(request.ErrInvalidParams))
 13876  			}
 13877  		}
 13878  	}
 13879  
 13880  	if invalidParams.Len() > 0 {
 13881  		return invalidParams
 13882  	}
 13883  	return nil
 13884  }
 13885  
 13886  // SetEvents sets the Events field's value.
 13887  func (s *WirelessDeviceLogOption) SetEvents(v []*WirelessDeviceEventLogOption) *WirelessDeviceLogOption {
 13888  	s.Events = v
 13889  	return s
 13890  }
 13891  
 13892  // SetLogLevel sets the LogLevel field's value.
 13893  func (s *WirelessDeviceLogOption) SetLogLevel(v string) *WirelessDeviceLogOption {
 13894  	s.LogLevel = &v
 13895  	return s
 13896  }
 13897  
 13898  // SetType sets the Type field's value.
 13899  func (s *WirelessDeviceLogOption) SetType(v string) *WirelessDeviceLogOption {
 13900  	s.Type = &v
 13901  	return s
 13902  }
 13903  
 13904  // Information about a wireless device's operation.
 13905  type WirelessDeviceStatistics struct {
 13906  	_ struct{} `type:"structure"`
 13907  
 13908  	// The Amazon Resource Name of the resource.
 13909  	Arn *string `type:"string"`
 13910  
 13911  	// The name of the destination to which the device is assigned.
 13912  	DestinationName *string `type:"string"`
 13913  
 13914  	// The ID of the wireless device reporting the data.
 13915  	Id *string `type:"string"`
 13916  
 13917  	// The date and time when the most recent uplink was received.
 13918  	LastUplinkReceivedAt *string `type:"string"`
 13919  
 13920  	// LoRaWAN device info.
 13921  	LoRaWAN *LoRaWANListDevice `type:"structure"`
 13922  
 13923  	// The name of the resource.
 13924  	Name *string `type:"string"`
 13925  
 13926  	// The Sidewalk account credentials.
 13927  	Sidewalk *SidewalkListDevice `type:"structure"`
 13928  
 13929  	// The wireless device type.
 13930  	Type *string `type:"string" enum:"WirelessDeviceType"`
 13931  }
 13932  
 13933  // String returns the string representation.
 13934  //
 13935  // API parameter values that are decorated as "sensitive" in the API will not
 13936  // be included in the string output. The member name will be present, but the
 13937  // value will be replaced with "sensitive".
 13938  func (s WirelessDeviceStatistics) String() string {
 13939  	return awsutil.Prettify(s)
 13940  }
 13941  
 13942  // GoString returns the string representation.
 13943  //
 13944  // API parameter values that are decorated as "sensitive" in the API will not
 13945  // be included in the string output. The member name will be present, but the
 13946  // value will be replaced with "sensitive".
 13947  func (s WirelessDeviceStatistics) GoString() string {
 13948  	return s.String()
 13949  }
 13950  
 13951  // SetArn sets the Arn field's value.
 13952  func (s *WirelessDeviceStatistics) SetArn(v string) *WirelessDeviceStatistics {
 13953  	s.Arn = &v
 13954  	return s
 13955  }
 13956  
 13957  // SetDestinationName sets the DestinationName field's value.
 13958  func (s *WirelessDeviceStatistics) SetDestinationName(v string) *WirelessDeviceStatistics {
 13959  	s.DestinationName = &v
 13960  	return s
 13961  }
 13962  
 13963  // SetId sets the Id field's value.
 13964  func (s *WirelessDeviceStatistics) SetId(v string) *WirelessDeviceStatistics {
 13965  	s.Id = &v
 13966  	return s
 13967  }
 13968  
 13969  // SetLastUplinkReceivedAt sets the LastUplinkReceivedAt field's value.
 13970  func (s *WirelessDeviceStatistics) SetLastUplinkReceivedAt(v string) *WirelessDeviceStatistics {
 13971  	s.LastUplinkReceivedAt = &v
 13972  	return s
 13973  }
 13974  
 13975  // SetLoRaWAN sets the LoRaWAN field's value.
 13976  func (s *WirelessDeviceStatistics) SetLoRaWAN(v *LoRaWANListDevice) *WirelessDeviceStatistics {
 13977  	s.LoRaWAN = v
 13978  	return s
 13979  }
 13980  
 13981  // SetName sets the Name field's value.
 13982  func (s *WirelessDeviceStatistics) SetName(v string) *WirelessDeviceStatistics {
 13983  	s.Name = &v
 13984  	return s
 13985  }
 13986  
 13987  // SetSidewalk sets the Sidewalk field's value.
 13988  func (s *WirelessDeviceStatistics) SetSidewalk(v *SidewalkListDevice) *WirelessDeviceStatistics {
 13989  	s.Sidewalk = v
 13990  	return s
 13991  }
 13992  
 13993  // SetType sets the Type field's value.
 13994  func (s *WirelessDeviceStatistics) SetType(v string) *WirelessDeviceStatistics {
 13995  	s.Type = &v
 13996  	return s
 13997  }
 13998  
 13999  // The log options for a wireless gateway event and can be used to set log levels
 14000  // for a specific wireless gateway event.
 14001  //
 14002  // For a LoRaWAN gateway, possible events for a log message are CUPS_Request
 14003  // and Certificate.
 14004  type WirelessGatewayEventLogOption struct {
 14005  	_ struct{} `type:"structure"`
 14006  
 14007  	// The event for a log message, if the log message is tied to a wireless gateway.
 14008  	//
 14009  	// Event is a required field
 14010  	Event *string `type:"string" required:"true" enum:"WirelessGatewayEvent"`
 14011  
 14012  	// The log level for a log message.
 14013  	//
 14014  	// LogLevel is a required field
 14015  	LogLevel *string `type:"string" required:"true" enum:"LogLevel"`
 14016  }
 14017  
 14018  // String returns the string representation.
 14019  //
 14020  // API parameter values that are decorated as "sensitive" in the API will not
 14021  // be included in the string output. The member name will be present, but the
 14022  // value will be replaced with "sensitive".
 14023  func (s WirelessGatewayEventLogOption) String() string {
 14024  	return awsutil.Prettify(s)
 14025  }
 14026  
 14027  // GoString returns the string representation.
 14028  //
 14029  // API parameter values that are decorated as "sensitive" in the API will not
 14030  // be included in the string output. The member name will be present, but the
 14031  // value will be replaced with "sensitive".
 14032  func (s WirelessGatewayEventLogOption) GoString() string {
 14033  	return s.String()
 14034  }
 14035  
 14036  // Validate inspects the fields of the type to determine if they are valid.
 14037  func (s *WirelessGatewayEventLogOption) Validate() error {
 14038  	invalidParams := request.ErrInvalidParams{Context: "WirelessGatewayEventLogOption"}
 14039  	if s.Event == nil {
 14040  		invalidParams.Add(request.NewErrParamRequired("Event"))
 14041  	}
 14042  	if s.LogLevel == nil {
 14043  		invalidParams.Add(request.NewErrParamRequired("LogLevel"))
 14044  	}
 14045  
 14046  	if invalidParams.Len() > 0 {
 14047  		return invalidParams
 14048  	}
 14049  	return nil
 14050  }
 14051  
 14052  // SetEvent sets the Event field's value.
 14053  func (s *WirelessGatewayEventLogOption) SetEvent(v string) *WirelessGatewayEventLogOption {
 14054  	s.Event = &v
 14055  	return s
 14056  }
 14057  
 14058  // SetLogLevel sets the LogLevel field's value.
 14059  func (s *WirelessGatewayEventLogOption) SetLogLevel(v string) *WirelessGatewayEventLogOption {
 14060  	s.LogLevel = &v
 14061  	return s
 14062  }
 14063  
 14064  // The log options for wireless gateways and can be used to set log levels for
 14065  // a specific type of wireless gateway.
 14066  type WirelessGatewayLogOption struct {
 14067  	_ struct{} `type:"structure"`
 14068  
 14069  	// The list of wireless gateway event log options.
 14070  	Events []*WirelessGatewayEventLogOption `type:"list"`
 14071  
 14072  	// The log level for a log message.
 14073  	//
 14074  	// LogLevel is a required field
 14075  	LogLevel *string `type:"string" required:"true" enum:"LogLevel"`
 14076  
 14077  	// The wireless gateway type.
 14078  	//
 14079  	// Type is a required field
 14080  	Type *string `type:"string" required:"true" enum:"WirelessGatewayType"`
 14081  }
 14082  
 14083  // String returns the string representation.
 14084  //
 14085  // API parameter values that are decorated as "sensitive" in the API will not
 14086  // be included in the string output. The member name will be present, but the
 14087  // value will be replaced with "sensitive".
 14088  func (s WirelessGatewayLogOption) String() string {
 14089  	return awsutil.Prettify(s)
 14090  }
 14091  
 14092  // GoString returns the string representation.
 14093  //
 14094  // API parameter values that are decorated as "sensitive" in the API will not
 14095  // be included in the string output. The member name will be present, but the
 14096  // value will be replaced with "sensitive".
 14097  func (s WirelessGatewayLogOption) GoString() string {
 14098  	return s.String()
 14099  }
 14100  
 14101  // Validate inspects the fields of the type to determine if they are valid.
 14102  func (s *WirelessGatewayLogOption) Validate() error {
 14103  	invalidParams := request.ErrInvalidParams{Context: "WirelessGatewayLogOption"}
 14104  	if s.LogLevel == nil {
 14105  		invalidParams.Add(request.NewErrParamRequired("LogLevel"))
 14106  	}
 14107  	if s.Type == nil {
 14108  		invalidParams.Add(request.NewErrParamRequired("Type"))
 14109  	}
 14110  	if s.Events != nil {
 14111  		for i, v := range s.Events {
 14112  			if v == nil {
 14113  				continue
 14114  			}
 14115  			if err := v.Validate(); err != nil {
 14116  				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Events", i), err.(request.ErrInvalidParams))
 14117  			}
 14118  		}
 14119  	}
 14120  
 14121  	if invalidParams.Len() > 0 {
 14122  		return invalidParams
 14123  	}
 14124  	return nil
 14125  }
 14126  
 14127  // SetEvents sets the Events field's value.
 14128  func (s *WirelessGatewayLogOption) SetEvents(v []*WirelessGatewayEventLogOption) *WirelessGatewayLogOption {
 14129  	s.Events = v
 14130  	return s
 14131  }
 14132  
 14133  // SetLogLevel sets the LogLevel field's value.
 14134  func (s *WirelessGatewayLogOption) SetLogLevel(v string) *WirelessGatewayLogOption {
 14135  	s.LogLevel = &v
 14136  	return s
 14137  }
 14138  
 14139  // SetType sets the Type field's value.
 14140  func (s *WirelessGatewayLogOption) SetType(v string) *WirelessGatewayLogOption {
 14141  	s.Type = &v
 14142  	return s
 14143  }
 14144  
 14145  // Information about a wireless gateway's operation.
 14146  type WirelessGatewayStatistics struct {
 14147  	_ struct{} `type:"structure"`
 14148  
 14149  	// The Amazon Resource Name of the resource.
 14150  	Arn *string `type:"string"`
 14151  
 14152  	// The description of the resource.
 14153  	Description *string `type:"string"`
 14154  
 14155  	// The ID of the wireless gateway reporting the data.
 14156  	Id *string `type:"string"`
 14157  
 14158  	// The date and time when the most recent uplink was received.
 14159  	LastUplinkReceivedAt *string `type:"string"`
 14160  
 14161  	// LoRaWAN gateway info.
 14162  	LoRaWAN *LoRaWANGateway `type:"structure"`
 14163  
 14164  	// The name of the resource.
 14165  	Name *string `type:"string"`
 14166  }
 14167  
 14168  // String returns the string representation.
 14169  //
 14170  // API parameter values that are decorated as "sensitive" in the API will not
 14171  // be included in the string output. The member name will be present, but the
 14172  // value will be replaced with "sensitive".
 14173  func (s WirelessGatewayStatistics) String() string {
 14174  	return awsutil.Prettify(s)
 14175  }
 14176  
 14177  // GoString returns the string representation.
 14178  //
 14179  // API parameter values that are decorated as "sensitive" in the API will not
 14180  // be included in the string output. The member name will be present, but the
 14181  // value will be replaced with "sensitive".
 14182  func (s WirelessGatewayStatistics) GoString() string {
 14183  	return s.String()
 14184  }
 14185  
 14186  // SetArn sets the Arn field's value.
 14187  func (s *WirelessGatewayStatistics) SetArn(v string) *WirelessGatewayStatistics {
 14188  	s.Arn = &v
 14189  	return s
 14190  }
 14191  
 14192  // SetDescription sets the Description field's value.
 14193  func (s *WirelessGatewayStatistics) SetDescription(v string) *WirelessGatewayStatistics {
 14194  	s.Description = &v
 14195  	return s
 14196  }
 14197  
 14198  // SetId sets the Id field's value.
 14199  func (s *WirelessGatewayStatistics) SetId(v string) *WirelessGatewayStatistics {
 14200  	s.Id = &v
 14201  	return s
 14202  }
 14203  
 14204  // SetLastUplinkReceivedAt sets the LastUplinkReceivedAt field's value.
 14205  func (s *WirelessGatewayStatistics) SetLastUplinkReceivedAt(v string) *WirelessGatewayStatistics {
 14206  	s.LastUplinkReceivedAt = &v
 14207  	return s
 14208  }
 14209  
 14210  // SetLoRaWAN sets the LoRaWAN field's value.
 14211  func (s *WirelessGatewayStatistics) SetLoRaWAN(v *LoRaWANGateway) *WirelessGatewayStatistics {
 14212  	s.LoRaWAN = v
 14213  	return s
 14214  }
 14215  
 14216  // SetName sets the Name field's value.
 14217  func (s *WirelessGatewayStatistics) SetName(v string) *WirelessGatewayStatistics {
 14218  	s.Name = &v
 14219  	return s
 14220  }
 14221  
 14222  // WirelessMetadata object.
 14223  type WirelessMetadata struct {
 14224  	_ struct{} `type:"structure"`
 14225  
 14226  	// LoRaWAN device info.
 14227  	LoRaWAN *LoRaWANSendDataToDevice `type:"structure"`
 14228  
 14229  	// The Sidewalk account credentials.
 14230  	Sidewalk *SidewalkSendDataToDevice `type:"structure"`
 14231  }
 14232  
 14233  // String returns the string representation.
 14234  //
 14235  // API parameter values that are decorated as "sensitive" in the API will not
 14236  // be included in the string output. The member name will be present, but the
 14237  // value will be replaced with "sensitive".
 14238  func (s WirelessMetadata) String() string {
 14239  	return awsutil.Prettify(s)
 14240  }
 14241  
 14242  // GoString returns the string representation.
 14243  //
 14244  // API parameter values that are decorated as "sensitive" in the API will not
 14245  // be included in the string output. The member name will be present, but the
 14246  // value will be replaced with "sensitive".
 14247  func (s WirelessMetadata) GoString() string {
 14248  	return s.String()
 14249  }
 14250  
 14251  // Validate inspects the fields of the type to determine if they are valid.
 14252  func (s *WirelessMetadata) Validate() error {
 14253  	invalidParams := request.ErrInvalidParams{Context: "WirelessMetadata"}
 14254  	if s.LoRaWAN != nil {
 14255  		if err := s.LoRaWAN.Validate(); err != nil {
 14256  			invalidParams.AddNested("LoRaWAN", err.(request.ErrInvalidParams))
 14257  		}
 14258  	}
 14259  
 14260  	if invalidParams.Len() > 0 {
 14261  		return invalidParams
 14262  	}
 14263  	return nil
 14264  }
 14265  
 14266  // SetLoRaWAN sets the LoRaWAN field's value.
 14267  func (s *WirelessMetadata) SetLoRaWAN(v *LoRaWANSendDataToDevice) *WirelessMetadata {
 14268  	s.LoRaWAN = v
 14269  	return s
 14270  }
 14271  
 14272  // SetSidewalk sets the Sidewalk field's value.
 14273  func (s *WirelessMetadata) SetSidewalk(v *SidewalkSendDataToDevice) *WirelessMetadata {
 14274  	s.Sidewalk = v
 14275  	return s
 14276  }
 14277  
 14278  // Sidewalk device battery level.
 14279  const (
 14280  	// BatteryLevelNormal is a BatteryLevel enum value
 14281  	BatteryLevelNormal = "normal"
 14282  
 14283  	// BatteryLevelLow is a BatteryLevel enum value
 14284  	BatteryLevelLow = "low"
 14285  
 14286  	// BatteryLevelCritical is a BatteryLevel enum value
 14287  	BatteryLevelCritical = "critical"
 14288  )
 14289  
 14290  // BatteryLevel_Values returns all elements of the BatteryLevel enum
 14291  func BatteryLevel_Values() []string {
 14292  	return []string{
 14293  		BatteryLevelNormal,
 14294  		BatteryLevelLow,
 14295  		BatteryLevelCritical,
 14296  	}
 14297  }
 14298  
 14299  const (
 14300  	// ConnectionStatusConnected is a ConnectionStatus enum value
 14301  	ConnectionStatusConnected = "Connected"
 14302  
 14303  	// ConnectionStatusDisconnected is a ConnectionStatus enum value
 14304  	ConnectionStatusDisconnected = "Disconnected"
 14305  )
 14306  
 14307  // ConnectionStatus_Values returns all elements of the ConnectionStatus enum
 14308  func ConnectionStatus_Values() []string {
 14309  	return []string{
 14310  		ConnectionStatusConnected,
 14311  		ConnectionStatusDisconnected,
 14312  	}
 14313  }
 14314  
 14315  // Device state defines the device status of sidewalk device.
 14316  const (
 14317  	// DeviceStateProvisioned is a DeviceState enum value
 14318  	DeviceStateProvisioned = "Provisioned"
 14319  
 14320  	// DeviceStateRegisteredNotSeen is a DeviceState enum value
 14321  	DeviceStateRegisteredNotSeen = "RegisteredNotSeen"
 14322  
 14323  	// DeviceStateRegisteredReachable is a DeviceState enum value
 14324  	DeviceStateRegisteredReachable = "RegisteredReachable"
 14325  
 14326  	// DeviceStateRegisteredUnreachable is a DeviceState enum value
 14327  	DeviceStateRegisteredUnreachable = "RegisteredUnreachable"
 14328  )
 14329  
 14330  // DeviceState_Values returns all elements of the DeviceState enum
 14331  func DeviceState_Values() []string {
 14332  	return []string{
 14333  		DeviceStateProvisioned,
 14334  		DeviceStateRegisteredNotSeen,
 14335  		DeviceStateRegisteredReachable,
 14336  		DeviceStateRegisteredUnreachable,
 14337  	}
 14338  }
 14339  
 14340  // Sidewalk device status notification.
 14341  const (
 14342  	// EventDiscovered is a Event enum value
 14343  	EventDiscovered = "discovered"
 14344  
 14345  	// EventLost is a Event enum value
 14346  	EventLost = "lost"
 14347  
 14348  	// EventAck is a Event enum value
 14349  	EventAck = "ack"
 14350  
 14351  	// EventNack is a Event enum value
 14352  	EventNack = "nack"
 14353  
 14354  	// EventPassthrough is a Event enum value
 14355  	EventPassthrough = "passthrough"
 14356  )
 14357  
 14358  // Event_Values returns all elements of the Event enum
 14359  func Event_Values() []string {
 14360  	return []string{
 14361  		EventDiscovered,
 14362  		EventLost,
 14363  		EventAck,
 14364  		EventNack,
 14365  		EventPassthrough,
 14366  	}
 14367  }
 14368  
 14369  const (
 14370  	// ExpressionTypeRuleName is a ExpressionType enum value
 14371  	ExpressionTypeRuleName = "RuleName"
 14372  
 14373  	// ExpressionTypeMqttTopic is a ExpressionType enum value
 14374  	ExpressionTypeMqttTopic = "MqttTopic"
 14375  )
 14376  
 14377  // ExpressionType_Values returns all elements of the ExpressionType enum
 14378  func ExpressionType_Values() []string {
 14379  	return []string{
 14380  		ExpressionTypeRuleName,
 14381  		ExpressionTypeMqttTopic,
 14382  	}
 14383  }
 14384  
 14385  // The log level for a log message.
 14386  const (
 14387  	// LogLevelInfo is a LogLevel enum value
 14388  	LogLevelInfo = "INFO"
 14389  
 14390  	// LogLevelError is a LogLevel enum value
 14391  	LogLevelError = "ERROR"
 14392  
 14393  	// LogLevelDisabled is a LogLevel enum value
 14394  	LogLevelDisabled = "DISABLED"
 14395  )
 14396  
 14397  // LogLevel_Values returns all elements of the LogLevel enum
 14398  func LogLevel_Values() []string {
 14399  	return []string{
 14400  		LogLevelInfo,
 14401  		LogLevelError,
 14402  		LogLevelDisabled,
 14403  	}
 14404  }
 14405  
 14406  // Sidewalk device message type. Default value is CUSTOM_COMMAND_ID_NOTIFY.
 14407  const (
 14408  	// MessageTypeCustomCommandIdNotify is a MessageType enum value
 14409  	MessageTypeCustomCommandIdNotify = "CUSTOM_COMMAND_ID_NOTIFY"
 14410  
 14411  	// MessageTypeCustomCommandIdGet is a MessageType enum value
 14412  	MessageTypeCustomCommandIdGet = "CUSTOM_COMMAND_ID_GET"
 14413  
 14414  	// MessageTypeCustomCommandIdSet is a MessageType enum value
 14415  	MessageTypeCustomCommandIdSet = "CUSTOM_COMMAND_ID_SET"
 14416  
 14417  	// MessageTypeCustomCommandIdResp is a MessageType enum value
 14418  	MessageTypeCustomCommandIdResp = "CUSTOM_COMMAND_ID_RESP"
 14419  )
 14420  
 14421  // MessageType_Values returns all elements of the MessageType enum
 14422  func MessageType_Values() []string {
 14423  	return []string{
 14424  		MessageTypeCustomCommandIdNotify,
 14425  		MessageTypeCustomCommandIdGet,
 14426  		MessageTypeCustomCommandIdSet,
 14427  		MessageTypeCustomCommandIdResp,
 14428  	}
 14429  }
 14430  
 14431  const (
 14432  	// PartnerTypeSidewalk is a PartnerType enum value
 14433  	PartnerTypeSidewalk = "Sidewalk"
 14434  )
 14435  
 14436  // PartnerType_Values returns all elements of the PartnerType enum
 14437  func PartnerType_Values() []string {
 14438  	return []string{
 14439  		PartnerTypeSidewalk,
 14440  	}
 14441  }
 14442  
 14443  // The certificate chain algorithm provided by sidewalk.
 14444  const (
 14445  	// SigningAlgEd25519 is a SigningAlg enum value
 14446  	SigningAlgEd25519 = "Ed25519"
 14447  
 14448  	// SigningAlgP256r1 is a SigningAlg enum value
 14449  	SigningAlgP256r1 = "P256r1"
 14450  )
 14451  
 14452  // SigningAlg_Values returns all elements of the SigningAlg enum
 14453  func SigningAlg_Values() []string {
 14454  	return []string{
 14455  		SigningAlgEd25519,
 14456  		SigningAlgP256r1,
 14457  	}
 14458  }
 14459  
 14460  // The event for a log message, if the log message is tied to a wireless device.
 14461  const (
 14462  	// WirelessDeviceEventJoin is a WirelessDeviceEvent enum value
 14463  	WirelessDeviceEventJoin = "Join"
 14464  
 14465  	// WirelessDeviceEventRejoin is a WirelessDeviceEvent enum value
 14466  	WirelessDeviceEventRejoin = "Rejoin"
 14467  
 14468  	// WirelessDeviceEventUplinkData is a WirelessDeviceEvent enum value
 14469  	WirelessDeviceEventUplinkData = "Uplink_Data"
 14470  
 14471  	// WirelessDeviceEventDownlinkData is a WirelessDeviceEvent enum value
 14472  	WirelessDeviceEventDownlinkData = "Downlink_Data"
 14473  
 14474  	// WirelessDeviceEventRegistration is a WirelessDeviceEvent enum value
 14475  	WirelessDeviceEventRegistration = "Registration"
 14476  )
 14477  
 14478  // WirelessDeviceEvent_Values returns all elements of the WirelessDeviceEvent enum
 14479  func WirelessDeviceEvent_Values() []string {
 14480  	return []string{
 14481  		WirelessDeviceEventJoin,
 14482  		WirelessDeviceEventRejoin,
 14483  		WirelessDeviceEventUplinkData,
 14484  		WirelessDeviceEventDownlinkData,
 14485  		WirelessDeviceEventRegistration,
 14486  	}
 14487  }
 14488  
 14489  const (
 14490  	// WirelessDeviceIdTypeWirelessDeviceId is a WirelessDeviceIdType enum value
 14491  	WirelessDeviceIdTypeWirelessDeviceId = "WirelessDeviceId"
 14492  
 14493  	// WirelessDeviceIdTypeDevEui is a WirelessDeviceIdType enum value
 14494  	WirelessDeviceIdTypeDevEui = "DevEui"
 14495  
 14496  	// WirelessDeviceIdTypeThingName is a WirelessDeviceIdType enum value
 14497  	WirelessDeviceIdTypeThingName = "ThingName"
 14498  
 14499  	// WirelessDeviceIdTypeSidewalkManufacturingSn is a WirelessDeviceIdType enum value
 14500  	WirelessDeviceIdTypeSidewalkManufacturingSn = "SidewalkManufacturingSn"
 14501  )
 14502  
 14503  // WirelessDeviceIdType_Values returns all elements of the WirelessDeviceIdType enum
 14504  func WirelessDeviceIdType_Values() []string {
 14505  	return []string{
 14506  		WirelessDeviceIdTypeWirelessDeviceId,
 14507  		WirelessDeviceIdTypeDevEui,
 14508  		WirelessDeviceIdTypeThingName,
 14509  		WirelessDeviceIdTypeSidewalkManufacturingSn,
 14510  	}
 14511  }
 14512  
 14513  const (
 14514  	// WirelessDeviceTypeSidewalk is a WirelessDeviceType enum value
 14515  	WirelessDeviceTypeSidewalk = "Sidewalk"
 14516  
 14517  	// WirelessDeviceTypeLoRaWan is a WirelessDeviceType enum value
 14518  	WirelessDeviceTypeLoRaWan = "LoRaWAN"
 14519  )
 14520  
 14521  // WirelessDeviceType_Values returns all elements of the WirelessDeviceType enum
 14522  func WirelessDeviceType_Values() []string {
 14523  	return []string{
 14524  		WirelessDeviceTypeSidewalk,
 14525  		WirelessDeviceTypeLoRaWan,
 14526  	}
 14527  }
 14528  
 14529  // The event for a log message, if the log message is tied to a wireless gateway.
 14530  const (
 14531  	// WirelessGatewayEventCupsRequest is a WirelessGatewayEvent enum value
 14532  	WirelessGatewayEventCupsRequest = "CUPS_Request"
 14533  
 14534  	// WirelessGatewayEventCertificate is a WirelessGatewayEvent enum value
 14535  	WirelessGatewayEventCertificate = "Certificate"
 14536  )
 14537  
 14538  // WirelessGatewayEvent_Values returns all elements of the WirelessGatewayEvent enum
 14539  func WirelessGatewayEvent_Values() []string {
 14540  	return []string{
 14541  		WirelessGatewayEventCupsRequest,
 14542  		WirelessGatewayEventCertificate,
 14543  	}
 14544  }
 14545  
 14546  const (
 14547  	// WirelessGatewayIdTypeGatewayEui is a WirelessGatewayIdType enum value
 14548  	WirelessGatewayIdTypeGatewayEui = "GatewayEui"
 14549  
 14550  	// WirelessGatewayIdTypeWirelessGatewayId is a WirelessGatewayIdType enum value
 14551  	WirelessGatewayIdTypeWirelessGatewayId = "WirelessGatewayId"
 14552  
 14553  	// WirelessGatewayIdTypeThingName is a WirelessGatewayIdType enum value
 14554  	WirelessGatewayIdTypeThingName = "ThingName"
 14555  )
 14556  
 14557  // WirelessGatewayIdType_Values returns all elements of the WirelessGatewayIdType enum
 14558  func WirelessGatewayIdType_Values() []string {
 14559  	return []string{
 14560  		WirelessGatewayIdTypeGatewayEui,
 14561  		WirelessGatewayIdTypeWirelessGatewayId,
 14562  		WirelessGatewayIdTypeThingName,
 14563  	}
 14564  }
 14565  
 14566  const (
 14567  	// WirelessGatewayServiceTypeCups is a WirelessGatewayServiceType enum value
 14568  	WirelessGatewayServiceTypeCups = "CUPS"
 14569  
 14570  	// WirelessGatewayServiceTypeLns is a WirelessGatewayServiceType enum value
 14571  	WirelessGatewayServiceTypeLns = "LNS"
 14572  )
 14573  
 14574  // WirelessGatewayServiceType_Values returns all elements of the WirelessGatewayServiceType enum
 14575  func WirelessGatewayServiceType_Values() []string {
 14576  	return []string{
 14577  		WirelessGatewayServiceTypeCups,
 14578  		WirelessGatewayServiceTypeLns,
 14579  	}
 14580  }
 14581  
 14582  const (
 14583  	// WirelessGatewayTaskDefinitionTypeUpdate is a WirelessGatewayTaskDefinitionType enum value
 14584  	WirelessGatewayTaskDefinitionTypeUpdate = "UPDATE"
 14585  )
 14586  
 14587  // WirelessGatewayTaskDefinitionType_Values returns all elements of the WirelessGatewayTaskDefinitionType enum
 14588  func WirelessGatewayTaskDefinitionType_Values() []string {
 14589  	return []string{
 14590  		WirelessGatewayTaskDefinitionTypeUpdate,
 14591  	}
 14592  }
 14593  
 14594  const (
 14595  	// WirelessGatewayTaskStatusPending is a WirelessGatewayTaskStatus enum value
 14596  	WirelessGatewayTaskStatusPending = "PENDING"
 14597  
 14598  	// WirelessGatewayTaskStatusInProgress is a WirelessGatewayTaskStatus enum value
 14599  	WirelessGatewayTaskStatusInProgress = "IN_PROGRESS"
 14600  
 14601  	// WirelessGatewayTaskStatusFirstRetry is a WirelessGatewayTaskStatus enum value
 14602  	WirelessGatewayTaskStatusFirstRetry = "FIRST_RETRY"
 14603  
 14604  	// WirelessGatewayTaskStatusSecondRetry is a WirelessGatewayTaskStatus enum value
 14605  	WirelessGatewayTaskStatusSecondRetry = "SECOND_RETRY"
 14606  
 14607  	// WirelessGatewayTaskStatusCompleted is a WirelessGatewayTaskStatus enum value
 14608  	WirelessGatewayTaskStatusCompleted = "COMPLETED"
 14609  
 14610  	// WirelessGatewayTaskStatusFailed is a WirelessGatewayTaskStatus enum value
 14611  	WirelessGatewayTaskStatusFailed = "FAILED"
 14612  )
 14613  
 14614  // WirelessGatewayTaskStatus_Values returns all elements of the WirelessGatewayTaskStatus enum
 14615  func WirelessGatewayTaskStatus_Values() []string {
 14616  	return []string{
 14617  		WirelessGatewayTaskStatusPending,
 14618  		WirelessGatewayTaskStatusInProgress,
 14619  		WirelessGatewayTaskStatusFirstRetry,
 14620  		WirelessGatewayTaskStatusSecondRetry,
 14621  		WirelessGatewayTaskStatusCompleted,
 14622  		WirelessGatewayTaskStatusFailed,
 14623  	}
 14624  }
 14625  
 14626  // The wireless gateway type.
 14627  const (
 14628  	// WirelessGatewayTypeLoRaWan is a WirelessGatewayType enum value
 14629  	WirelessGatewayTypeLoRaWan = "LoRaWAN"
 14630  )
 14631  
 14632  // WirelessGatewayType_Values returns all elements of the WirelessGatewayType enum
 14633  func WirelessGatewayType_Values() []string {
 14634  	return []string{
 14635  		WirelessGatewayTypeLoRaWan,
 14636  	}
 14637  }