diff --git a/CHANGELOG.md b/CHANGELOG.md index 05267ae8006..b3a1575f8f9 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,3 +1,13 @@ +Release v1.44.106 (2022-09-26) +=== + +### Service Client Updates +* `service/cur`: Updates service API + * This release adds two new support regions(me-central-1/eu-south-2) for OSG. +* `service/iotfleetwise`: Adds new service +* `service/ssm`: Updates service API and documentation + * This release includes support for applying a CloudWatch alarm to Systems Manager capabilities like Automation, Run Command, State Manager, and Maintenance Windows. + Release v1.44.105 (2022-09-23) === diff --git a/aws/endpoints/defaults.go b/aws/endpoints/defaults.go index 524d2240dc0..934a3e0af06 100644 --- a/aws/endpoints/defaults.go +++ b/aws/endpoints/defaults.go @@ -12388,6 +12388,16 @@ var awsPartition = partition{ }, }, }, + "iotfleetwise": service{ + Endpoints: serviceEndpoints{ + endpointKey{ + Region: "eu-central-1", + }: endpoint{}, + endpointKey{ + Region: "us-east-1", + }: endpoint{}, + }, + }, "iotsecuredtunneling": service{ Defaults: endpointDefaults{ defaultKey{}: endpoint{}, diff --git a/aws/version.go b/aws/version.go index fbd13072524..4eae0c811d3 100644 --- a/aws/version.go +++ b/aws/version.go @@ -5,4 +5,4 @@ package aws const SDKName = "aws-sdk-go" // SDKVersion is the version of this SDK -const SDKVersion = "1.44.105" +const SDKVersion = "1.44.106" diff --git a/models/apis/cur/2017-01-06/api-2.json b/models/apis/cur/2017-01-06/api-2.json index 8a938189d88..2614e86fad3 100644 --- a/models/apis/cur/2017-01-06/api-2.json +++ b/models/apis/cur/2017-01-06/api-2.json @@ -76,6 +76,7 @@ "ap-south-1", "ap-southeast-1", "ap-southeast-2", + "ap-southeast-3", "ap-northeast-1", "ap-northeast-2", "ap-northeast-3", @@ -86,6 +87,8 @@ "eu-west-3", "eu-north-1", "eu-south-1", + "eu-south-2", + "me-central-1", "me-south-1", "sa-east-1", "us-east-1", diff --git a/models/apis/iotfleetwise/2021-06-17/api-2.json b/models/apis/iotfleetwise/2021-06-17/api-2.json new file mode 100644 index 00000000000..801234ecd2c --- /dev/null +++ b/models/apis/iotfleetwise/2021-06-17/api-2.json @@ -0,0 +1,2958 @@ +{ + "version":"2.0", + "metadata":{ + "apiVersion":"2021-06-17", + "endpointPrefix":"iotfleetwise", + "jsonVersion":"1.0", + "protocol":"json", + "serviceFullName":"AWS IoT FleetWise", + "serviceId":"IoTFleetWise", + "signatureVersion":"v4", + "signingName":"iotfleetwise", + "targetPrefix":"IoTAutobahnControlPlane", + "uid":"iotfleetwise-2021-06-17" + }, + "operations":{ + "AssociateVehicleFleet":{ + "name":"AssociateVehicleFleet", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"AssociateVehicleFleetRequest"}, + "output":{"shape":"AssociateVehicleFleetResponse"}, + "errors":[ + {"shape":"InternalServerException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"ThrottlingException"}, + {"shape":"ValidationException"}, + {"shape":"AccessDeniedException"} + ] + }, + "BatchCreateVehicle":{ + "name":"BatchCreateVehicle", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"BatchCreateVehicleRequest"}, + "output":{"shape":"BatchCreateVehicleResponse"}, + "errors":[ + {"shape":"InternalServerException"}, + {"shape":"LimitExceededException"}, + {"shape":"ThrottlingException"}, + {"shape":"ValidationException"}, + {"shape":"AccessDeniedException"} + ] + }, + "BatchUpdateVehicle":{ + "name":"BatchUpdateVehicle", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"BatchUpdateVehicleRequest"}, + "output":{"shape":"BatchUpdateVehicleResponse"}, + "errors":[ + {"shape":"InternalServerException"}, + {"shape":"ThrottlingException"}, + {"shape":"ValidationException"}, + {"shape":"AccessDeniedException"} + ] + }, + "CreateCampaign":{ + "name":"CreateCampaign", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"CreateCampaignRequest"}, + "output":{"shape":"CreateCampaignResponse"}, + "errors":[ + {"shape":"ResourceNotFoundException"}, + {"shape":"InternalServerException"}, + {"shape":"ConflictException"}, + {"shape":"LimitExceededException"}, + {"shape":"ThrottlingException"}, + {"shape":"ValidationException"}, + {"shape":"AccessDeniedException"} + ], + "idempotent":true + }, + "CreateDecoderManifest":{ + "name":"CreateDecoderManifest", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"CreateDecoderManifestRequest"}, + "output":{"shape":"CreateDecoderManifestResponse"}, + "errors":[ + {"shape":"ResourceNotFoundException"}, + {"shape":"InternalServerException"}, + {"shape":"ConflictException"}, + {"shape":"LimitExceededException"}, + {"shape":"DecoderManifestValidationException"}, + {"shape":"ThrottlingException"}, + {"shape":"ValidationException"}, + {"shape":"AccessDeniedException"} + ], + "idempotent":true + }, + "CreateFleet":{ + "name":"CreateFleet", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"CreateFleetRequest"}, + "output":{"shape":"CreateFleetResponse"}, + "errors":[ + {"shape":"InternalServerException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"ConflictException"}, + {"shape":"LimitExceededException"}, + {"shape":"ThrottlingException"}, + {"shape":"ValidationException"}, + {"shape":"AccessDeniedException"} + ], + "idempotent":true + }, + "CreateModelManifest":{ + "name":"CreateModelManifest", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"CreateModelManifestRequest"}, + "output":{"shape":"CreateModelManifestResponse"}, + "errors":[ + {"shape":"ResourceNotFoundException"}, + {"shape":"InternalServerException"}, + {"shape":"ConflictException"}, + {"shape":"LimitExceededException"}, + {"shape":"ThrottlingException"}, + {"shape":"ValidationException"}, + {"shape":"InvalidSignalsException"}, + {"shape":"AccessDeniedException"} + ], + "idempotent":true + }, + "CreateSignalCatalog":{ + "name":"CreateSignalCatalog", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"CreateSignalCatalogRequest"}, + "output":{"shape":"CreateSignalCatalogResponse"}, + "errors":[ + {"shape":"InternalServerException"}, + {"shape":"ConflictException"}, + {"shape":"LimitExceededException"}, + {"shape":"InvalidNodeException"}, + {"shape":"ThrottlingException"}, + {"shape":"ValidationException"}, + {"shape":"InvalidSignalsException"}, + {"shape":"AccessDeniedException"} + ], + "idempotent":true + }, + "CreateVehicle":{ + "name":"CreateVehicle", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"CreateVehicleRequest"}, + "output":{"shape":"CreateVehicleResponse"}, + "errors":[ + {"shape":"InternalServerException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"ConflictException"}, + {"shape":"LimitExceededException"}, + {"shape":"ThrottlingException"}, + {"shape":"ValidationException"}, + {"shape":"AccessDeniedException"} + ], + "idempotent":true + }, + "DeleteCampaign":{ + "name":"DeleteCampaign", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"DeleteCampaignRequest"}, + "output":{"shape":"DeleteCampaignResponse"}, + "errors":[ + {"shape":"ResourceNotFoundException"}, + {"shape":"InternalServerException"}, + {"shape":"ThrottlingException"}, + {"shape":"ValidationException"}, + {"shape":"AccessDeniedException"} + ], + "idempotent":true + }, + "DeleteDecoderManifest":{ + "name":"DeleteDecoderManifest", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"DeleteDecoderManifestRequest"}, + "output":{"shape":"DeleteDecoderManifestResponse"}, + "errors":[ + {"shape":"InternalServerException"}, + {"shape":"ConflictException"}, + {"shape":"ThrottlingException"}, + {"shape":"ValidationException"}, + {"shape":"AccessDeniedException"} + ], + "idempotent":true + }, + "DeleteFleet":{ + "name":"DeleteFleet", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"DeleteFleetRequest"}, + "output":{"shape":"DeleteFleetResponse"}, + "errors":[ + {"shape":"InternalServerException"}, + {"shape":"ThrottlingException"}, + {"shape":"ValidationException"}, + {"shape":"AccessDeniedException"} + ], + "idempotent":true + }, + "DeleteModelManifest":{ + "name":"DeleteModelManifest", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"DeleteModelManifestRequest"}, + "output":{"shape":"DeleteModelManifestResponse"}, + "errors":[ + {"shape":"InternalServerException"}, + {"shape":"ConflictException"}, + {"shape":"ThrottlingException"}, + {"shape":"ValidationException"}, + {"shape":"AccessDeniedException"} + ], + "idempotent":true + }, + "DeleteSignalCatalog":{ + "name":"DeleteSignalCatalog", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"DeleteSignalCatalogRequest"}, + "output":{"shape":"DeleteSignalCatalogResponse"}, + "errors":[ + {"shape":"InternalServerException"}, + {"shape":"ConflictException"}, + {"shape":"ThrottlingException"}, + {"shape":"ValidationException"}, + {"shape":"AccessDeniedException"} + ], + "idempotent":true + }, + "DeleteVehicle":{ + "name":"DeleteVehicle", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"DeleteVehicleRequest"}, + "output":{"shape":"DeleteVehicleResponse"}, + "errors":[ + {"shape":"InternalServerException"}, + {"shape":"ThrottlingException"}, + {"shape":"ValidationException"}, + {"shape":"AccessDeniedException"} + ], + "idempotent":true + }, + "DisassociateVehicleFleet":{ + "name":"DisassociateVehicleFleet", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"DisassociateVehicleFleetRequest"}, + "output":{"shape":"DisassociateVehicleFleetResponse"}, + "errors":[ + {"shape":"InternalServerException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"ThrottlingException"}, + {"shape":"ValidationException"}, + {"shape":"AccessDeniedException"} + ] + }, + "GetCampaign":{ + "name":"GetCampaign", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"GetCampaignRequest"}, + "output":{"shape":"GetCampaignResponse"}, + "errors":[ + {"shape":"ResourceNotFoundException"}, + {"shape":"InternalServerException"}, + {"shape":"ThrottlingException"}, + {"shape":"ValidationException"}, + {"shape":"AccessDeniedException"} + ] + }, + "GetDecoderManifest":{ + "name":"GetDecoderManifest", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"GetDecoderManifestRequest"}, + "output":{"shape":"GetDecoderManifestResponse"}, + "errors":[ + {"shape":"ResourceNotFoundException"}, + {"shape":"InternalServerException"}, + {"shape":"ThrottlingException"}, + {"shape":"ValidationException"}, + {"shape":"AccessDeniedException"} + ] + }, + "GetFleet":{ + "name":"GetFleet", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"GetFleetRequest"}, + "output":{"shape":"GetFleetResponse"}, + "errors":[ + {"shape":"InternalServerException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"ThrottlingException"}, + {"shape":"ValidationException"}, + {"shape":"AccessDeniedException"} + ] + }, + "GetLoggingOptions":{ + "name":"GetLoggingOptions", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"GetLoggingOptionsRequest"}, + "output":{"shape":"GetLoggingOptionsResponse"}, + "errors":[ + {"shape":"InternalServerException"}, + {"shape":"ThrottlingException"}, + {"shape":"AccessDeniedException"} + ] + }, + "GetModelManifest":{ + "name":"GetModelManifest", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"GetModelManifestRequest"}, + "output":{"shape":"GetModelManifestResponse"}, + "errors":[ + {"shape":"ResourceNotFoundException"}, + {"shape":"InternalServerException"}, + {"shape":"ThrottlingException"}, + {"shape":"AccessDeniedException"} + ] + }, + "GetRegisterAccountStatus":{ + "name":"GetRegisterAccountStatus", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"GetRegisterAccountStatusRequest"}, + "output":{"shape":"GetRegisterAccountStatusResponse"}, + "errors":[ + {"shape":"ResourceNotFoundException"}, + {"shape":"InternalServerException"}, + {"shape":"ThrottlingException"}, + {"shape":"ValidationException"}, + {"shape":"AccessDeniedException"} + ] + }, + "GetSignalCatalog":{ + "name":"GetSignalCatalog", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"GetSignalCatalogRequest"}, + "output":{"shape":"GetSignalCatalogResponse"}, + "errors":[ + {"shape":"ResourceNotFoundException"}, + {"shape":"InternalServerException"}, + {"shape":"ThrottlingException"}, + {"shape":"ValidationException"}, + {"shape":"AccessDeniedException"} + ] + }, + "GetVehicle":{ + "name":"GetVehicle", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"GetVehicleRequest"}, + "output":{"shape":"GetVehicleResponse"}, + "errors":[ + {"shape":"InternalServerException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"ThrottlingException"}, + {"shape":"ValidationException"}, + {"shape":"AccessDeniedException"} + ] + }, + "GetVehicleStatus":{ + "name":"GetVehicleStatus", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"GetVehicleStatusRequest"}, + "output":{"shape":"GetVehicleStatusResponse"}, + "errors":[ + {"shape":"ResourceNotFoundException"}, + {"shape":"InternalServerException"}, + {"shape":"ThrottlingException"}, + {"shape":"ValidationException"}, + {"shape":"AccessDeniedException"} + ] + }, + "ImportDecoderManifest":{ + "name":"ImportDecoderManifest", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"ImportDecoderManifestRequest"}, + "output":{"shape":"ImportDecoderManifestResponse"}, + "errors":[ + {"shape":"ResourceNotFoundException"}, + {"shape":"InternalServerException"}, + {"shape":"ConflictException"}, + {"shape":"DecoderManifestValidationException"}, + {"shape":"ThrottlingException"}, + {"shape":"ValidationException"}, + {"shape":"InvalidSignalsException"}, + {"shape":"AccessDeniedException"} + ] + }, + "ImportSignalCatalog":{ + "name":"ImportSignalCatalog", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"ImportSignalCatalogRequest"}, + "output":{"shape":"ImportSignalCatalogResponse"}, + "errors":[ + {"shape":"ResourceNotFoundException"}, + {"shape":"InternalServerException"}, + {"shape":"ConflictException"}, + {"shape":"LimitExceededException"}, + {"shape":"ThrottlingException"}, + {"shape":"ValidationException"}, + {"shape":"InvalidSignalsException"}, + {"shape":"AccessDeniedException"} + ], + "idempotent":true + }, + "ListCampaigns":{ + "name":"ListCampaigns", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"ListCampaignsRequest"}, + "output":{"shape":"ListCampaignsResponse"}, + "errors":[ + {"shape":"InternalServerException"}, + {"shape":"ThrottlingException"}, + {"shape":"ValidationException"}, + {"shape":"AccessDeniedException"} + ] + }, + "ListDecoderManifestNetworkInterfaces":{ + "name":"ListDecoderManifestNetworkInterfaces", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"ListDecoderManifestNetworkInterfacesRequest"}, + "output":{"shape":"ListDecoderManifestNetworkInterfacesResponse"}, + "errors":[ + {"shape":"ResourceNotFoundException"}, + {"shape":"InternalServerException"}, + {"shape":"ThrottlingException"}, + {"shape":"ValidationException"}, + {"shape":"AccessDeniedException"} + ] + }, + "ListDecoderManifestSignals":{ + "name":"ListDecoderManifestSignals", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"ListDecoderManifestSignalsRequest"}, + "output":{"shape":"ListDecoderManifestSignalsResponse"}, + "errors":[ + {"shape":"ResourceNotFoundException"}, + {"shape":"InternalServerException"}, + {"shape":"ThrottlingException"}, + {"shape":"ValidationException"}, + {"shape":"AccessDeniedException"} + ] + }, + "ListDecoderManifests":{ + "name":"ListDecoderManifests", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"ListDecoderManifestsRequest"}, + "output":{"shape":"ListDecoderManifestsResponse"}, + "errors":[ + {"shape":"InternalServerException"}, + {"shape":"ThrottlingException"}, + {"shape":"ValidationException"}, + {"shape":"AccessDeniedException"} + ] + }, + "ListFleets":{ + "name":"ListFleets", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"ListFleetsRequest"}, + "output":{"shape":"ListFleetsResponse"}, + "errors":[ + {"shape":"InternalServerException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"ThrottlingException"}, + {"shape":"ValidationException"}, + {"shape":"AccessDeniedException"} + ] + }, + "ListFleetsForVehicle":{ + "name":"ListFleetsForVehicle", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"ListFleetsForVehicleRequest"}, + "output":{"shape":"ListFleetsForVehicleResponse"}, + "errors":[ + {"shape":"InternalServerException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"ThrottlingException"}, + {"shape":"ValidationException"}, + {"shape":"AccessDeniedException"} + ] + }, + "ListModelManifestNodes":{ + "name":"ListModelManifestNodes", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"ListModelManifestNodesRequest"}, + "output":{"shape":"ListModelManifestNodesResponse"}, + "errors":[ + {"shape":"InternalServerException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"LimitExceededException"}, + {"shape":"ThrottlingException"}, + {"shape":"ValidationException"}, + {"shape":"AccessDeniedException"} + ] + }, + "ListModelManifests":{ + "name":"ListModelManifests", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"ListModelManifestsRequest"}, + "output":{"shape":"ListModelManifestsResponse"}, + "errors":[ + {"shape":"InternalServerException"}, + {"shape":"ThrottlingException"}, + {"shape":"ValidationException"}, + {"shape":"AccessDeniedException"} + ] + }, + "ListSignalCatalogNodes":{ + "name":"ListSignalCatalogNodes", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"ListSignalCatalogNodesRequest"}, + "output":{"shape":"ListSignalCatalogNodesResponse"}, + "errors":[ + {"shape":"InternalServerException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"LimitExceededException"}, + {"shape":"ThrottlingException"}, + {"shape":"ValidationException"}, + {"shape":"AccessDeniedException"} + ] + }, + "ListSignalCatalogs":{ + "name":"ListSignalCatalogs", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"ListSignalCatalogsRequest"}, + "output":{"shape":"ListSignalCatalogsResponse"}, + "errors":[ + {"shape":"InternalServerException"}, + {"shape":"ThrottlingException"}, + {"shape":"ValidationException"}, + {"shape":"AccessDeniedException"} + ] + }, + "ListTagsForResource":{ + "name":"ListTagsForResource", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"ListTagsForResourceRequest"}, + "output":{"shape":"ListTagsForResourceResponse"}, + "errors":[ + {"shape":"ResourceNotFoundException"}, + {"shape":"InternalServerException"}, + {"shape":"ThrottlingException"}, + {"shape":"ValidationException"}, + {"shape":"AccessDeniedException"} + ] + }, + "ListVehicles":{ + "name":"ListVehicles", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"ListVehiclesRequest"}, + "output":{"shape":"ListVehiclesResponse"}, + "errors":[ + {"shape":"InternalServerException"}, + {"shape":"ThrottlingException"}, + {"shape":"ValidationException"}, + {"shape":"AccessDeniedException"} + ] + }, + "ListVehiclesInFleet":{ + "name":"ListVehiclesInFleet", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"ListVehiclesInFleetRequest"}, + "output":{"shape":"ListVehiclesInFleetResponse"}, + "errors":[ + {"shape":"InternalServerException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"ThrottlingException"}, + {"shape":"ValidationException"}, + {"shape":"AccessDeniedException"} + ] + }, + "PutLoggingOptions":{ + "name":"PutLoggingOptions", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"PutLoggingOptionsRequest"}, + "output":{"shape":"PutLoggingOptionsResponse"}, + "errors":[ + {"shape":"ResourceNotFoundException"}, + {"shape":"InternalServerException"}, + {"shape":"ConflictException"}, + {"shape":"ThrottlingException"}, + {"shape":"ValidationException"}, + {"shape":"AccessDeniedException"} + ], + "idempotent":true + }, + "RegisterAccount":{ + "name":"RegisterAccount", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"RegisterAccountRequest"}, + "output":{"shape":"RegisterAccountResponse"}, + "errors":[ + {"shape":"ResourceNotFoundException"}, + {"shape":"InternalServerException"}, + {"shape":"ConflictException"}, + {"shape":"ThrottlingException"}, + {"shape":"ValidationException"}, + {"shape":"AccessDeniedException"} + ] + }, + "TagResource":{ + "name":"TagResource", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"TagResourceRequest"}, + "output":{"shape":"TagResourceResponse"}, + "errors":[ + {"shape":"ResourceNotFoundException"}, + {"shape":"InternalServerException"}, + {"shape":"ThrottlingException"}, + {"shape":"ValidationException"}, + {"shape":"AccessDeniedException"} + ], + "idempotent":true + }, + "UntagResource":{ + "name":"UntagResource", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"UntagResourceRequest"}, + "output":{"shape":"UntagResourceResponse"}, + "errors":[ + {"shape":"ResourceNotFoundException"}, + {"shape":"InternalServerException"}, + {"shape":"ThrottlingException"}, + {"shape":"ValidationException"}, + {"shape":"AccessDeniedException"} + ], + "idempotent":true + }, + "UpdateCampaign":{ + "name":"UpdateCampaign", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"UpdateCampaignRequest"}, + "output":{"shape":"UpdateCampaignResponse"}, + "errors":[ + {"shape":"ResourceNotFoundException"}, + {"shape":"InternalServerException"}, + {"shape":"ConflictException"}, + {"shape":"ThrottlingException"}, + {"shape":"ValidationException"}, + {"shape":"AccessDeniedException"} + ] + }, + "UpdateDecoderManifest":{ + "name":"UpdateDecoderManifest", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"UpdateDecoderManifestRequest"}, + "output":{"shape":"UpdateDecoderManifestResponse"}, + "errors":[ + {"shape":"ResourceNotFoundException"}, + {"shape":"InternalServerException"}, + {"shape":"ConflictException"}, + {"shape":"LimitExceededException"}, + {"shape":"DecoderManifestValidationException"}, + {"shape":"ThrottlingException"}, + {"shape":"ValidationException"}, + {"shape":"AccessDeniedException"} + ], + "idempotent":true + }, + "UpdateFleet":{ + "name":"UpdateFleet", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"UpdateFleetRequest"}, + "output":{"shape":"UpdateFleetResponse"}, + "errors":[ + {"shape":"InternalServerException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"ConflictException"}, + {"shape":"ThrottlingException"}, + {"shape":"ValidationException"}, + {"shape":"AccessDeniedException"} + ] + }, + "UpdateModelManifest":{ + "name":"UpdateModelManifest", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"UpdateModelManifestRequest"}, + "output":{"shape":"UpdateModelManifestResponse"}, + "errors":[ + {"shape":"InternalServerException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"ConflictException"}, + {"shape":"ThrottlingException"}, + {"shape":"ValidationException"}, + {"shape":"InvalidSignalsException"}, + {"shape":"AccessDeniedException"} + ], + "idempotent":true + }, + "UpdateSignalCatalog":{ + "name":"UpdateSignalCatalog", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"UpdateSignalCatalogRequest"}, + "output":{"shape":"UpdateSignalCatalogResponse"}, + "errors":[ + {"shape":"ResourceNotFoundException"}, + {"shape":"InternalServerException"}, + {"shape":"ConflictException"}, + {"shape":"LimitExceededException"}, + {"shape":"InvalidNodeException"}, + {"shape":"ThrottlingException"}, + {"shape":"InvalidSignalsException"}, + {"shape":"AccessDeniedException"} + ], + "idempotent":true + }, + "UpdateVehicle":{ + "name":"UpdateVehicle", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"UpdateVehicleRequest"}, + "output":{"shape":"UpdateVehicleResponse"}, + "errors":[ + {"shape":"InternalServerException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"ConflictException"}, + {"shape":"ThrottlingException"}, + {"shape":"ValidationException"}, + {"shape":"AccessDeniedException"} + ] + } + }, + "shapes":{ + "AccessDeniedException":{ + "type":"structure", + "required":["message"], + "members":{ + "message":{"shape":"string"} + }, + "exception":true + }, + "Actuator":{ + "type":"structure", + "required":[ + "fullyQualifiedName", + "dataType" + ], + "members":{ + "fullyQualifiedName":{"shape":"string"}, + "dataType":{"shape":"NodeDataType"}, + "description":{"shape":"description"}, + "unit":{"shape":"string"}, + "allowedValues":{"shape":"listOfStrings"}, + "min":{"shape":"double"}, + "max":{"shape":"double"}, + "assignedValue":{"shape":"string"} + } + }, + "AmazonResourceName":{ + "type":"string", + "max":1011, + "min":1 + }, + "AssociateVehicleFleetRequest":{ + "type":"structure", + "required":[ + "vehicleName", + "fleetId" + ], + "members":{ + "vehicleName":{"shape":"vehicleName"}, + "fleetId":{"shape":"fleetId"} + } + }, + "AssociateVehicleFleetResponse":{ + "type":"structure", + "members":{ + } + }, + "Attribute":{ + "type":"structure", + "required":[ + "fullyQualifiedName", + "dataType" + ], + "members":{ + "fullyQualifiedName":{"shape":"string"}, + "dataType":{"shape":"NodeDataType"}, + "description":{"shape":"description"}, + "unit":{"shape":"string"}, + "allowedValues":{"shape":"listOfStrings"}, + "min":{"shape":"double"}, + "max":{"shape":"double"}, + "assignedValue":{"shape":"string"}, + "defaultValue":{"shape":"string"} + } + }, + "BatchCreateVehicleRequest":{ + "type":"structure", + "required":["vehicles"], + "members":{ + "vehicles":{"shape":"createVehicleRequestItems"} + } + }, + "BatchCreateVehicleResponse":{ + "type":"structure", + "members":{ + "vehicles":{"shape":"createVehicleResponses"}, + "errors":{"shape":"createVehicleErrors"} + } + }, + "BatchUpdateVehicleRequest":{ + "type":"structure", + "required":["vehicles"], + "members":{ + "vehicles":{"shape":"updateVehicleRequestItems"} + } + }, + "BatchUpdateVehicleResponse":{ + "type":"structure", + "members":{ + "vehicles":{"shape":"updateVehicleResponseItems"}, + "errors":{"shape":"updateVehicleErrors"} + } + }, + "Branch":{ + "type":"structure", + "required":["fullyQualifiedName"], + "members":{ + "fullyQualifiedName":{"shape":"string"}, + "description":{"shape":"description"} + } + }, + "CampaignStatus":{ + "type":"string", + "enum":[ + "CREATING", + "WAITING_FOR_APPROVAL", + "RUNNING", + "SUSPENDED" + ] + }, + "CampaignSummary":{ + "type":"structure", + "required":[ + "creationTime", + "lastModificationTime" + ], + "members":{ + "arn":{"shape":"arn"}, + "name":{"shape":"campaignName"}, + "description":{"shape":"description"}, + "signalCatalogArn":{"shape":"arn"}, + "targetArn":{"shape":"arn"}, + "status":{"shape":"CampaignStatus"}, + "creationTime":{"shape":"timestamp"}, + "lastModificationTime":{"shape":"timestamp"} + } + }, + "CanDbcDefinition":{ + "type":"structure", + "required":[ + "networkInterface", + "canDbcFiles" + ], + "members":{ + "networkInterface":{"shape":"InterfaceId"}, + "canDbcFiles":{"shape":"NetworkFilesList"}, + "signalsMap":{"shape":"ModelSignalsMap"} + } + }, + "CanInterface":{ + "type":"structure", + "required":["name"], + "members":{ + "name":{"shape":"CanInterfaceName"}, + "protocolName":{"shape":"ProtocolName"}, + "protocolVersion":{"shape":"ProtocolVersion"} + } + }, + "CanInterfaceName":{ + "type":"string", + "max":100, + "min":1 + }, + "CanSignal":{ + "type":"structure", + "required":[ + "messageId", + "isBigEndian", + "isSigned", + "startBit", + "offset", + "factor", + "length" + ], + "members":{ + "messageId":{"shape":"nonNegativeInteger"}, + "isBigEndian":{"shape":"boolean"}, + "isSigned":{"shape":"boolean"}, + "startBit":{"shape":"nonNegativeInteger"}, + "offset":{"shape":"double"}, + "factor":{"shape":"double"}, + "length":{"shape":"nonNegativeInteger"}, + "name":{"shape":"CanSignalName"} + } + }, + "CanSignalName":{ + "type":"string", + "max":100, + "min":1 + }, + "CloudWatchLogDeliveryOptions":{ + "type":"structure", + "required":["logType"], + "members":{ + "logType":{"shape":"LogType"}, + "logGroupName":{"shape":"CloudWatchLogGroupName"} + } + }, + "CloudWatchLogGroupName":{ + "type":"string", + "max":512, + "min":1, + "pattern":"[\\.\\-_\\/#A-Za-z0-9]+" + }, + "CollectionScheme":{ + "type":"structure", + "members":{ + "timeBasedCollectionScheme":{"shape":"TimeBasedCollectionScheme"}, + "conditionBasedCollectionScheme":{"shape":"ConditionBasedCollectionScheme"} + }, + "union":true + }, + "Compression":{ + "type":"string", + "enum":[ + "OFF", + "SNAPPY" + ] + }, + "ConditionBasedCollectionScheme":{ + "type":"structure", + "required":["expression"], + "members":{ + "expression":{"shape":"eventExpression"}, + "minimumTriggerIntervalMs":{"shape":"uint32"}, + "triggerMode":{"shape":"TriggerMode"}, + "conditionLanguageVersion":{"shape":"languageVersion"} + } + }, + "ConflictException":{ + "type":"structure", + "required":[ + "message", + "resource", + "resourceType" + ], + "members":{ + "message":{"shape":"string"}, + "resource":{"shape":"string"}, + "resourceType":{"shape":"string"} + }, + "exception":true + }, + "CreateCampaignRequest":{ + "type":"structure", + "required":[ + "name", + "signalCatalogArn", + "targetArn", + "collectionScheme" + ], + "members":{ + "name":{"shape":"campaignName"}, + "description":{"shape":"description"}, + "signalCatalogArn":{"shape":"arn"}, + "targetArn":{"shape":"arn"}, + "startTime":{"shape":"timestamp"}, + "expiryTime":{"shape":"timestamp"}, + "postTriggerCollectionDuration":{"shape":"uint32"}, + "diagnosticsMode":{"shape":"DiagnosticsMode"}, + "spoolingMode":{"shape":"SpoolingMode"}, + "compression":{"shape":"Compression"}, + "priority":{"shape":"priority"}, + "signalsToCollect":{"shape":"SignalInformationList"}, + "collectionScheme":{"shape":"CollectionScheme"}, + "dataExtraDimensions":{"shape":"DataExtraDimensionNodePathList"}, + "tags":{"shape":"TagList"} + } + }, + "CreateCampaignResponse":{ + "type":"structure", + "members":{ + "name":{"shape":"campaignName"}, + "arn":{"shape":"arn"} + } + }, + "CreateDecoderManifestRequest":{ + "type":"structure", + "required":[ + "name", + "modelManifestArn" + ], + "members":{ + "name":{"shape":"resourceName"}, + "description":{"shape":"description"}, + "modelManifestArn":{"shape":"arn"}, + "signalDecoders":{"shape":"SignalDecoders"}, + "networkInterfaces":{"shape":"NetworkInterfaces"}, + "tags":{"shape":"TagList"} + } + }, + "CreateDecoderManifestResponse":{ + "type":"structure", + "required":[ + "name", + "arn" + ], + "members":{ + "name":{"shape":"resourceName"}, + "arn":{"shape":"arn"} + } + }, + "CreateFleetRequest":{ + "type":"structure", + "required":[ + "fleetId", + "signalCatalogArn" + ], + "members":{ + "fleetId":{"shape":"fleetId"}, + "description":{"shape":"description"}, + "signalCatalogArn":{"shape":"arn"}, + "tags":{"shape":"TagList"} + } + }, + "CreateFleetResponse":{ + "type":"structure", + "required":[ + "id", + "arn" + ], + "members":{ + "id":{"shape":"fleetId"}, + "arn":{"shape":"arn"} + } + }, + "CreateModelManifestRequest":{ + "type":"structure", + "required":[ + "name", + "nodes", + "signalCatalogArn" + ], + "members":{ + "name":{"shape":"resourceName"}, + "description":{"shape":"description"}, + "nodes":{"shape":"listOfStrings"}, + "signalCatalogArn":{"shape":"arn"}, + "tags":{"shape":"TagList"} + } + }, + "CreateModelManifestResponse":{ + "type":"structure", + "required":[ + "name", + "arn" + ], + "members":{ + "name":{"shape":"resourceName"}, + "arn":{"shape":"arn"} + } + }, + "CreateSignalCatalogRequest":{ + "type":"structure", + "required":["name"], + "members":{ + "name":{"shape":"resourceName"}, + "description":{"shape":"description"}, + "nodes":{"shape":"Nodes"}, + "tags":{"shape":"TagList"} + } + }, + "CreateSignalCatalogResponse":{ + "type":"structure", + "required":[ + "name", + "arn" + ], + "members":{ + "name":{"shape":"resourceName"}, + "arn":{"shape":"arn"} + } + }, + "CreateVehicleError":{ + "type":"structure", + "members":{ + "vehicleName":{"shape":"vehicleName"}, + "code":{"shape":"string"}, + "message":{"shape":"string"} + } + }, + "CreateVehicleRequest":{ + "type":"structure", + "required":[ + "vehicleName", + "modelManifestArn", + "decoderManifestArn" + ], + "members":{ + "vehicleName":{"shape":"vehicleName"}, + "modelManifestArn":{"shape":"arn"}, + "decoderManifestArn":{"shape":"arn"}, + "attributes":{"shape":"attributesMap"}, + "associationBehavior":{"shape":"VehicleAssociationBehavior"}, + "tags":{"shape":"TagList"} + } + }, + "CreateVehicleRequestItem":{ + "type":"structure", + "required":[ + "vehicleName", + "modelManifestArn", + "decoderManifestArn" + ], + "members":{ + "vehicleName":{"shape":"vehicleName"}, + "modelManifestArn":{"shape":"arn"}, + "decoderManifestArn":{"shape":"arn"}, + "attributes":{"shape":"attributesMap"}, + "associationBehavior":{"shape":"VehicleAssociationBehavior"}, + "tags":{"shape":"TagList"} + } + }, + "CreateVehicleResponse":{ + "type":"structure", + "members":{ + "vehicleName":{"shape":"vehicleName"}, + "arn":{"shape":"arn"}, + "thingArn":{"shape":"arn"} + } + }, + "CreateVehicleResponseItem":{ + "type":"structure", + "members":{ + "vehicleName":{"shape":"vehicleName"}, + "arn":{"shape":"arn"}, + "thingArn":{"shape":"arn"} + } + }, + "DataExtraDimensionNodePathList":{ + "type":"list", + "member":{"shape":"NodePath"}, + "max":5, + "min":0 + }, + "DecoderManifestSummary":{ + "type":"structure", + "required":[ + "creationTime", + "lastModificationTime" + ], + "members":{ + "name":{"shape":"string"}, + "arn":{"shape":"arn"}, + "modelManifestArn":{"shape":"arn"}, + "description":{"shape":"description"}, + "status":{"shape":"ManifestStatus"}, + "creationTime":{"shape":"timestamp"}, + "lastModificationTime":{"shape":"timestamp"} + } + }, + "DecoderManifestValidationException":{ + "type":"structure", + "members":{ + "invalidSignals":{"shape":"InvalidSignalDecoders"}, + "invalidNetworkInterfaces":{"shape":"InvalidNetworkInterfaces"} + }, + "exception":true + }, + "DeleteCampaignRequest":{ + "type":"structure", + "required":["name"], + "members":{ + "name":{"shape":"campaignName"} + } + }, + "DeleteCampaignResponse":{ + "type":"structure", + "members":{ + "name":{"shape":"campaignName"}, + "arn":{"shape":"arn"} + } + }, + "DeleteDecoderManifestRequest":{ + "type":"structure", + "required":["name"], + "members":{ + "name":{"shape":"resourceName"} + } + }, + "DeleteDecoderManifestResponse":{ + "type":"structure", + "required":[ + "name", + "arn" + ], + "members":{ + "name":{"shape":"resourceName"}, + "arn":{"shape":"arn"} + } + }, + "DeleteFleetRequest":{ + "type":"structure", + "required":["fleetId"], + "members":{ + "fleetId":{"shape":"fleetId"} + } + }, + "DeleteFleetResponse":{ + "type":"structure", + "members":{ + "id":{"shape":"fleetId"}, + "arn":{"shape":"arn"} + } + }, + "DeleteModelManifestRequest":{ + "type":"structure", + "required":["name"], + "members":{ + "name":{"shape":"resourceName"} + } + }, + "DeleteModelManifestResponse":{ + "type":"structure", + "required":[ + "name", + "arn" + ], + "members":{ + "name":{"shape":"resourceName"}, + "arn":{"shape":"arn"} + } + }, + "DeleteSignalCatalogRequest":{ + "type":"structure", + "required":["name"], + "members":{ + "name":{"shape":"resourceName"} + } + }, + "DeleteSignalCatalogResponse":{ + "type":"structure", + "required":[ + "name", + "arn" + ], + "members":{ + "name":{"shape":"resourceName"}, + "arn":{"shape":"arn"} + } + }, + "DeleteVehicleRequest":{ + "type":"structure", + "required":["vehicleName"], + "members":{ + "vehicleName":{"shape":"vehicleName"} + } + }, + "DeleteVehicleResponse":{ + "type":"structure", + "required":[ + "vehicleName", + "arn" + ], + "members":{ + "vehicleName":{"shape":"vehicleName"}, + "arn":{"shape":"arn"} + } + }, + "DiagnosticsMode":{ + "type":"string", + "enum":[ + "OFF", + "SEND_ACTIVE_DTCS" + ] + }, + "DisassociateVehicleFleetRequest":{ + "type":"structure", + "required":[ + "vehicleName", + "fleetId" + ], + "members":{ + "vehicleName":{"shape":"vehicleName"}, + "fleetId":{"shape":"fleetId"} + } + }, + "DisassociateVehicleFleetResponse":{ + "type":"structure", + "members":{ + } + }, + "FleetSummary":{ + "type":"structure", + "required":[ + "id", + "arn", + "signalCatalogArn", + "creationTime" + ], + "members":{ + "id":{"shape":"fleetId"}, + "arn":{"shape":"arn"}, + "description":{"shape":"description"}, + "signalCatalogArn":{"shape":"arn"}, + "creationTime":{"shape":"timestamp"}, + "lastModificationTime":{"shape":"timestamp"} + } + }, + "FormattedVss":{ + "type":"structure", + "members":{ + "vssJson":{"shape":"String"} + }, + "union":true + }, + "Fqns":{ + "type":"list", + "member":{"shape":"FullyQualifiedName"}, + "max":500, + "min":1 + }, + "FullyQualifiedName":{ + "type":"string", + "max":150, + "min":1 + }, + "GetCampaignRequest":{ + "type":"structure", + "required":["name"], + "members":{ + "name":{"shape":"campaignName"} + } + }, + "GetCampaignResponse":{ + "type":"structure", + "members":{ + "name":{"shape":"campaignName"}, + "arn":{"shape":"arn"}, + "description":{"shape":"description"}, + "signalCatalogArn":{"shape":"arn"}, + "targetArn":{"shape":"arn"}, + "status":{"shape":"CampaignStatus"}, + "startTime":{"shape":"timestamp"}, + "expiryTime":{"shape":"timestamp"}, + "postTriggerCollectionDuration":{"shape":"uint32"}, + "diagnosticsMode":{"shape":"DiagnosticsMode"}, + "spoolingMode":{"shape":"SpoolingMode"}, + "compression":{"shape":"Compression"}, + "priority":{"shape":"priority"}, + "signalsToCollect":{"shape":"SignalInformationList"}, + "collectionScheme":{"shape":"CollectionScheme"}, + "dataExtraDimensions":{"shape":"DataExtraDimensionNodePathList"}, + "creationTime":{"shape":"timestamp"}, + "lastModificationTime":{"shape":"timestamp"} + } + }, + "GetDecoderManifestRequest":{ + "type":"structure", + "required":["name"], + "members":{ + "name":{"shape":"resourceName"} + } + }, + "GetDecoderManifestResponse":{ + "type":"structure", + "required":[ + "name", + "arn", + "creationTime", + "lastModificationTime" + ], + "members":{ + "name":{"shape":"string"}, + "arn":{"shape":"arn"}, + "description":{"shape":"description"}, + "modelManifestArn":{"shape":"arn"}, + "status":{"shape":"ManifestStatus"}, + "creationTime":{"shape":"timestamp"}, + "lastModificationTime":{"shape":"timestamp"} + } + }, + "GetFleetRequest":{ + "type":"structure", + "required":["fleetId"], + "members":{ + "fleetId":{"shape":"fleetId"} + } + }, + "GetFleetResponse":{ + "type":"structure", + "required":[ + "id", + "arn", + "signalCatalogArn", + "creationTime", + "lastModificationTime" + ], + "members":{ + "id":{"shape":"fleetId"}, + "arn":{"shape":"arn"}, + "description":{"shape":"description"}, + "signalCatalogArn":{"shape":"arn"}, + "creationTime":{"shape":"timestamp"}, + "lastModificationTime":{"shape":"timestamp"} + } + }, + "GetLoggingOptionsRequest":{ + "type":"structure", + "members":{ + } + }, + "GetLoggingOptionsResponse":{ + "type":"structure", + "required":["cloudWatchLogDelivery"], + "members":{ + "cloudWatchLogDelivery":{"shape":"CloudWatchLogDeliveryOptions"} + } + }, + "GetModelManifestRequest":{ + "type":"structure", + "required":["name"], + "members":{ + "name":{"shape":"resourceName"} + } + }, + "GetModelManifestResponse":{ + "type":"structure", + "required":[ + "name", + "arn", + "creationTime", + "lastModificationTime" + ], + "members":{ + "name":{"shape":"resourceName"}, + "arn":{"shape":"arn"}, + "description":{"shape":"description"}, + "signalCatalogArn":{"shape":"arn"}, + "status":{"shape":"ManifestStatus"}, + "creationTime":{"shape":"timestamp"}, + "lastModificationTime":{"shape":"timestamp"} + } + }, + "GetRegisterAccountStatusRequest":{ + "type":"structure", + "members":{ + } + }, + "GetRegisterAccountStatusResponse":{ + "type":"structure", + "required":[ + "customerAccountId", + "accountStatus", + "timestreamRegistrationResponse", + "iamRegistrationResponse", + "creationTime", + "lastModificationTime" + ], + "members":{ + "customerAccountId":{"shape":"customerAccountId"}, + "accountStatus":{"shape":"RegistrationStatus"}, + "timestreamRegistrationResponse":{"shape":"TimestreamRegistrationResponse"}, + "iamRegistrationResponse":{"shape":"IamRegistrationResponse"}, + "creationTime":{"shape":"timestamp"}, + "lastModificationTime":{"shape":"timestamp"} + } + }, + "GetSignalCatalogRequest":{ + "type":"structure", + "required":["name"], + "members":{ + "name":{"shape":"resourceName"} + } + }, + "GetSignalCatalogResponse":{ + "type":"structure", + "required":[ + "name", + "arn", + "creationTime", + "lastModificationTime" + ], + "members":{ + "name":{"shape":"resourceName"}, + "arn":{"shape":"arn"}, + "description":{"shape":"description"}, + "nodeCounts":{"shape":"NodeCounts"}, + "creationTime":{"shape":"timestamp"}, + "lastModificationTime":{"shape":"timestamp"} + } + }, + "GetVehicleRequest":{ + "type":"structure", + "required":["vehicleName"], + "members":{ + "vehicleName":{"shape":"vehicleName"} + } + }, + "GetVehicleResponse":{ + "type":"structure", + "members":{ + "vehicleName":{"shape":"vehicleName"}, + "arn":{"shape":"arn"}, + "modelManifestArn":{"shape":"arn"}, + "decoderManifestArn":{"shape":"arn"}, + "attributes":{"shape":"attributesMap"}, + "creationTime":{"shape":"timestamp"}, + "lastModificationTime":{"shape":"timestamp"} + } + }, + "GetVehicleStatusRequest":{ + "type":"structure", + "required":["vehicleName"], + "members":{ + "nextToken":{"shape":"nextToken"}, + "maxResults":{"shape":"maxResults"}, + "vehicleName":{"shape":"vehicleName"} + } + }, + "GetVehicleStatusResponse":{ + "type":"structure", + "members":{ + "campaigns":{"shape":"VehicleStatusList"}, + "nextToken":{"shape":"nextToken"} + } + }, + "IAMRoleArn":{ + "type":"string", + "max":2048, + "min":20, + "pattern":"arn:(aws[a-zA-Z0-9-]*):iam::(\\d{12})?:(role((\\u002F)|(\\u002F[\\u0021-\\u007F]+\\u002F))[\\w+=,.@-]+)" + }, + "IamRegistrationResponse":{ + "type":"structure", + "required":[ + "roleArn", + "registrationStatus" + ], + "members":{ + "roleArn":{"shape":"arn"}, + "registrationStatus":{"shape":"RegistrationStatus"}, + "errorMessage":{"shape":"errorMessage"} + } + }, + "IamResources":{ + "type":"structure", + "required":["roleArn"], + "members":{ + "roleArn":{"shape":"IAMRoleArn"} + } + }, + "ImportDecoderManifestRequest":{ + "type":"structure", + "required":[ + "name", + "networkFileDefinitions" + ], + "members":{ + "name":{"shape":"resourceName"}, + "networkFileDefinitions":{"shape":"NetworkFileDefinitions"} + } + }, + "ImportDecoderManifestResponse":{ + "type":"structure", + "required":[ + "name", + "arn" + ], + "members":{ + "name":{"shape":"resourceName"}, + "arn":{"shape":"arn"} + } + }, + "ImportSignalCatalogRequest":{ + "type":"structure", + "required":["name"], + "members":{ + "name":{"shape":"resourceName"}, + "description":{"shape":"description"}, + "vss":{"shape":"FormattedVss"}, + "tags":{"shape":"TagList"} + } + }, + "ImportSignalCatalogResponse":{ + "type":"structure", + "required":[ + "name", + "arn" + ], + "members":{ + "name":{"shape":"resourceName"}, + "arn":{"shape":"arn"} + } + }, + "InterfaceId":{ + "type":"string", + "max":50, + "min":1 + }, + "InterfaceIds":{ + "type":"list", + "member":{"shape":"InterfaceId"}, + "max":500, + "min":1 + }, + "InternalServerException":{ + "type":"structure", + "required":["message"], + "members":{ + "message":{"shape":"string"}, + "retryAfterSeconds":{"shape":"RetryAfterSeconds"} + }, + "exception":true, + "fault":true + }, + "InvalidNetworkInterface":{ + "type":"structure", + "members":{ + "interfaceId":{"shape":"InterfaceId"}, + "reason":{"shape":"NetworkInterfaceFailureReason"} + } + }, + "InvalidNetworkInterfaces":{ + "type":"list", + "member":{"shape":"InvalidNetworkInterface"} + }, + "InvalidNodeException":{ + "type":"structure", + "members":{ + "invalidNodes":{"shape":"Nodes"}, + "reason":{"shape":"string"} + }, + "exception":true + }, + "InvalidSignal":{ + "type":"structure", + "members":{ + "name":{"shape":"FullyQualifiedName"}, + "reason":{"shape":"string"} + } + }, + "InvalidSignalDecoder":{ + "type":"structure", + "members":{ + "name":{"shape":"FullyQualifiedName"}, + "reason":{"shape":"SignalDecoderFailureReason"} + } + }, + "InvalidSignalDecoders":{ + "type":"list", + "member":{"shape":"InvalidSignalDecoder"} + }, + "InvalidSignals":{ + "type":"list", + "member":{"shape":"InvalidSignal"} + }, + "InvalidSignalsException":{ + "type":"structure", + "members":{ + "message":{"shape":"string"}, + "invalidSignals":{"shape":"InvalidSignals"} + }, + "exception":true + }, + "LimitExceededException":{ + "type":"structure", + "required":[ + "message", + "resourceId", + "resourceType" + ], + "members":{ + "message":{"shape":"string"}, + "resourceId":{"shape":"string"}, + "resourceType":{"shape":"string"} + }, + "exception":true + }, + "ListCampaignsRequest":{ + "type":"structure", + "members":{ + "nextToken":{"shape":"nextToken"}, + "maxResults":{"shape":"maxResults"}, + "status":{"shape":"status"} + } + }, + "ListCampaignsResponse":{ + "type":"structure", + "members":{ + "campaignSummaries":{"shape":"campaignSummaries"}, + "nextToken":{"shape":"nextToken"} + } + }, + "ListDecoderManifestNetworkInterfacesRequest":{ + "type":"structure", + "required":["name"], + "members":{ + "name":{"shape":"resourceName"}, + "nextToken":{"shape":"nextToken"}, + "maxResults":{"shape":"maxResults"} + } + }, + "ListDecoderManifestNetworkInterfacesResponse":{ + "type":"structure", + "members":{ + "networkInterfaces":{"shape":"NetworkInterfaces"}, + "nextToken":{"shape":"nextToken"} + } + }, + "ListDecoderManifestSignalsRequest":{ + "type":"structure", + "required":["name"], + "members":{ + "name":{"shape":"resourceName"}, + "nextToken":{"shape":"nextToken"}, + "maxResults":{"shape":"maxResults"} + } + }, + "ListDecoderManifestSignalsResponse":{ + "type":"structure", + "members":{ + "signalDecoders":{"shape":"SignalDecoders"}, + "nextToken":{"shape":"nextToken"} + } + }, + "ListDecoderManifestsRequest":{ + "type":"structure", + "members":{ + "modelManifestArn":{"shape":"arn"}, + "nextToken":{"shape":"nextToken"}, + "maxResults":{"shape":"maxResults"} + } + }, + "ListDecoderManifestsResponse":{ + "type":"structure", + "members":{ + "summaries":{"shape":"decoderManifestSummaries"}, + "nextToken":{"shape":"nextToken"} + } + }, + "ListFleetsForVehicleRequest":{ + "type":"structure", + "required":["vehicleName"], + "members":{ + "vehicleName":{"shape":"vehicleName"}, + "nextToken":{"shape":"nextToken"}, + "maxResults":{"shape":"maxResults"} + } + }, + "ListFleetsForVehicleResponse":{ + "type":"structure", + "members":{ + "fleets":{"shape":"fleets"}, + "nextToken":{"shape":"nextToken"} + } + }, + "ListFleetsRequest":{ + "type":"structure", + "members":{ + "nextToken":{"shape":"nextToken"}, + "maxResults":{"shape":"maxResults"} + } + }, + "ListFleetsResponse":{ + "type":"structure", + "members":{ + "fleetSummaries":{"shape":"fleetSummaries"}, + "nextToken":{"shape":"nextToken"} + } + }, + "ListModelManifestNodesRequest":{ + "type":"structure", + "required":["name"], + "members":{ + "name":{"shape":"resourceName"}, + "nextToken":{"shape":"nextToken"}, + "maxResults":{"shape":"maxResults"} + } + }, + "ListModelManifestNodesResponse":{ + "type":"structure", + "members":{ + "nodes":{"shape":"Nodes"}, + "nextToken":{"shape":"nextToken"} + } + }, + "ListModelManifestsRequest":{ + "type":"structure", + "members":{ + "signalCatalogArn":{"shape":"arn"}, + "nextToken":{"shape":"nextToken"}, + "maxResults":{"shape":"maxResults"} + } + }, + "ListModelManifestsResponse":{ + "type":"structure", + "members":{ + "summaries":{"shape":"modelManifestSummaries"}, + "nextToken":{"shape":"nextToken"} + } + }, + "ListSignalCatalogNodesRequest":{ + "type":"structure", + "required":["name"], + "members":{ + "name":{"shape":"resourceName"}, + "nextToken":{"shape":"nextToken"}, + "maxResults":{"shape":"maxResults"} + } + }, + "ListSignalCatalogNodesResponse":{ + "type":"structure", + "members":{ + "nodes":{"shape":"Nodes"}, + "nextToken":{"shape":"nextToken"} + } + }, + "ListSignalCatalogsRequest":{ + "type":"structure", + "members":{ + "nextToken":{"shape":"nextToken"}, + "maxResults":{"shape":"maxResults"} + } + }, + "ListSignalCatalogsResponse":{ + "type":"structure", + "members":{ + "summaries":{"shape":"signalCatalogSummaries"}, + "nextToken":{"shape":"nextToken"} + } + }, + "ListTagsForResourceRequest":{ + "type":"structure", + "required":["ResourceARN"], + "members":{ + "ResourceARN":{"shape":"AmazonResourceName"} + } + }, + "ListTagsForResourceResponse":{ + "type":"structure", + "members":{ + "Tags":{"shape":"TagList"} + } + }, + "ListVehiclesInFleetRequest":{ + "type":"structure", + "required":["fleetId"], + "members":{ + "fleetId":{"shape":"fleetId"}, + "nextToken":{"shape":"nextToken"}, + "maxResults":{"shape":"maxResults"} + } + }, + "ListVehiclesInFleetResponse":{ + "type":"structure", + "members":{ + "vehicles":{"shape":"vehicles"}, + "nextToken":{"shape":"nextToken"} + } + }, + "ListVehiclesRequest":{ + "type":"structure", + "members":{ + "modelManifestArn":{"shape":"arn"}, + "nextToken":{"shape":"nextToken"}, + "maxResults":{"shape":"listVehiclesMaxResults"} + } + }, + "ListVehiclesResponse":{ + "type":"structure", + "members":{ + "vehicleSummaries":{"shape":"vehicleSummaries"}, + "nextToken":{"shape":"nextToken"} + } + }, + "LogType":{ + "type":"string", + "enum":[ + "OFF", + "ERROR" + ] + }, + "ManifestStatus":{ + "type":"string", + "enum":[ + "ACTIVE", + "DRAFT" + ] + }, + "ModelManifestSummary":{ + "type":"structure", + "required":[ + "creationTime", + "lastModificationTime" + ], + "members":{ + "name":{"shape":"string"}, + "arn":{"shape":"arn"}, + "signalCatalogArn":{"shape":"arn"}, + "description":{"shape":"description"}, + "status":{"shape":"ManifestStatus"}, + "creationTime":{"shape":"timestamp"}, + "lastModificationTime":{"shape":"timestamp"} + } + }, + "ModelSignalsMap":{ + "type":"map", + "key":{"shape":"string"}, + "value":{"shape":"string"} + }, + "NetworkFileBlob":{"type":"blob"}, + "NetworkFileDefinition":{ + "type":"structure", + "members":{ + "canDbc":{"shape":"CanDbcDefinition"} + }, + "union":true + }, + "NetworkFileDefinitions":{ + "type":"list", + "member":{"shape":"NetworkFileDefinition"} + }, + "NetworkFilesList":{ + "type":"list", + "member":{"shape":"NetworkFileBlob"}, + "max":5, + "min":1 + }, + "NetworkInterface":{ + "type":"structure", + "required":[ + "interfaceId", + "type" + ], + "members":{ + "interfaceId":{"shape":"InterfaceId"}, + "type":{"shape":"NetworkInterfaceType"}, + "canInterface":{"shape":"CanInterface"}, + "obdInterface":{"shape":"ObdInterface"} + } + }, + "NetworkInterfaceFailureReason":{ + "type":"string", + "enum":[ + "DUPLICATE_NETWORK_INTERFACE", + "CONFLICTING_NETWORK_INTERFACE", + "NETWORK_INTERFACE_TO_ADD_ALREADY_EXISTS", + "CAN_NETWORK_INTERFACE_INFO_IS_NULL", + "OBD_NETWORK_INTERFACE_INFO_IS_NULL", + "NETWORK_INTERFACE_TO_REMOVE_ASSOCIATED_WITH_SIGNALS" + ] + }, + "NetworkInterfaceType":{ + "type":"string", + "enum":[ + "CAN_INTERFACE", + "OBD_INTERFACE" + ] + }, + "NetworkInterfaces":{ + "type":"list", + "member":{"shape":"NetworkInterface"}, + "max":500, + "min":1 + }, + "Node":{ + "type":"structure", + "members":{ + "branch":{"shape":"Branch"}, + "sensor":{"shape":"Sensor"}, + "actuator":{"shape":"Actuator"}, + "attribute":{"shape":"Attribute"} + }, + "union":true + }, + "NodeCounts":{ + "type":"structure", + "members":{ + "totalNodes":{"shape":"number"}, + "totalBranches":{"shape":"number"}, + "totalSensors":{"shape":"number"}, + "totalAttributes":{"shape":"number"}, + "totalActuators":{"shape":"number"} + } + }, + "NodeDataType":{ + "type":"string", + "enum":[ + "INT8", + "UINT8", + "INT16", + "UINT16", + "INT32", + "UINT32", + "INT64", + "UINT64", + "BOOLEAN", + "FLOAT", + "DOUBLE", + "STRING", + "UNIX_TIMESTAMP", + "INT8_ARRAY", + "UINT8_ARRAY", + "INT16_ARRAY", + "UINT16_ARRAY", + "INT32_ARRAY", + "UINT32_ARRAY", + "INT64_ARRAY", + "UINT64_ARRAY", + "BOOLEAN_ARRAY", + "FLOAT_ARRAY", + "DOUBLE_ARRAY", + "STRING_ARRAY", + "UNIX_TIMESTAMP_ARRAY", + "UNKNOWN" + ] + }, + "NodePath":{ + "type":"string", + "max":150, + "min":1, + "pattern":"[a-zA-Z0-9_.]+" + }, + "NodePaths":{ + "type":"list", + "member":{"shape":"NodePath"}, + "max":500, + "min":1 + }, + "Nodes":{ + "type":"list", + "member":{"shape":"Node"}, + "max":500, + "min":0 + }, + "ObdBitmaskLength":{ + "type":"integer", + "box":true, + "max":8, + "min":1 + }, + "ObdByteLength":{ + "type":"integer", + "box":true, + "max":8, + "min":1 + }, + "ObdInterface":{ + "type":"structure", + "required":[ + "name", + "requestMessageId" + ], + "members":{ + "name":{"shape":"ObdInterfaceName"}, + "requestMessageId":{"shape":"nonNegativeInteger"}, + "obdStandard":{"shape":"ObdStandard"}, + "pidRequestIntervalSeconds":{"shape":"nonNegativeInteger"}, + "dtcRequestIntervalSeconds":{"shape":"nonNegativeInteger"}, + "useExtendedIds":{"shape":"boolean"}, + "hasTransmissionEcu":{"shape":"boolean"} + } + }, + "ObdInterfaceName":{ + "type":"string", + "max":100, + "min":1 + }, + "ObdSignal":{ + "type":"structure", + "required":[ + "pidResponseLength", + "serviceMode", + "pid", + "scaling", + "offset", + "startByte", + "byteLength" + ], + "members":{ + "pidResponseLength":{"shape":"positiveInteger"}, + "serviceMode":{"shape":"nonNegativeInteger"}, + "pid":{"shape":"nonNegativeInteger"}, + "scaling":{"shape":"double"}, + "offset":{"shape":"double"}, + "startByte":{"shape":"nonNegativeInteger"}, + "byteLength":{"shape":"ObdByteLength"}, + "bitRightShift":{"shape":"nonNegativeInteger"}, + "bitMaskLength":{"shape":"ObdBitmaskLength"} + } + }, + "ObdStandard":{ + "type":"string", + "max":50, + "min":1 + }, + "ProtocolName":{ + "type":"string", + "max":50, + "min":1 + }, + "ProtocolVersion":{ + "type":"string", + "max":50, + "min":1 + }, + "PutLoggingOptionsRequest":{ + "type":"structure", + "required":["cloudWatchLogDelivery"], + "members":{ + "cloudWatchLogDelivery":{"shape":"CloudWatchLogDeliveryOptions"} + } + }, + "PutLoggingOptionsResponse":{ + "type":"structure", + "members":{ + } + }, + "RegisterAccountRequest":{ + "type":"structure", + "required":["timestreamResources"], + "members":{ + "timestreamResources":{"shape":"TimestreamResources"}, + "iamResources":{ + "shape":"IamResources", + "deprecated":true, + "deprecatedMessage":"iamResources is no longer used or needed as input" + } + } + }, + "RegisterAccountResponse":{ + "type":"structure", + "required":[ + "registerAccountStatus", + "timestreamResources", + "iamResources", + "creationTime", + "lastModificationTime" + ], + "members":{ + "registerAccountStatus":{"shape":"RegistrationStatus"}, + "timestreamResources":{"shape":"TimestreamResources"}, + "iamResources":{"shape":"IamResources"}, + "creationTime":{"shape":"timestamp"}, + "lastModificationTime":{"shape":"timestamp"} + } + }, + "RegistrationStatus":{ + "type":"string", + "enum":[ + "REGISTRATION_PENDING", + "REGISTRATION_SUCCESS", + "REGISTRATION_FAILURE" + ] + }, + "ResourceNotFoundException":{ + "type":"structure", + "required":[ + "message", + "resourceId", + "resourceType" + ], + "members":{ + "message":{"shape":"string"}, + "resourceId":{"shape":"string"}, + "resourceType":{"shape":"string"} + }, + "exception":true + }, + "RetryAfterSeconds":{"type":"integer"}, + "Sensor":{ + "type":"structure", + "required":[ + "fullyQualifiedName", + "dataType" + ], + "members":{ + "fullyQualifiedName":{"shape":"string"}, + "dataType":{"shape":"NodeDataType"}, + "description":{"shape":"description"}, + "unit":{"shape":"string"}, + "allowedValues":{"shape":"listOfStrings"}, + "min":{"shape":"double"}, + "max":{"shape":"double"} + } + }, + "SignalCatalogSummary":{ + "type":"structure", + "members":{ + "name":{"shape":"string"}, + "arn":{"shape":"arn"}, + "creationTime":{"shape":"timestamp"}, + "lastModificationTime":{"shape":"timestamp"} + } + }, + "SignalDecoder":{ + "type":"structure", + "required":[ + "fullyQualifiedName", + "type", + "interfaceId" + ], + "members":{ + "fullyQualifiedName":{"shape":"FullyQualifiedName"}, + "type":{"shape":"SignalDecoderType"}, + "interfaceId":{"shape":"InterfaceId"}, + "canSignal":{"shape":"CanSignal"}, + "obdSignal":{"shape":"ObdSignal"} + } + }, + "SignalDecoderFailureReason":{ + "type":"string", + "enum":[ + "DUPLICATE_SIGNAL", + "CONFLICTING_SIGNAL", + "SIGNAL_TO_ADD_ALREADY_EXISTS", + "SIGNAL_NOT_ASSOCIATED_WITH_NETWORK_INTERFACE", + "NETWORK_INTERFACE_TYPE_INCOMPATIBLE_WITH_SIGNAL_DECODER_TYPE", + "SIGNAL_NOT_IN_MODEL", + "CAN_SIGNAL_INFO_IS_NULL", + "OBD_SIGNAL_INFO_IS_NULL", + "NO_DECODER_INFO_FOR_SIGNAL_IN_MODEL" + ] + }, + "SignalDecoderType":{ + "type":"string", + "enum":[ + "CAN_SIGNAL", + "OBD_SIGNAL" + ] + }, + "SignalDecoders":{ + "type":"list", + "member":{"shape":"SignalDecoder"}, + "max":500, + "min":1 + }, + "SignalInformation":{ + "type":"structure", + "required":["name"], + "members":{ + "name":{"shape":"wildcardSignalName"}, + "maxSampleCount":{"shape":"maxSampleCount"}, + "minimumSamplingIntervalMs":{"shape":"uint32"} + } + }, + "SignalInformationList":{ + "type":"list", + "member":{"shape":"SignalInformation"}, + "max":1000, + "min":0 + }, + "SpoolingMode":{ + "type":"string", + "enum":[ + "OFF", + "TO_DISK" + ] + }, + "String":{"type":"string"}, + "Tag":{ + "type":"structure", + "required":[ + "Key", + "Value" + ], + "members":{ + "Key":{"shape":"TagKey"}, + "Value":{"shape":"TagValue"} + } + }, + "TagKey":{ + "type":"string", + "max":128, + "min":1 + }, + "TagKeyList":{ + "type":"list", + "member":{"shape":"TagKey"}, + "max":200, + "min":0 + }, + "TagList":{ + "type":"list", + "member":{"shape":"Tag"}, + "max":50, + "min":0 + }, + "TagResourceRequest":{ + "type":"structure", + "required":[ + "ResourceARN", + "Tags" + ], + "members":{ + "ResourceARN":{"shape":"AmazonResourceName"}, + "Tags":{"shape":"TagList"} + } + }, + "TagResourceResponse":{ + "type":"structure", + "members":{ + } + }, + "TagValue":{ + "type":"string", + "max":256, + "min":0 + }, + "ThrottlingException":{ + "type":"structure", + "required":["message"], + "members":{ + "message":{"shape":"string"}, + "quotaCode":{"shape":"string"}, + "serviceCode":{"shape":"string"}, + "retryAfterSeconds":{"shape":"RetryAfterSeconds"} + }, + "exception":true + }, + "TimeBasedCollectionScheme":{ + "type":"structure", + "required":["periodMs"], + "members":{ + "periodMs":{"shape":"collectionPeriodMs"} + } + }, + "TimestreamDatabaseName":{ + "type":"string", + "max":255, + "min":3, + "pattern":"[a-zA-Z0-9_.-]+" + }, + "TimestreamRegistrationResponse":{ + "type":"structure", + "required":[ + "timestreamDatabaseName", + "timestreamTableName", + "registrationStatus" + ], + "members":{ + "timestreamDatabaseName":{"shape":"TimestreamDatabaseName"}, + "timestreamTableName":{"shape":"TimestreamTableName"}, + "timestreamDatabaseArn":{"shape":"arn"}, + "timestreamTableArn":{"shape":"arn"}, + "registrationStatus":{"shape":"RegistrationStatus"}, + "errorMessage":{"shape":"errorMessage"} + } + }, + "TimestreamResources":{ + "type":"structure", + "required":[ + "timestreamDatabaseName", + "timestreamTableName" + ], + "members":{ + "timestreamDatabaseName":{"shape":"TimestreamDatabaseName"}, + "timestreamTableName":{"shape":"TimestreamTableName"} + } + }, + "TimestreamTableName":{ + "type":"string", + "max":255, + "min":3, + "pattern":"[a-zA-Z0-9_.-]+" + }, + "TriggerMode":{ + "type":"string", + "enum":[ + "ALWAYS", + "RISING_EDGE" + ] + }, + "UntagResourceRequest":{ + "type":"structure", + "required":[ + "ResourceARN", + "TagKeys" + ], + "members":{ + "ResourceARN":{"shape":"AmazonResourceName"}, + "TagKeys":{"shape":"TagKeyList"} + } + }, + "UntagResourceResponse":{ + "type":"structure", + "members":{ + } + }, + "UpdateCampaignAction":{ + "type":"string", + "enum":[ + "APPROVE", + "SUSPEND", + "RESUME", + "UPDATE" + ] + }, + "UpdateCampaignRequest":{ + "type":"structure", + "required":[ + "name", + "action" + ], + "members":{ + "name":{"shape":"campaignName"}, + "description":{"shape":"description"}, + "dataExtraDimensions":{"shape":"DataExtraDimensionNodePathList"}, + "action":{"shape":"UpdateCampaignAction"} + } + }, + "UpdateCampaignResponse":{ + "type":"structure", + "members":{ + "arn":{"shape":"arn"}, + "name":{"shape":"campaignName"}, + "status":{"shape":"CampaignStatus"} + } + }, + "UpdateDecoderManifestRequest":{ + "type":"structure", + "required":["name"], + "members":{ + "name":{"shape":"resourceName"}, + "description":{"shape":"description"}, + "signalDecodersToAdd":{"shape":"SignalDecoders"}, + "signalDecodersToUpdate":{"shape":"SignalDecoders"}, + "signalDecodersToRemove":{"shape":"Fqns"}, + "networkInterfacesToAdd":{"shape":"NetworkInterfaces"}, + "networkInterfacesToUpdate":{"shape":"NetworkInterfaces"}, + "networkInterfacesToRemove":{"shape":"InterfaceIds"}, + "status":{"shape":"ManifestStatus"} + } + }, + "UpdateDecoderManifestResponse":{ + "type":"structure", + "required":[ + "name", + "arn" + ], + "members":{ + "name":{"shape":"resourceName"}, + "arn":{"shape":"arn"} + } + }, + "UpdateFleetRequest":{ + "type":"structure", + "required":["fleetId"], + "members":{ + "fleetId":{"shape":"fleetId"}, + "description":{"shape":"description"} + } + }, + "UpdateFleetResponse":{ + "type":"structure", + "members":{ + "id":{"shape":"fleetId"}, + "arn":{"shape":"arn"} + } + }, + "UpdateMode":{ + "type":"string", + "enum":[ + "Overwrite", + "Merge" + ] + }, + "UpdateModelManifestRequest":{ + "type":"structure", + "required":["name"], + "members":{ + "name":{"shape":"resourceName"}, + "description":{"shape":"description"}, + "nodesToAdd":{"shape":"NodePaths"}, + "nodesToRemove":{"shape":"NodePaths"}, + "status":{"shape":"ManifestStatus"} + } + }, + "UpdateModelManifestResponse":{ + "type":"structure", + "required":[ + "name", + "arn" + ], + "members":{ + "name":{"shape":"resourceName"}, + "arn":{"shape":"arn"} + } + }, + "UpdateSignalCatalogRequest":{ + "type":"structure", + "required":["name"], + "members":{ + "name":{"shape":"resourceName"}, + "description":{"shape":"description"}, + "nodesToAdd":{"shape":"Nodes"}, + "nodesToUpdate":{"shape":"Nodes"}, + "nodesToRemove":{"shape":"NodePaths"} + } + }, + "UpdateSignalCatalogResponse":{ + "type":"structure", + "required":[ + "name", + "arn" + ], + "members":{ + "name":{"shape":"resourceName"}, + "arn":{"shape":"arn"} + } + }, + "UpdateVehicleError":{ + "type":"structure", + "members":{ + "vehicleName":{"shape":"vehicleName"}, + "code":{"shape":"number"}, + "message":{"shape":"string"} + } + }, + "UpdateVehicleRequest":{ + "type":"structure", + "required":["vehicleName"], + "members":{ + "vehicleName":{"shape":"vehicleName"}, + "modelManifestArn":{"shape":"arn"}, + "decoderManifestArn":{"shape":"arn"}, + "attributes":{"shape":"attributesMap"}, + "attributeUpdateMode":{"shape":"UpdateMode"} + } + }, + "UpdateVehicleRequestItem":{ + "type":"structure", + "required":["vehicleName"], + "members":{ + "vehicleName":{"shape":"vehicleName"}, + "modelManifestArn":{"shape":"arn"}, + "decoderManifestArn":{"shape":"arn"}, + "attributes":{"shape":"attributesMap"}, + "attributeUpdateMode":{"shape":"UpdateMode"} + } + }, + "UpdateVehicleResponse":{ + "type":"structure", + "members":{ + "vehicleName":{"shape":"vehicleName"}, + "arn":{"shape":"arn"} + } + }, + "UpdateVehicleResponseItem":{ + "type":"structure", + "members":{ + "vehicleName":{"shape":"vehicleName"}, + "arn":{"shape":"arn"} + } + }, + "ValidationException":{ + "type":"structure", + "required":["message"], + "members":{ + "message":{"shape":"string"}, + "reason":{"shape":"ValidationExceptionReason"}, + "fieldList":{"shape":"ValidationExceptionFieldList"} + }, + "exception":true + }, + "ValidationExceptionField":{ + "type":"structure", + "required":[ + "name", + "message" + ], + "members":{ + "name":{"shape":"String"}, + "message":{"shape":"String"} + } + }, + "ValidationExceptionFieldList":{ + "type":"list", + "member":{"shape":"ValidationExceptionField"} + }, + "ValidationExceptionReason":{ + "type":"string", + "enum":[ + "unknownOperation", + "cannotParse", + "fieldValidationFailed", + "other" + ] + }, + "VehicleAssociationBehavior":{ + "type":"string", + "enum":[ + "CreateIotThing", + "ValidateIotThingExists" + ] + }, + "VehicleState":{ + "type":"string", + "enum":[ + "CREATED", + "READY", + "HEALTHY", + "SUSPENDED", + "DELETING" + ] + }, + "VehicleStatus":{ + "type":"structure", + "members":{ + "campaignName":{"shape":"string"}, + "vehicleName":{"shape":"vehicleName"}, + "status":{"shape":"VehicleState"} + } + }, + "VehicleStatusList":{ + "type":"list", + "member":{"shape":"VehicleStatus"} + }, + "VehicleSummary":{ + "type":"structure", + "required":[ + "vehicleName", + "arn", + "modelManifestArn", + "decoderManifestArn", + "creationTime", + "lastModificationTime" + ], + "members":{ + "vehicleName":{"shape":"vehicleName"}, + "arn":{"shape":"arn"}, + "modelManifestArn":{"shape":"arn"}, + "decoderManifestArn":{"shape":"arn"}, + "creationTime":{"shape":"timestamp"}, + "lastModificationTime":{"shape":"timestamp"} + } + }, + "arn":{"type":"string"}, + "attributeName":{ + "type":"string", + "max":150, + "min":1, + "pattern":"[a-zA-Z0-9_.-]+" + }, + "attributeValue":{"type":"string"}, + "attributesMap":{ + "type":"map", + "key":{"shape":"attributeName"}, + "value":{"shape":"attributeValue"} + }, + "boolean":{"type":"boolean"}, + "campaignName":{ + "type":"string", + "max":100, + "min":1, + "pattern":"[a-zA-Z\\d\\-_:]+" + }, + "campaignSummaries":{ + "type":"list", + "member":{"shape":"CampaignSummary"} + }, + "collectionPeriodMs":{ + "type":"long", + "box":true, + "max":60000, + "min":10000 + }, + "createVehicleErrors":{ + "type":"list", + "member":{"shape":"CreateVehicleError"} + }, + "createVehicleRequestItems":{ + "type":"list", + "member":{"shape":"CreateVehicleRequestItem"} + }, + "createVehicleResponses":{ + "type":"list", + "member":{"shape":"CreateVehicleResponseItem"} + }, + "customerAccountId":{"type":"string"}, + "decoderManifestSummaries":{ + "type":"list", + "member":{"shape":"DecoderManifestSummary"} + }, + "description":{ + "type":"string", + "max":2048, + "min":1, + "pattern":"[^\\u0000-\\u001F\\u007F]+" + }, + "double":{ + "type":"double", + "box":true + }, + "errorMessage":{"type":"string"}, + "eventExpression":{ + "type":"string", + "max":2048, + "min":1 + }, + "fleetId":{ + "type":"string", + "max":100, + "min":1, + "pattern":"[a-zA-Z0-9:_-]+" + }, + "fleetSummaries":{ + "type":"list", + "member":{"shape":"FleetSummary"} + }, + "fleets":{ + "type":"list", + "member":{"shape":"fleetId"} + }, + "languageVersion":{ + "type":"integer", + "box":true, + "min":1 + }, + "listOfStrings":{ + "type":"list", + "member":{"shape":"string"} + }, + "listVehiclesMaxResults":{ + "type":"integer", + "box":true, + "max":100, + "min":1 + }, + "maxResults":{ + "type":"integer", + "box":true, + "max":100, + "min":1 + }, + "maxSampleCount":{ + "type":"long", + "box":true, + "max":4294967295, + "min":1 + }, + "modelManifestSummaries":{ + "type":"list", + "member":{"shape":"ModelManifestSummary"} + }, + "nextToken":{ + "type":"string", + "max":4096, + "min":1 + }, + "nonNegativeInteger":{ + "type":"integer", + "min":0 + }, + "number":{"type":"integer"}, + "positiveInteger":{ + "type":"integer", + "min":1 + }, + "priority":{ + "type":"integer", + "box":true, + "min":0 + }, + "resourceName":{ + "type":"string", + "max":100, + "min":1, + "pattern":"[a-zA-Z\\d\\-_:]+" + }, + "signalCatalogSummaries":{ + "type":"list", + "member":{"shape":"SignalCatalogSummary"} + }, + "status":{"type":"string"}, + "string":{"type":"string"}, + "timestamp":{"type":"timestamp"}, + "uint32":{ + "type":"long", + "box":true, + "max":4294967295, + "min":0 + }, + "updateVehicleErrors":{ + "type":"list", + "member":{"shape":"UpdateVehicleError"} + }, + "updateVehicleRequestItems":{ + "type":"list", + "member":{"shape":"UpdateVehicleRequestItem"} + }, + "updateVehicleResponseItems":{ + "type":"list", + "member":{"shape":"UpdateVehicleResponseItem"} + }, + "vehicleName":{ + "type":"string", + "max":100, + "min":1, + "pattern":"[a-zA-Z\\d\\-_:]+" + }, + "vehicleSummaries":{ + "type":"list", + "member":{"shape":"VehicleSummary"} + }, + "vehicles":{ + "type":"list", + "member":{"shape":"vehicleName"} + }, + "wildcardSignalName":{ + "type":"string", + "max":150, + "min":1, + "pattern":"[\\w|*|-]+(\\.[\\w|*|-]+)*" + } + } +} diff --git a/models/apis/iotfleetwise/2021-06-17/docs-2.json b/models/apis/iotfleetwise/2021-06-17/docs-2.json new file mode 100644 index 00000000000..d860072e534 --- /dev/null +++ b/models/apis/iotfleetwise/2021-06-17/docs-2.json @@ -0,0 +1,1832 @@ +{ + "version": "2.0", + "service": "

Amazon Web Services IoT FleetWise is in preview release and is subject to change. We recommend that you use the service only with test data, and not in production environments.

While Amazon Web Services IoT FleetWise is in preview, you must download the preview Amazon Web Services SDK and CLI to use the API operations for this service. These API operations aren't available in the public Amazon Web Services SDK or CLI. For more information, see Preview Amazon Web Services SDK and CLI in the Amazon Web Services IoT FleetWise Developer Guide.

Amazon Web Services IoT FleetWise is a fully managed service that you can use to collect, model, and transfer vehicle data to the Amazon Web Services cloud at scale. With Amazon Web Services IoT FleetWise, you can standardize all of your vehicle data models, independent of the in-vehicle communication architecture, and define data collection rules to transfer only high-value data to the cloud.

For more information, see What is Amazon Web Services IoT FleetWise? in the Amazon Web Services IoT FleetWise Developer Guide.

", + "operations": { + "AssociateVehicleFleet": "

Adds, or associates, a vehicle with a fleet.

", + "BatchCreateVehicle": "

Creates a group, or batch, of vehicles.

You must specify a decoder manifest and a vehicle model (model manifest) for each vehicle.

For more information, see Create multiple vehicles (AWS CLI) in the Amazon Web Services IoT FleetWise Developer Guide.

", + "BatchUpdateVehicle": "

Updates a group, or batch, of vehicles.

You must specify a decoder manifest and a vehicle model (model manifest) for each vehicle.

For more information, see Update multiple vehicles (AWS CLI) in the Amazon Web Services IoT FleetWise Developer Guide.

", + "CreateCampaign": "

Creates an orchestration of data collection rules. The Amazon Web Services IoT FleetWise Edge Agent software running in vehicles uses campaigns to decide how to collect and transfer data to the cloud. You create campaigns in the cloud. After you or your team approve campaigns, Amazon Web Services IoT FleetWise automatically deploys them to vehicles.

For more information, see Collect and transfer data with campaigns in the Amazon Web Services IoT FleetWise Developer Guide.

", + "CreateDecoderManifest": "

Creates the decoder manifest associated with a model manifest. To create a decoder manifest, the following must be true:

", + "CreateFleet": "

Creates a fleet that represents a group of vehicles.

You must create both a signal catalog and vehicles before you can create a fleet.

For more information, see Fleets in the Amazon Web Services IoT FleetWise Developer Guide.

", + "CreateModelManifest": "

Creates a vehicle model (model manifest) that specifies signals (attributes, branches, sensors, and actuators).

For more information, see Vehicle models in the Amazon Web Services IoT FleetWise Developer Guide.

", + "CreateSignalCatalog": "

Creates a collection of standardized signals that can be reused to create vehicle models.

", + "CreateVehicle": "

Creates a vehicle, which is an instance of a vehicle model (model manifest). Vehicles created from the same vehicle model consist of the same signals inherited from the vehicle model.

If you have an existing Amazon Web Services IoT Thing, you can use Amazon Web Services IoT FleetWise to create a vehicle and collect data from your thing.

For more information, see Create a vehicle (AWS CLI) in the Amazon Web Services IoT FleetWise Developer Guide.

", + "DeleteCampaign": "

Deletes a data collection campaign. Deleting a campaign suspends all data collection and removes it from any vehicles.

", + "DeleteDecoderManifest": "

Deletes a decoder manifest. You can't delete a decoder manifest if it has vehicles associated with it.

If the decoder manifest is successfully deleted, Amazon Web Services IoT FleetWise sends back an HTTP 200 response with an empty body.

", + "DeleteFleet": "

Deletes a fleet. Before you delete a fleet, all vehicles must be dissociated from the fleet. For more information, see Delete a fleet (AWS CLI) in the Amazon Web Services IoT FleetWise Developer Guide.

If the fleet is successfully deleted, Amazon Web Services IoT FleetWise sends back an HTTP 200 response with an empty body.

", + "DeleteModelManifest": "

Deletes a vehicle model (model manifest).

If the vehicle model is successfully deleted, Amazon Web Services IoT FleetWise sends back an HTTP 200 response with an empty body.

", + "DeleteSignalCatalog": "

Deletes a signal catalog.

If the signal catalog is successfully deleted, Amazon Web Services IoT FleetWise sends back an HTTP 200 response with an empty body.

", + "DeleteVehicle": "

Deletes a vehicle and removes it from any campaigns.

If the vehicle is successfully deleted, Amazon Web Services IoT FleetWise sends back an HTTP 200 response with an empty body.

", + "DisassociateVehicleFleet": "

Removes, or disassociates, a vehicle from a fleet. Disassociating a vehicle from a fleet doesn't delete the vehicle.

If the vehicle is successfully dissociated from a fleet, Amazon Web Services IoT FleetWise sends back an HTTP 200 response with an empty body.

", + "GetCampaign": "

Retrieves information about a campaign.

", + "GetDecoderManifest": "

Retrieves information about a created decoder manifest.

", + "GetFleet": "

Retrieves information about a fleet.

", + "GetLoggingOptions": "

Retrieves the logging options.

", + "GetModelManifest": "

Retrieves information about a vehicle model (model manifest).

", + "GetRegisterAccountStatus": "

Retrieves information about the status of registering your Amazon Web Services account, IAM, and Amazon Timestream resources so that Amazon Web Services IoT FleetWise can transfer your vehicle data to the Amazon Web Services Cloud.

For more information, including step-by-step procedures, see Setting up Amazon Web Services IoT FleetWise.

This API operation doesn't require input parameters.

", + "GetSignalCatalog": "

Retrieves information about a signal catalog.

", + "GetVehicle": "

Retrieves information about a vehicle.

", + "GetVehicleStatus": "

Retrieves information about the status of a vehicle with any associated campaigns.

", + "ImportDecoderManifest": "

Creates a decoder manifest using your existing CAN DBC file from your local device.

", + "ImportSignalCatalog": "

Creates a signal catalog using your existing VSS formatted content from your local device.

", + "ListCampaigns": "

Lists information about created campaigns.

This API operation uses pagination. Specify the nextToken parameter in the request to return more results.

", + "ListDecoderManifestNetworkInterfaces": "

Lists the network interfaces specified in a decoder manifest.

This API operation uses pagination. Specify the nextToken parameter in the request to return more results.

", + "ListDecoderManifestSignals": "

A list of information about signal decoders specified in a decoder manifest.

This API operation uses pagination. Specify the nextToken parameter in the request to return more results.

", + "ListDecoderManifests": "

Lists decoder manifests.

This API operation uses pagination. Specify the nextToken parameter in the request to return more results.

", + "ListFleets": "

Retrieves information for each created fleet in an Amazon Web Services account.

This API operation uses pagination. Specify the nextToken parameter in the request to return more results.

", + "ListFleetsForVehicle": "

Retrieves a list of IDs for all fleets that the vehicle is associated with.

This API operation uses pagination. Specify the nextToken parameter in the request to return more results.

", + "ListModelManifestNodes": "

Lists information about nodes specified in a vehicle model (model manifest).

This API operation uses pagination. Specify the nextToken parameter in the request to return more results.

", + "ListModelManifests": "

Retrieves a list of vehicle models (model manifests).

This API operation uses pagination. Specify the nextToken parameter in the request to return more results.

", + "ListSignalCatalogNodes": "

Lists of information about the signals (nodes) specified in a signal catalog.

This API operation uses pagination. Specify the nextToken parameter in the request to return more results.

", + "ListSignalCatalogs": "

Lists all the created signal catalogs in an Amazon Web Services account.

You can use to list information about each signal (node) specified in a signal catalog.

This API operation uses pagination. Specify the nextToken parameter in the request to return more results.

", + "ListTagsForResource": "

Lists the tags (metadata) you have assigned to the resource.

", + "ListVehicles": "

Retrieves a list of summaries of created vehicles.

This API operation uses pagination. Specify the nextToken parameter in the request to return more results.

", + "ListVehiclesInFleet": "

Retrieves a list of summaries of all vehicles associated with a fleet.

This API operation uses pagination. Specify the nextToken parameter in the request to return more results.

", + "PutLoggingOptions": "

Creates or updates the logging option.

", + "RegisterAccount": "

Registers your Amazon Web Services account, IAM, and Amazon Timestream resources so Amazon Web Services IoT FleetWise can transfer your vehicle data to the Amazon Web Services Cloud. For more information, including step-by-step procedures, see Setting up Amazon Web Services IoT FleetWise.

An Amazon Web Services account is not the same thing as a \"user account\". An Amazon Web Services user is an identity that you create using Identity and Access Management (IAM) and takes the form of either an IAM user or an IAM role, both with credentials. A single Amazon Web Services account can, and typically does, contain many users and roles.

", + "TagResource": "

Adds to or modifies the tags of the given resource. Tags are metadata which can be used to manage a resource.

", + "UntagResource": "

Removes the given tags (metadata) from the resource.

", + "UpdateCampaign": "

Updates a campaign.

", + "UpdateDecoderManifest": "

Updates a decoder manifest.

A decoder manifest can only be updated when the status is DRAFT. Only ACTIVE decoder manifests can be associated with vehicles.

", + "UpdateFleet": "

Updates the description of an existing fleet.

If the fleet is successfully updated, Amazon Web Services IoT FleetWise sends back an HTTP 200 response with an empty HTTP body.

", + "UpdateModelManifest": "

Updates a vehicle model (model manifest). If created vehicles are associated with a vehicle model, it can't be updated.

", + "UpdateSignalCatalog": "

Updates a signal catalog.

", + "UpdateVehicle": "

Updates a vehicle.

" + }, + "shapes": { + "AccessDeniedException": { + "base": "

You don't have sufficient permission to perform this action.

", + "refs": { + } + }, + "Actuator": { + "base": "

A signal that represents a vehicle device such as the engine, heater, and door locks. Data from an actuator reports the state of a certain vehicle device.

Updating actuator data can change the state of a device. For example, you can turn on or off the heater by updating its actuator data.

", + "refs": { + "Node$actuator": "

Information about a node specified as an actuator.

An actuator is a digital representation of a vehicle device.

" + } + }, + "AmazonResourceName": { + "base": null, + "refs": { + "ListTagsForResourceRequest$ResourceARN": "

The ARN of the resource.

", + "TagResourceRequest$ResourceARN": "

The ARN of the resource.

", + "UntagResourceRequest$ResourceARN": "

The ARN of the resource.

" + } + }, + "AssociateVehicleFleetRequest": { + "base": null, + "refs": { + } + }, + "AssociateVehicleFleetResponse": { + "base": null, + "refs": { + } + }, + "Attribute": { + "base": "

A signal that represents static information about the vehicle, such as engine type or manufacturing date.

", + "refs": { + "Node$attribute": "

Information about a node specified as an attribute.

An attribute represents static information about a vehicle.

" + } + }, + "BatchCreateVehicleRequest": { + "base": null, + "refs": { + } + }, + "BatchCreateVehicleResponse": { + "base": null, + "refs": { + } + }, + "BatchUpdateVehicleRequest": { + "base": null, + "refs": { + } + }, + "BatchUpdateVehicleResponse": { + "base": null, + "refs": { + } + }, + "Branch": { + "base": "

A group of signals that are defined in a hierarchical structure.

", + "refs": { + "Node$branch": "

Information about a node specified as a branch.

A group of signals that are defined in a hierarchical structure.

" + } + }, + "CampaignStatus": { + "base": null, + "refs": { + "CampaignSummary$status": "

The state of a campaign. The status can be one of the following:

", + "GetCampaignResponse$status": "

The state of the campaign. The status can be one of: CREATING, WAITING_FOR_APPROVAL, RUNNING, and SUSPENDED.

", + "UpdateCampaignResponse$status": "

The state of a campaign. The status can be one of:

" + } + }, + "CampaignSummary": { + "base": "

Information about a campaign.

You can use the API operation to return this information about multiple created campaigns.

", + "refs": { + "campaignSummaries$member": null + } + }, + "CanDbcDefinition": { + "base": "

Configurations used to create a decoder manifest.

", + "refs": { + "NetworkFileDefinition$canDbc": "

Information, including CAN DBC files, about the configurations used to create a decoder manifest.

" + } + }, + "CanInterface": { + "base": "

A single controller area network (CAN) device interface.

", + "refs": { + "NetworkInterface$canInterface": "

Information about a network interface specified by the Controller Area Network (CAN) protocol.

" + } + }, + "CanInterfaceName": { + "base": null, + "refs": { + "CanInterface$name": "

The unique name of the interface.

" + } + }, + "CanSignal": { + "base": "

Information about a single controller area network (CAN) signal and the messages it receives and transmits.

", + "refs": { + "SignalDecoder$canSignal": "

Information about signal decoder using the Controller Area Network (CAN) protocol.

" + } + }, + "CanSignalName": { + "base": null, + "refs": { + "CanSignal$name": "

The name of the signal.

" + } + }, + "CloudWatchLogDeliveryOptions": { + "base": "

The log delivery option to send data to Amazon CloudWatch Logs.

", + "refs": { + "GetLoggingOptionsResponse$cloudWatchLogDelivery": "

Returns information about log delivery to Amazon CloudWatch Logs.

", + "PutLoggingOptionsRequest$cloudWatchLogDelivery": "

Creates or updates the log delivery option to Amazon CloudWatch Logs.

" + } + }, + "CloudWatchLogGroupName": { + "base": null, + "refs": { + "CloudWatchLogDeliveryOptions$logGroupName": "

The Amazon CloudWatch Logs group the operation sends data to.

" + } + }, + "CollectionScheme": { + "base": "

Specifies what data to collect and how often or when to collect it.

", + "refs": { + "CreateCampaignRequest$collectionScheme": "

The data collection scheme associated with the campaign. You can specify a scheme that collects data based on time or an event.

", + "GetCampaignResponse$collectionScheme": "

Information about the data collection scheme associated with the campaign.

" + } + }, + "Compression": { + "base": null, + "refs": { + "CreateCampaignRequest$compression": "

(Optional) Whether to compress signals before transmitting data to Amazon Web Services IoT FleetWise. If you don't want to compress the signals, use OFF. If it's not specified, SNAPPY is used.

Default: SNAPPY

", + "GetCampaignResponse$compression": "

Whether to compress signals before transmitting data to Amazon Web Services IoT FleetWise. If OFF is specified, the signals aren't compressed. If it's not specified, SNAPPY is used.

" + } + }, + "ConditionBasedCollectionScheme": { + "base": "

Information about a collection scheme that uses a simple logical expression to recognize what data to collect.

", + "refs": { + "CollectionScheme$conditionBasedCollectionScheme": "

Information about a collection scheme that uses a simple logical expression to recognize what data to collect.

" + } + }, + "ConflictException": { + "base": "

The request has conflicting operations. This can occur if you're trying to perform more than one operation on the same resource at the same time.

", + "refs": { + } + }, + "CreateCampaignRequest": { + "base": null, + "refs": { + } + }, + "CreateCampaignResponse": { + "base": null, + "refs": { + } + }, + "CreateDecoderManifestRequest": { + "base": null, + "refs": { + } + }, + "CreateDecoderManifestResponse": { + "base": null, + "refs": { + } + }, + "CreateFleetRequest": { + "base": null, + "refs": { + } + }, + "CreateFleetResponse": { + "base": null, + "refs": { + } + }, + "CreateModelManifestRequest": { + "base": null, + "refs": { + } + }, + "CreateModelManifestResponse": { + "base": null, + "refs": { + } + }, + "CreateSignalCatalogRequest": { + "base": null, + "refs": { + } + }, + "CreateSignalCatalogResponse": { + "base": null, + "refs": { + } + }, + "CreateVehicleError": { + "base": "

An HTTP error resulting from creating a vehicle.

", + "refs": { + "createVehicleErrors$member": null + } + }, + "CreateVehicleRequest": { + "base": null, + "refs": { + } + }, + "CreateVehicleRequestItem": { + "base": "

Information about the vehicle to create.

", + "refs": { + "createVehicleRequestItems$member": null + } + }, + "CreateVehicleResponse": { + "base": null, + "refs": { + } + }, + "CreateVehicleResponseItem": { + "base": "

Information about a created vehicle.

", + "refs": { + "createVehicleResponses$member": null + } + }, + "DataExtraDimensionNodePathList": { + "base": null, + "refs": { + "CreateCampaignRequest$dataExtraDimensions": "

(Optional) A list of vehicle attributes to associate with a campaign.

Default: An empty array

", + "GetCampaignResponse$dataExtraDimensions": "

A list of vehicle attributes associated with the campaign.

", + "UpdateCampaignRequest$dataExtraDimensions": "

A list of vehicle attributes to associate with a signal.

Default: An empty array

" + } + }, + "DecoderManifestSummary": { + "base": "

Information about a created decoder manifest. You can use the API operation to return this information about multiple decoder manifests.

", + "refs": { + "decoderManifestSummaries$member": null + } + }, + "DecoderManifestValidationException": { + "base": "

The request couldn't be completed because it contains signal decoders with one or more validation errors.

", + "refs": { + } + }, + "DeleteCampaignRequest": { + "base": null, + "refs": { + } + }, + "DeleteCampaignResponse": { + "base": null, + "refs": { + } + }, + "DeleteDecoderManifestRequest": { + "base": null, + "refs": { + } + }, + "DeleteDecoderManifestResponse": { + "base": null, + "refs": { + } + }, + "DeleteFleetRequest": { + "base": null, + "refs": { + } + }, + "DeleteFleetResponse": { + "base": null, + "refs": { + } + }, + "DeleteModelManifestRequest": { + "base": null, + "refs": { + } + }, + "DeleteModelManifestResponse": { + "base": null, + "refs": { + } + }, + "DeleteSignalCatalogRequest": { + "base": null, + "refs": { + } + }, + "DeleteSignalCatalogResponse": { + "base": null, + "refs": { + } + }, + "DeleteVehicleRequest": { + "base": null, + "refs": { + } + }, + "DeleteVehicleResponse": { + "base": null, + "refs": { + } + }, + "DiagnosticsMode": { + "base": null, + "refs": { + "CreateCampaignRequest$diagnosticsMode": "

(Optional) Option for a vehicle to send diagnostic trouble codes to Amazon Web Services IoT FleetWise. If you want to send diagnostic trouble codes, use SEND_ACTIVE_DTCS. If it's not specified, OFF is used.

Default: OFF

", + "GetCampaignResponse$diagnosticsMode": "

Option for a vehicle to send diagnostic trouble codes to Amazon Web Services IoT FleetWise.

" + } + }, + "DisassociateVehicleFleetRequest": { + "base": null, + "refs": { + } + }, + "DisassociateVehicleFleetResponse": { + "base": null, + "refs": { + } + }, + "FleetSummary": { + "base": "

Information about a fleet.

You can use the API operation to return this information about multiple fleets.

", + "refs": { + "fleetSummaries$member": null + } + }, + "FormattedVss": { + "base": "

Vehicle Signal Specification (VSS) is a precise language used to describe and model signals in vehicle networks. The JSON file collects signal specificiations in a VSS format.

", + "refs": { + "ImportSignalCatalogRequest$vss": "

The contents of the Vehicle Signal Specification (VSS) configuration. VSS is a precise language used to describe and model signals in vehicle networks.

" + } + }, + "Fqns": { + "base": null, + "refs": { + "UpdateDecoderManifestRequest$signalDecodersToRemove": "

A list of signal decoders to remove from the decoder manifest.

" + } + }, + "FullyQualifiedName": { + "base": null, + "refs": { + "Fqns$member": null, + "InvalidSignal$name": "

The name of the signal that isn't valid.

", + "InvalidSignalDecoder$name": "

The name of a signal decoder that isn't valid.

", + "SignalDecoder$fullyQualifiedName": "

The fully qualified name of a signal decoder as defined in a vehicle model.

" + } + }, + "GetCampaignRequest": { + "base": null, + "refs": { + } + }, + "GetCampaignResponse": { + "base": null, + "refs": { + } + }, + "GetDecoderManifestRequest": { + "base": null, + "refs": { + } + }, + "GetDecoderManifestResponse": { + "base": null, + "refs": { + } + }, + "GetFleetRequest": { + "base": null, + "refs": { + } + }, + "GetFleetResponse": { + "base": null, + "refs": { + } + }, + "GetLoggingOptionsRequest": { + "base": null, + "refs": { + } + }, + "GetLoggingOptionsResponse": { + "base": null, + "refs": { + } + }, + "GetModelManifestRequest": { + "base": null, + "refs": { + } + }, + "GetModelManifestResponse": { + "base": null, + "refs": { + } + }, + "GetRegisterAccountStatusRequest": { + "base": null, + "refs": { + } + }, + "GetRegisterAccountStatusResponse": { + "base": null, + "refs": { + } + }, + "GetSignalCatalogRequest": { + "base": null, + "refs": { + } + }, + "GetSignalCatalogResponse": { + "base": null, + "refs": { + } + }, + "GetVehicleRequest": { + "base": null, + "refs": { + } + }, + "GetVehicleResponse": { + "base": null, + "refs": { + } + }, + "GetVehicleStatusRequest": { + "base": null, + "refs": { + } + }, + "GetVehicleStatusResponse": { + "base": null, + "refs": { + } + }, + "IAMRoleArn": { + "base": null, + "refs": { + "IamResources$roleArn": "

The Amazon Resource Name (ARN) of the IAM resource that allows Amazon Web Services IoT FleetWise to send data to Amazon Timestream. For example, arn:aws:iam::123456789012:role/SERVICE-ROLE-ARN.

" + } + }, + "IamRegistrationResponse": { + "base": "

Information about registering an Identity and Access Management (IAM) resource so Amazon Web Services IoT FleetWise edge agent software can transfer your vehicle data to Amazon Timestream.

", + "refs": { + "GetRegisterAccountStatusResponse$iamRegistrationResponse": "

Information about the registered IAM resources or errors, if any.

" + } + }, + "IamResources": { + "base": "

The IAM resource that enables Amazon Web Services IoT FleetWise edge agent software to send data to Amazon Timestream.

For more information, see IAM roles in the Identity and Access Management User Guide.

", + "refs": { + "RegisterAccountRequest$iamResources": "

The IAM resource that allows Amazon Web Services IoT FleetWise to send data to Amazon Timestream.

", + "RegisterAccountResponse$iamResources": "

The registered IAM resource that allows Amazon Web Services IoT FleetWise to send data to Amazon Timestream.

" + } + }, + "ImportDecoderManifestRequest": { + "base": null, + "refs": { + } + }, + "ImportDecoderManifestResponse": { + "base": null, + "refs": { + } + }, + "ImportSignalCatalogRequest": { + "base": null, + "refs": { + } + }, + "ImportSignalCatalogResponse": { + "base": null, + "refs": { + } + }, + "InterfaceId": { + "base": null, + "refs": { + "CanDbcDefinition$networkInterface": "

Contains information about a network interface.

", + "InterfaceIds$member": null, + "InvalidNetworkInterface$interfaceId": "

The ID of the interface that isn't valid.

", + "NetworkInterface$interfaceId": "

The ID of the network interface.

", + "SignalDecoder$interfaceId": "

The ID of a network interface that specifies what network protocol a vehicle follows.

" + } + }, + "InterfaceIds": { + "base": null, + "refs": { + "UpdateDecoderManifestRequest$networkInterfacesToRemove": "

A list of network interfaces to remove from the decoder manifest.

" + } + }, + "InternalServerException": { + "base": "

The request couldn't be completed because the server temporarily failed.

", + "refs": { + } + }, + "InvalidNetworkInterface": { + "base": "

A reason a vehicle network interface isn't valid.

", + "refs": { + "InvalidNetworkInterfaces$member": null + } + }, + "InvalidNetworkInterfaces": { + "base": null, + "refs": { + "DecoderManifestValidationException$invalidNetworkInterfaces": "

The request couldn't be completed because of invalid network interfaces in the request.

" + } + }, + "InvalidNodeException": { + "base": "

The specified node type doesn't match the expected node type for a node. You can specify the node type as branch, sensor, actuator, or attribute.

", + "refs": { + } + }, + "InvalidSignal": { + "base": "

A reason that a signal isn't valid.

", + "refs": { + "InvalidSignals$member": null + } + }, + "InvalidSignalDecoder": { + "base": "

A reason that a signal decoder isn't valid.

", + "refs": { + "InvalidSignalDecoders$member": null + } + }, + "InvalidSignalDecoders": { + "base": null, + "refs": { + "DecoderManifestValidationException$invalidSignals": "

The request couldn't be completed because of invalid signals in the request.

" + } + }, + "InvalidSignals": { + "base": null, + "refs": { + "InvalidSignalsException$invalidSignals": "

The signals which caused the exception.

" + } + }, + "InvalidSignalsException": { + "base": "

The request couldn't be completed because it contains signals that aren't valid.

", + "refs": { + } + }, + "LimitExceededException": { + "base": "

A service quota was exceeded.

", + "refs": { + } + }, + "ListCampaignsRequest": { + "base": null, + "refs": { + } + }, + "ListCampaignsResponse": { + "base": null, + "refs": { + } + }, + "ListDecoderManifestNetworkInterfacesRequest": { + "base": null, + "refs": { + } + }, + "ListDecoderManifestNetworkInterfacesResponse": { + "base": null, + "refs": { + } + }, + "ListDecoderManifestSignalsRequest": { + "base": null, + "refs": { + } + }, + "ListDecoderManifestSignalsResponse": { + "base": null, + "refs": { + } + }, + "ListDecoderManifestsRequest": { + "base": null, + "refs": { + } + }, + "ListDecoderManifestsResponse": { + "base": null, + "refs": { + } + }, + "ListFleetsForVehicleRequest": { + "base": null, + "refs": { + } + }, + "ListFleetsForVehicleResponse": { + "base": null, + "refs": { + } + }, + "ListFleetsRequest": { + "base": null, + "refs": { + } + }, + "ListFleetsResponse": { + "base": null, + "refs": { + } + }, + "ListModelManifestNodesRequest": { + "base": null, + "refs": { + } + }, + "ListModelManifestNodesResponse": { + "base": null, + "refs": { + } + }, + "ListModelManifestsRequest": { + "base": null, + "refs": { + } + }, + "ListModelManifestsResponse": { + "base": null, + "refs": { + } + }, + "ListSignalCatalogNodesRequest": { + "base": null, + "refs": { + } + }, + "ListSignalCatalogNodesResponse": { + "base": null, + "refs": { + } + }, + "ListSignalCatalogsRequest": { + "base": null, + "refs": { + } + }, + "ListSignalCatalogsResponse": { + "base": null, + "refs": { + } + }, + "ListTagsForResourceRequest": { + "base": null, + "refs": { + } + }, + "ListTagsForResourceResponse": { + "base": null, + "refs": { + } + }, + "ListVehiclesInFleetRequest": { + "base": null, + "refs": { + } + }, + "ListVehiclesInFleetResponse": { + "base": null, + "refs": { + } + }, + "ListVehiclesRequest": { + "base": null, + "refs": { + } + }, + "ListVehiclesResponse": { + "base": null, + "refs": { + } + }, + "LogType": { + "base": null, + "refs": { + "CloudWatchLogDeliveryOptions$logType": "

The type of log to send data to Amazon CloudWatch Logs.

" + } + }, + "ManifestStatus": { + "base": null, + "refs": { + "DecoderManifestSummary$status": "

The state of the decoder manifest. If the status is ACTIVE, the decoder manifest can't be edited. If the status is marked DRAFT, you can edit the decoder manifest.

", + "GetDecoderManifestResponse$status": "

The state of the decoder manifest. If the status is ACTIVE, the decoder manifest can't be edited. If the status is marked DRAFT, you can edit the decoder manifest.

", + "GetModelManifestResponse$status": "

The state of the vehicle model. If the status is ACTIVE, the vehicle model can't be edited. You can edit the vehicle model if the status is marked DRAFT.

", + "ModelManifestSummary$status": "

The state of the vehicle model. If the status is ACTIVE, the vehicle model can't be edited. If the status is DRAFT, you can edit the vehicle model.

", + "UpdateDecoderManifestRequest$status": "

The state of the decoder manifest. If the status is ACTIVE, the decoder manifest can't be edited. If the status is DRAFT, you can edit the decoder manifest.

", + "UpdateModelManifestRequest$status": "

The state of the vehicle model. If the status is ACTIVE, the vehicle model can't be edited. If the status is DRAFT, you can edit the vehicle model.

" + } + }, + "ModelManifestSummary": { + "base": "

Information about a vehicle model (model manifest). You can use the API operation to return this information about multiple vehicle models.

", + "refs": { + "modelManifestSummaries$member": null + } + }, + "ModelSignalsMap": { + "base": null, + "refs": { + "CanDbcDefinition$signalsMap": "

Pairs every signal specified in your vehicle model with a signal decoder.

" + } + }, + "NetworkFileBlob": { + "base": null, + "refs": { + "NetworkFilesList$member": null + } + }, + "NetworkFileDefinition": { + "base": "

Specifications for defining a vehicle network.

", + "refs": { + "NetworkFileDefinitions$member": null + } + }, + "NetworkFileDefinitions": { + "base": null, + "refs": { + "ImportDecoderManifestRequest$networkFileDefinitions": "

The file to load into an Amazon Web Services account.

" + } + }, + "NetworkFilesList": { + "base": null, + "refs": { + "CanDbcDefinition$canDbcFiles": "

A list of DBC files. You can upload only one DBC file for each network interface and specify up to five (inclusive) files in the list.

" + } + }, + "NetworkInterface": { + "base": "

Represents a node and its specifications in an in-vehicle communication network. All signal decoders must be associated with a network node.

To return this information about all the network interfaces specified in a decoder manifest, use the API operation.

", + "refs": { + "NetworkInterfaces$member": null + } + }, + "NetworkInterfaceFailureReason": { + "base": null, + "refs": { + "InvalidNetworkInterface$reason": "

A message about why the interface isn't valid.

" + } + }, + "NetworkInterfaceType": { + "base": null, + "refs": { + "NetworkInterface$type": "

The network protocol for the vehicle. For example, CAN_SIGNAL specifies a protocol that defines how data is communicated between electronic control units (ECUs). OBD_SIGNAL specifies a protocol that defines how self-diagnostic data is communicated between ECUs.

" + } + }, + "NetworkInterfaces": { + "base": null, + "refs": { + "CreateDecoderManifestRequest$networkInterfaces": "

A list of information about available network interfaces.

", + "ListDecoderManifestNetworkInterfacesResponse$networkInterfaces": "

A list of information about network interfaces.

", + "UpdateDecoderManifestRequest$networkInterfacesToAdd": "

A list of information about the network interfaces to add to the decoder manifest.

", + "UpdateDecoderManifestRequest$networkInterfacesToUpdate": "

A list of information about the network interfaces to update in the decoder manifest.

" + } + }, + "Node": { + "base": "

A general abstraction of a signal. A node can be specified as an actuator, attribute, branch, or sensor.

", + "refs": { + "Nodes$member": null + } + }, + "NodeCounts": { + "base": "

Information about the number of nodes and node types in a vehicle network.

", + "refs": { + "GetSignalCatalogResponse$nodeCounts": "

The total number of network nodes specified in a signal catalog.

" + } + }, + "NodeDataType": { + "base": null, + "refs": { + "Actuator$dataType": "

The specified data type of the actuator.

", + "Attribute$dataType": "

The specified data type of the attribute.

", + "Sensor$dataType": "

The specified data type of the sensor.

" + } + }, + "NodePath": { + "base": null, + "refs": { + "DataExtraDimensionNodePathList$member": null, + "NodePaths$member": null + } + }, + "NodePaths": { + "base": null, + "refs": { + "UpdateModelManifestRequest$nodesToAdd": "

A list of fullyQualifiedName of nodes, which are a general abstraction of signals, to add to the vehicle model.

", + "UpdateModelManifestRequest$nodesToRemove": "

A list of fullyQualifiedName of nodes, which are a general abstraction of signals, to remove from the vehicle model.

", + "UpdateSignalCatalogRequest$nodesToRemove": "

A list of fullyQualifiedName of nodes to remove from the signal catalog.

" + } + }, + "Nodes": { + "base": null, + "refs": { + "CreateSignalCatalogRequest$nodes": "

A list of information about nodes, which are a general abstraction of signals. For more information, see the API data type.

", + "InvalidNodeException$invalidNodes": "

The specified node type isn't valid.

", + "ListModelManifestNodesResponse$nodes": "

A list of information about nodes.

", + "ListSignalCatalogNodesResponse$nodes": "

A list of information about nodes.

", + "UpdateSignalCatalogRequest$nodesToAdd": "

A list of information about nodes to add to the signal catalog.

", + "UpdateSignalCatalogRequest$nodesToUpdate": "

A list of information about nodes to update in the signal catalog.

" + } + }, + "ObdBitmaskLength": { + "base": null, + "refs": { + "ObdSignal$bitMaskLength": "

The number of bits to mask in a message.

" + } + }, + "ObdByteLength": { + "base": null, + "refs": { + "ObdSignal$byteLength": "

The length of a message.

" + } + }, + "ObdInterface": { + "base": "

A network interface that specifies the On-board diagnostic (OBD) II network protocol.

", + "refs": { + "NetworkInterface$obdInterface": "

Information about a network interface specified by the On-board diagnostic (OBD) II protocol.

" + } + }, + "ObdInterfaceName": { + "base": null, + "refs": { + "ObdInterface$name": "

The name of the interface.

" + } + }, + "ObdSignal": { + "base": "

Information about signal messages using the on-board diagnostics (OBD) II protocol in a vehicle.

", + "refs": { + "SignalDecoder$obdSignal": "

Information about signal decoder using the On-board diagnostic (OBD) II protocol.

" + } + }, + "ObdStandard": { + "base": null, + "refs": { + "ObdInterface$obdStandard": "

The standard OBD II PID.

" + } + }, + "ProtocolName": { + "base": null, + "refs": { + "CanInterface$protocolName": "

The name of the communication protocol for the interface.

" + } + }, + "ProtocolVersion": { + "base": null, + "refs": { + "CanInterface$protocolVersion": "

The version of the communication protocol for the interface.

" + } + }, + "PutLoggingOptionsRequest": { + "base": null, + "refs": { + } + }, + "PutLoggingOptionsResponse": { + "base": null, + "refs": { + } + }, + "RegisterAccountRequest": { + "base": null, + "refs": { + } + }, + "RegisterAccountResponse": { + "base": null, + "refs": { + } + }, + "RegistrationStatus": { + "base": null, + "refs": { + "GetRegisterAccountStatusResponse$accountStatus": "

The status of registering your account and resources. The status can be one of:

", + "IamRegistrationResponse$registrationStatus": "

The status of registering your IAM resource. The status can be one of REGISTRATION_SUCCESS, REGISTRATION_PENDING, REGISTRATION_FAILURE.

", + "RegisterAccountResponse$registerAccountStatus": "

The status of registering your Amazon Web Services account, IAM role, and Timestream resources.

", + "TimestreamRegistrationResponse$registrationStatus": "

The status of registering your Amazon Timestream resources. The status can be one of REGISTRATION_SUCCESS, REGISTRATION_PENDING, REGISTRATION_FAILURE.

" + } + }, + "ResourceNotFoundException": { + "base": "

The resource wasn't found.

", + "refs": { + } + }, + "RetryAfterSeconds": { + "base": null, + "refs": { + "InternalServerException$retryAfterSeconds": "

The number of seconds to wait before retrying the command.

", + "ThrottlingException$retryAfterSeconds": "

The number of seconds to wait before retrying the command.

" + } + }, + "Sensor": { + "base": "

An input component that reports the environmental condition of a vehicle.

You can collect data about fluid levels, temperatures, vibrations, or battery voltage from sensors.

", + "refs": { + "Node$sensor": null + } + }, + "SignalCatalogSummary": { + "base": "

Information about a collection of standardized signals, which can be attributes, branches, sensors, or actuators.

", + "refs": { + "signalCatalogSummaries$member": null + } + }, + "SignalDecoder": { + "base": "

Information about a signal decoder.

", + "refs": { + "SignalDecoders$member": null + } + }, + "SignalDecoderFailureReason": { + "base": null, + "refs": { + "InvalidSignalDecoder$reason": "

A message about why the signal decoder isn't valid.

" + } + }, + "SignalDecoderType": { + "base": null, + "refs": { + "SignalDecoder$type": "

The network protocol for the vehicle. For example, CAN_SIGNAL specifies a protocol that defines how data is communicated between electronic control units (ECUs). OBD_SIGNAL specifies a protocol that defines how self-diagnostic data is communicated between ECUs.

" + } + }, + "SignalDecoders": { + "base": null, + "refs": { + "CreateDecoderManifestRequest$signalDecoders": "

A list of information about signal decoders.

", + "ListDecoderManifestSignalsResponse$signalDecoders": "

Information about a list of signals to decode.

", + "UpdateDecoderManifestRequest$signalDecodersToAdd": "

A list of information about decoding additional signals to add to the decoder manifest.

", + "UpdateDecoderManifestRequest$signalDecodersToUpdate": "

A list of updated information about decoding signals to update in the decoder manifest.

" + } + }, + "SignalInformation": { + "base": "

Information about a signal.

", + "refs": { + "SignalInformationList$member": null + } + }, + "SignalInformationList": { + "base": null, + "refs": { + "CreateCampaignRequest$signalsToCollect": "

(Optional) A list of information about signals to collect.

", + "GetCampaignResponse$signalsToCollect": "

Information about a list of signals to collect data on.

" + } + }, + "SpoolingMode": { + "base": null, + "refs": { + "CreateCampaignRequest$spoolingMode": "

(Optional) Whether to store collected data after a vehicle lost a connection with the cloud. After a connection is re-established, the data is automatically forwarded to Amazon Web Services IoT FleetWise. If you want to store collected data when a vehicle loses connection with the cloud, use TO_DISK. If it's not specified, OFF is used.

Default: OFF

", + "GetCampaignResponse$spoolingMode": "

Whether to store collected data after a vehicle lost a connection with the cloud. After a connection is re-established, the data is automatically forwarded to Amazon Web Services IoT FleetWise.

" + } + }, + "String": { + "base": null, + "refs": { + "FormattedVss$vssJson": "

Provides the VSS in JSON format.

", + "ValidationExceptionField$name": "

The name of the parameter field with the validation error.

", + "ValidationExceptionField$message": "

A message about the validation error.

" + } + }, + "Tag": { + "base": "

A set of key/value pairs that are used to manage the resource.

", + "refs": { + "TagList$member": null + } + }, + "TagKey": { + "base": null, + "refs": { + "Tag$Key": "

The tag's key.

", + "TagKeyList$member": null + } + }, + "TagKeyList": { + "base": null, + "refs": { + "UntagResourceRequest$TagKeys": "

A list of the keys of the tags to be removed from the resource.

" + } + }, + "TagList": { + "base": null, + "refs": { + "CreateCampaignRequest$tags": "

Metadata that can be used to manage the campaign.

", + "CreateDecoderManifestRequest$tags": "

Metadata that can be used to manage the decoder manifest.

", + "CreateFleetRequest$tags": "

Metadata that can be used to manage the fleet.

", + "CreateModelManifestRequest$tags": "

Metadata that can be used to manage the vehicle model.

", + "CreateSignalCatalogRequest$tags": "

Metadata that can be used to manage the signal catalog.

", + "CreateVehicleRequest$tags": "

Metadata that can be used to manage the vehicle.

", + "CreateVehicleRequestItem$tags": "

Metadata which can be used to manage the vehicle.

", + "ImportSignalCatalogRequest$tags": "

Metadata that can be used to manage the signal catalog.

", + "ListTagsForResourceResponse$Tags": "

The list of tags assigned to the resource.

", + "TagResourceRequest$Tags": "

The new or modified tags for the resource.

" + } + }, + "TagResourceRequest": { + "base": null, + "refs": { + } + }, + "TagResourceResponse": { + "base": null, + "refs": { + } + }, + "TagValue": { + "base": null, + "refs": { + "Tag$Value": "

The tag's value.

" + } + }, + "ThrottlingException": { + "base": "

The request couldn't be completed due to throttling.

", + "refs": { + } + }, + "TimeBasedCollectionScheme": { + "base": "

Information about a collection scheme that uses a time period to decide how often to collect data.

", + "refs": { + "CollectionScheme$timeBasedCollectionScheme": "

Information about a collection scheme that uses a time period to decide how often to collect data.

" + } + }, + "TimestreamDatabaseName": { + "base": null, + "refs": { + "TimestreamRegistrationResponse$timestreamDatabaseName": "

The name of the Timestream database.

", + "TimestreamResources$timestreamDatabaseName": "

The name of the registered Amazon Timestream database.

" + } + }, + "TimestreamRegistrationResponse": { + "base": "

Information about the registered Amazon Timestream resources or errors, if any.

", + "refs": { + "GetRegisterAccountStatusResponse$timestreamRegistrationResponse": "

Information about the registered Amazon Timestream resources or errors, if any.

" + } + }, + "TimestreamResources": { + "base": "

The registered Amazon Timestream resources that Amazon Web Services IoT FleetWise edge agent software can transfer your vehicle data to.

", + "refs": { + "RegisterAccountRequest$timestreamResources": null, + "RegisterAccountResponse$timestreamResources": null + } + }, + "TimestreamTableName": { + "base": null, + "refs": { + "TimestreamRegistrationResponse$timestreamTableName": "

The name of the Timestream database table.

", + "TimestreamResources$timestreamTableName": "

The name of the registered Amazon Timestream database table.

" + } + }, + "TriggerMode": { + "base": null, + "refs": { + "ConditionBasedCollectionScheme$triggerMode": "

Whether to collect data for all triggering events (ALWAYS). Specify (RISING_EDGE), or specify only when the condition first evaluates to false. For example, triggering on \"AirbagDeployed\"; Users aren't interested on triggering when the airbag is already exploded; they only care about the change from not deployed => deployed.

" + } + }, + "UntagResourceRequest": { + "base": null, + "refs": { + } + }, + "UntagResourceResponse": { + "base": null, + "refs": { + } + }, + "UpdateCampaignAction": { + "base": null, + "refs": { + "UpdateCampaignRequest$action": "

Specifies how to update a campaign. The action can be one of the following:

" + } + }, + "UpdateCampaignRequest": { + "base": null, + "refs": { + } + }, + "UpdateCampaignResponse": { + "base": null, + "refs": { + } + }, + "UpdateDecoderManifestRequest": { + "base": null, + "refs": { + } + }, + "UpdateDecoderManifestResponse": { + "base": null, + "refs": { + } + }, + "UpdateFleetRequest": { + "base": null, + "refs": { + } + }, + "UpdateFleetResponse": { + "base": null, + "refs": { + } + }, + "UpdateMode": { + "base": null, + "refs": { + "UpdateVehicleRequest$attributeUpdateMode": "

The method the specified attributes will update the existing attributes on the vehicle. UseOverwite to replace the vehicle attributes with the specified attributes. Or use Merge to combine all attributes.

This is required if attributes are present in the input.

", + "UpdateVehicleRequestItem$attributeUpdateMode": "

The method the specified attributes will update the existing attributes on the vehicle. UseOverwite to replace the vehicle attributes with the specified attributes. Or use Merge to combine all attributes.

This is required if attributes are present in the input.

" + } + }, + "UpdateModelManifestRequest": { + "base": null, + "refs": { + } + }, + "UpdateModelManifestResponse": { + "base": null, + "refs": { + } + }, + "UpdateSignalCatalogRequest": { + "base": null, + "refs": { + } + }, + "UpdateSignalCatalogResponse": { + "base": null, + "refs": { + } + }, + "UpdateVehicleError": { + "base": "

An HTTP error resulting from updating the description for a vehicle.

", + "refs": { + "updateVehicleErrors$member": null + } + }, + "UpdateVehicleRequest": { + "base": null, + "refs": { + } + }, + "UpdateVehicleRequestItem": { + "base": "

Information about the vehicle to update.

", + "refs": { + "updateVehicleRequestItems$member": null + } + }, + "UpdateVehicleResponse": { + "base": null, + "refs": { + } + }, + "UpdateVehicleResponseItem": { + "base": "

Information about the updated vehicle.

", + "refs": { + "updateVehicleResponseItems$member": null + } + }, + "ValidationException": { + "base": "

The input fails to satisfy the constraints specified by an Amazon Web Services service.

", + "refs": { + } + }, + "ValidationExceptionField": { + "base": "

A validation error due to mismatch between the expected data type, length, or pattern of the parameter and the input.

", + "refs": { + "ValidationExceptionFieldList$member": null + } + }, + "ValidationExceptionFieldList": { + "base": null, + "refs": { + "ValidationException$fieldList": "

The list of fields that fail to satisfy the constraints specified by an Amazon Web Services service.

" + } + }, + "ValidationExceptionReason": { + "base": null, + "refs": { + "ValidationException$reason": "

The reason the input failed to satisfy the constraints specified by an Amazon Web Services service.

" + } + }, + "VehicleAssociationBehavior": { + "base": null, + "refs": { + "CreateVehicleRequest$associationBehavior": "

An option to create a new Amazon Web Services IoT thing when creating a vehicle, or to validate an existing Amazon Web Services IoT thing as a vehicle.

Default:

", + "CreateVehicleRequestItem$associationBehavior": "

An option to create a new Amazon Web Services IoT thing when creating a vehicle, or to validate an existing thing as a vehicle.

" + } + }, + "VehicleState": { + "base": null, + "refs": { + "VehicleStatus$status": "

The state of a vehicle, which can be one of the following:

" + } + }, + "VehicleStatus": { + "base": "

Information about the state of a vehicle and how it relates to the status of a campaign.

", + "refs": { + "VehicleStatusList$member": null + } + }, + "VehicleStatusList": { + "base": null, + "refs": { + "GetVehicleStatusResponse$campaigns": "

Lists information about the state of the vehicle with deployed campaigns.

" + } + }, + "VehicleSummary": { + "base": "

Information about a vehicle.

To return this information about vehicles in your account, you can use the API operation.

", + "refs": { + "vehicleSummaries$member": null + } + }, + "arn": { + "base": null, + "refs": { + "CampaignSummary$arn": "

The Amazon Resource Name (ARN) of a campaign.

", + "CampaignSummary$signalCatalogArn": "

The ARN of the signal catalog associated with the campaign.

", + "CampaignSummary$targetArn": "

The ARN of a vehicle or fleet to which the campaign is deployed.

", + "CreateCampaignRequest$signalCatalogArn": "

(Optional) The Amazon Resource Name (ARN) of the signal catalog to associate with the campaign.

", + "CreateCampaignRequest$targetArn": "

The ARN of the vehicle or fleet to deploy a campaign to.

", + "CreateCampaignResponse$arn": "

The ARN of the created campaign.

", + "CreateDecoderManifestRequest$modelManifestArn": "

The Amazon Resource Name (ARN) of the vehicle model (model manifest).

", + "CreateDecoderManifestResponse$arn": "

The ARN of the created decoder manifest.

", + "CreateFleetRequest$signalCatalogArn": "

The Amazon Resource Name (ARN) of a signal catalog.

", + "CreateFleetResponse$arn": "

The ARN of the created fleet.

", + "CreateModelManifestRequest$signalCatalogArn": "

The Amazon Resource Name (ARN) of a signal catalog.

", + "CreateModelManifestResponse$arn": "

The ARN of the created vehicle model.

", + "CreateSignalCatalogResponse$arn": "

The ARN of the created signal catalog.

", + "CreateVehicleRequest$modelManifestArn": "

The Amazon Resource Name ARN of a vehicle model.

", + "CreateVehicleRequest$decoderManifestArn": "

The ARN of a decoder manifest.

", + "CreateVehicleRequestItem$modelManifestArn": "

The ARN of the vehicle model (model manifest) to create the vehicle from.

", + "CreateVehicleRequestItem$decoderManifestArn": "

The Amazon Resource Name (ARN) of a decoder manifest associated with the vehicle to create.

", + "CreateVehicleResponse$arn": "

The ARN of the created vehicle.

", + "CreateVehicleResponse$thingArn": "

The ARN of a created or validated Amazon Web Services IoT thing.

", + "CreateVehicleResponseItem$arn": "

The ARN of the created vehicle.

", + "CreateVehicleResponseItem$thingArn": "

The ARN of a created or validated Amazon Web Services IoT thing.

", + "DecoderManifestSummary$arn": "

The ARN of a vehicle model (model manifest) associated with the decoder manifest.

", + "DecoderManifestSummary$modelManifestArn": "

The ARN of a vehicle model (model manifest) associated with the decoder manifest.

", + "DeleteCampaignResponse$arn": "

The Amazon Resource Name (ARN) of the deleted campaign.

The ARN isn’t returned if a campaign doesn’t exist.

", + "DeleteDecoderManifestResponse$arn": "

The Amazon Resource Name (ARN) of the deleted decoder manifest.

", + "DeleteFleetResponse$arn": "

The Amazon Resource Name (ARN) of the deleted fleet.

", + "DeleteModelManifestResponse$arn": "

The Amazon Resource Name (ARN) of the deleted model manifest.

", + "DeleteSignalCatalogResponse$arn": "

The Amazon Resource Name (ARN) of the deleted signal catalog.

", + "DeleteVehicleResponse$arn": "

The Amazon Resource Name (ARN) of the deleted vehicle.

", + "FleetSummary$arn": "

The Amazon Resource Name (ARN) of the fleet.

", + "FleetSummary$signalCatalogArn": "

The ARN of the signal catalog associated with the fleet.

", + "GetCampaignResponse$arn": "

The Amazon Resource Name (ARN) of the campaign.

", + "GetCampaignResponse$signalCatalogArn": "

The ARN of a signal catalog.

", + "GetCampaignResponse$targetArn": "

The ARN of the vehicle or the fleet targeted by the campaign.

", + "GetDecoderManifestResponse$arn": "

The Amazon Resource Name (ARN) of the decoder manifest.

", + "GetDecoderManifestResponse$modelManifestArn": "

The ARN of a vehicle model (model manifest) associated with the decoder manifest.

", + "GetFleetResponse$arn": "

The Amazon Resource Name (ARN) of the fleet.

", + "GetFleetResponse$signalCatalogArn": "

The ARN of a signal catalog associated with the fleet.

", + "GetModelManifestResponse$arn": "

The Amazon Resource Name (ARN) of the vehicle model.

", + "GetModelManifestResponse$signalCatalogArn": "

The ARN of the signal catalog associated with the vehicle model.

", + "GetSignalCatalogResponse$arn": "

The Amazon Resource Name (ARN) of the signal catalog.

", + "GetVehicleResponse$arn": "

The Amazon Resource Name (ARN) of the vehicle to retrieve information about.

", + "GetVehicleResponse$modelManifestArn": "

The ARN of a vehicle model (model manifest) associated with the vehicle.

", + "GetVehicleResponse$decoderManifestArn": "

The ARN of a decoder manifest associated with the vehicle.

", + "IamRegistrationResponse$roleArn": "

The Amazon Resource Name (ARN) of the IAM role to register.

", + "ImportDecoderManifestResponse$arn": "

The Amazon Resource Name (ARN) of the decoder manifest that was imported.

", + "ImportSignalCatalogResponse$arn": "

The Amazon Resource Name (ARN) of the imported signal catalog.

", + "ListDecoderManifestsRequest$modelManifestArn": "

The Amazon Resource Name (ARN) of a vehicle model (model manifest) associated with the decoder manifest.

", + "ListModelManifestsRequest$signalCatalogArn": "

The ARN of a signal catalog. If you specify a signal catalog, only the vehicle models associated with it are returned.

", + "ListVehiclesRequest$modelManifestArn": "

The Amazon Resource Name (ARN) of a vehicle model (model manifest). You can use this optional parameter to list only the vehicles created from a certain vehicle model.

", + "ModelManifestSummary$arn": "

The Amazon Resource Name (ARN) of the vehicle model.

", + "ModelManifestSummary$signalCatalogArn": "

The ARN of the signal catalog associated with the vehicle model.

", + "SignalCatalogSummary$arn": "

The Amazon Resource Name (ARN) of the signal catalog.

", + "TimestreamRegistrationResponse$timestreamDatabaseArn": "

The Amazon Resource Name (ARN) of the Timestream database.

", + "TimestreamRegistrationResponse$timestreamTableArn": "

The ARN of the Timestream database table.

", + "UpdateCampaignResponse$arn": "

The Amazon Resource Name (ARN) of the campaign.

", + "UpdateDecoderManifestResponse$arn": "

The Amazon Resource Name (ARN) of the updated decoder manifest.

", + "UpdateFleetResponse$arn": "

The Amazon Resource Name (ARN) of the updated fleet.

", + "UpdateModelManifestResponse$arn": "

The Amazon Resource Name (ARN) of the updated vehicle model.

", + "UpdateSignalCatalogResponse$arn": "

The ARN of the updated signal catalog.

", + "UpdateVehicleRequest$modelManifestArn": "

The ARN of a vehicle model (model manifest) associated with the vehicle.

", + "UpdateVehicleRequest$decoderManifestArn": "

The ARN of the decoder manifest associated with this vehicle.

", + "UpdateVehicleRequestItem$modelManifestArn": "

The ARN of the vehicle model (model manifest) associated with the vehicle to update.

", + "UpdateVehicleRequestItem$decoderManifestArn": "

The ARN of the signal decoder manifest associated with the vehicle to update.

", + "UpdateVehicleResponse$arn": "

The ARN of the updated vehicle.

", + "UpdateVehicleResponseItem$arn": "

The Amazon Resource Name (ARN) of the updated vehicle.

", + "VehicleSummary$arn": "

The Amazon Resource Name (ARN) of the vehicle.

", + "VehicleSummary$modelManifestArn": "

The ARN of a vehicle model (model manifest) associated with the vehicle.

", + "VehicleSummary$decoderManifestArn": "

The ARN of a decoder manifest associated with the vehicle.

" + } + }, + "attributeName": { + "base": null, + "refs": { + "attributesMap$key": null + } + }, + "attributeValue": { + "base": null, + "refs": { + "attributesMap$value": null + } + }, + "attributesMap": { + "base": null, + "refs": { + "CreateVehicleRequest$attributes": "

Static information about a vehicle in a key-value pair. For example: \"engineType\" : \"1.3 L R2\"

", + "CreateVehicleRequestItem$attributes": "

Static information about a vehicle in a key-value pair. For example: \"engine Type\" : \"v6\"

", + "GetVehicleResponse$attributes": "

Static information about a vehicle in a key-value pair. For example:

\"engineType\" : \"1.3 L R2\"

", + "UpdateVehicleRequest$attributes": "

Static information about a vehicle in a key-value pair. For example:

\"engineType\" : \"1.3 L R2\"

", + "UpdateVehicleRequestItem$attributes": "

Static information about a vehicle in a key-value pair. For example:

\"engineType\" : \"1.3 L R2\"

" + } + }, + "boolean": { + "base": null, + "refs": { + "CanSignal$isBigEndian": "

Whether the byte ordering of a CAN message is big-endian.

", + "CanSignal$isSigned": "

Whether the message data is specified as a signed value.

", + "ObdInterface$useExtendedIds": "

Whether to use extended IDs in the message.

", + "ObdInterface$hasTransmissionEcu": "

Whether the vehicle has a transmission control module (TCM).

" + } + }, + "campaignName": { + "base": null, + "refs": { + "CampaignSummary$name": "

The name of a campaign.

", + "CreateCampaignRequest$name": "

The name of the campaign to create.

", + "CreateCampaignResponse$name": "

The name of the created campaign.

", + "DeleteCampaignRequest$name": "

The name of the campaign to delete.

", + "DeleteCampaignResponse$name": "

The name of the deleted campaign.

", + "GetCampaignRequest$name": "

The name of the campaign to retrieve information about.

", + "GetCampaignResponse$name": "

The name of the campaign.

", + "UpdateCampaignRequest$name": "

The name of the campaign to update.

", + "UpdateCampaignResponse$name": "

The name of the updated campaign.

" + } + }, + "campaignSummaries": { + "base": null, + "refs": { + "ListCampaignsResponse$campaignSummaries": "

A summary of information about each campaign.

" + } + }, + "collectionPeriodMs": { + "base": null, + "refs": { + "TimeBasedCollectionScheme$periodMs": "

The time period (in milliseconds) to decide how often to collect data. For example, if the time period is 60000, the Edge Agent software collects data once every minute.

" + } + }, + "createVehicleErrors": { + "base": null, + "refs": { + "BatchCreateVehicleResponse$errors": "

A list of information about creation errors, or an empty list if there aren't any errors.

" + } + }, + "createVehicleRequestItems": { + "base": null, + "refs": { + "BatchCreateVehicleRequest$vehicles": "

A list of information about each vehicle to create. For more information, see the API data type.

" + } + }, + "createVehicleResponses": { + "base": null, + "refs": { + "BatchCreateVehicleResponse$vehicles": "

A list of information about a batch of created vehicles. For more information, see the API data type.

" + } + }, + "customerAccountId": { + "base": null, + "refs": { + "GetRegisterAccountStatusResponse$customerAccountId": "

The unique ID of the Amazon Web Services account, provided at account creation.

" + } + }, + "decoderManifestSummaries": { + "base": null, + "refs": { + "ListDecoderManifestsResponse$summaries": "

A list of information about each decoder manifest.

" + } + }, + "description": { + "base": null, + "refs": { + "Actuator$description": "

A brief description of the actuator.

", + "Attribute$description": "

A brief description of the attribute.

", + "Branch$description": "

A brief description of the branch.

", + "CampaignSummary$description": "

The description of the campaign.

", + "CreateCampaignRequest$description": "

An optional description of the campaign to help identify its purpose.

", + "CreateDecoderManifestRequest$description": "

A brief description of the decoder manifest.

", + "CreateFleetRequest$description": "

A brief description of the fleet to create.

", + "CreateModelManifestRequest$description": "

A brief description of the vehicle model.

", + "CreateSignalCatalogRequest$description": "

A brief description of the signal catalog.

", + "DecoderManifestSummary$description": "

A brief description of the decoder manifest.

", + "FleetSummary$description": "

A brief description of the fleet.

", + "GetCampaignResponse$description": "

The description of the campaign.

", + "GetDecoderManifestResponse$description": "

A brief description of the decoder manifest.

", + "GetFleetResponse$description": "

A brief description of the fleet.

", + "GetModelManifestResponse$description": "

A brief description of the vehicle model.

", + "GetSignalCatalogResponse$description": "

A brief description of the signal catalog.

", + "ImportSignalCatalogRequest$description": "

A brief description of the signal catalog.

", + "ModelManifestSummary$description": "

A brief description of the vehicle model.

", + "Sensor$description": "

A brief description of a sensor.

", + "UpdateCampaignRequest$description": "

The description of the campaign.

", + "UpdateDecoderManifestRequest$description": "

A brief description of the decoder manifest to update.

", + "UpdateFleetRequest$description": "

An updated description of the fleet.

", + "UpdateModelManifestRequest$description": "

A brief description of the vehicle model.

", + "UpdateSignalCatalogRequest$description": "

A brief description of the signal catalog to update.

" + } + }, + "double": { + "base": null, + "refs": { + "Actuator$min": "

The specified possible minimum value of an actuator.

", + "Actuator$max": "

The specified possible maximum value of an actuator.

", + "Attribute$min": "

The specified possible minimum value of the attribute.

", + "Attribute$max": "

The specified possible maximum value of the attribute.

", + "CanSignal$offset": "

Indicates where data appears in the CAN message.

", + "CanSignal$factor": "

A multiplier used to decode the CAN message.

", + "ObdSignal$scaling": "

A multiplier used to decode the message.

", + "ObdSignal$offset": "

Indicates where data appears in the message.

", + "Sensor$min": "

The specified possible minimum value of the sensor.

", + "Sensor$max": "

The specified possible maximum value of the sensor.

" + } + }, + "errorMessage": { + "base": null, + "refs": { + "IamRegistrationResponse$errorMessage": "

A message associated with a registration error.

", + "TimestreamRegistrationResponse$errorMessage": "

A message associated with a registration error.

" + } + }, + "eventExpression": { + "base": null, + "refs": { + "ConditionBasedCollectionScheme$expression": "

The logical expression used to recognize what data to collect. For example, $variable.Vehicle.OutsideAirTemperature >= 105.0.

" + } + }, + "fleetId": { + "base": null, + "refs": { + "AssociateVehicleFleetRequest$fleetId": "

The ID of a fleet.

", + "CreateFleetRequest$fleetId": "

The unique ID of the fleet to create.

", + "CreateFleetResponse$id": "

The ID of the created fleet.

", + "DeleteFleetRequest$fleetId": "

The ID of the fleet to delete.

", + "DeleteFleetResponse$id": "

The ID of the deleted fleet.

", + "DisassociateVehicleFleetRequest$fleetId": "

The unique ID of a fleet.

", + "FleetSummary$id": "

The unique ID of the fleet.

", + "GetFleetRequest$fleetId": "

The ID of the fleet to retrieve information about.

", + "GetFleetResponse$id": "

The ID of the fleet.

", + "ListVehiclesInFleetRequest$fleetId": "

The ID of a fleet.

", + "UpdateFleetRequest$fleetId": "

The ID of the fleet to update.

", + "UpdateFleetResponse$id": "

The ID of the updated fleet.

", + "fleets$member": null + } + }, + "fleetSummaries": { + "base": null, + "refs": { + "ListFleetsResponse$fleetSummaries": "

A list of information for each fleet.

" + } + }, + "fleets": { + "base": null, + "refs": { + "ListFleetsForVehicleResponse$fleets": "

A list of fleet IDs that the vehicle is associated with.

" + } + }, + "languageVersion": { + "base": null, + "refs": { + "ConditionBasedCollectionScheme$conditionLanguageVersion": "

Specifies the version of the conditional expression language.

" + } + }, + "listOfStrings": { + "base": null, + "refs": { + "Actuator$allowedValues": "

A list of possible values an actuator can take.

", + "Attribute$allowedValues": "

A list of possible values an attribute can be assigned.

", + "CreateModelManifestRequest$nodes": "

A list of nodes, which are a general abstraction of signals.

", + "Sensor$allowedValues": "

A list of possible values a sensor can take.

" + } + }, + "listVehiclesMaxResults": { + "base": null, + "refs": { + "ListVehiclesRequest$maxResults": "

The maximum number of items to return, between 1 and 100, inclusive.

" + } + }, + "maxResults": { + "base": null, + "refs": { + "GetVehicleStatusRequest$maxResults": "

The maximum number of items to return, between 1 and 100, inclusive.

", + "ListCampaignsRequest$maxResults": "

The maximum number of items to return, between 1 and 100, inclusive.

", + "ListDecoderManifestNetworkInterfacesRequest$maxResults": "

The maximum number of items to return, between 1 and 100, inclusive.

", + "ListDecoderManifestSignalsRequest$maxResults": "

The maximum number of items to return, between 1 and 100, inclusive.

", + "ListDecoderManifestsRequest$maxResults": "

The maximum number of items to return, between 1 and 100, inclusive.

", + "ListFleetsForVehicleRequest$maxResults": "

The maximum number of items to return, between 1 and 100, inclusive.

", + "ListFleetsRequest$maxResults": "

The maximum number of items to return, between 1 and 100, inclusive.

", + "ListModelManifestNodesRequest$maxResults": "

The maximum number of items to return, between 1 and 100, inclusive.

", + "ListModelManifestsRequest$maxResults": "

The maximum number of items to return, between 1 and 100, inclusive.

", + "ListSignalCatalogNodesRequest$maxResults": "

The maximum number of items to return, between 1 and 100, inclusive.

", + "ListSignalCatalogsRequest$maxResults": "

The maximum number of items to return, between 1 and 100, inclusive.

", + "ListVehiclesInFleetRequest$maxResults": "

The maximum number of items to return, between 1 and 100, inclusive.

" + } + }, + "maxSampleCount": { + "base": null, + "refs": { + "SignalInformation$maxSampleCount": "

The maximum number of samples to collect.

" + } + }, + "modelManifestSummaries": { + "base": null, + "refs": { + "ListModelManifestsResponse$summaries": "

A list of information about vehicle models.

" + } + }, + "nextToken": { + "base": null, + "refs": { + "GetVehicleStatusRequest$nextToken": "

A pagination token for the next set of results.

If the results of a search are large, only a portion of the results are returned, and a nextToken pagination token is returned in the response. To retrieve the next set of results, reissue the search request and include the returned token. When all results have been returned, the response does not contain a pagination token value.

", + "GetVehicleStatusResponse$nextToken": "

The token to retrieve the next set of results, or null if there are no more results.

", + "ListCampaignsRequest$nextToken": "

A pagination token for the next set of results.

If the results of a search are large, only a portion of the results are returned, and a nextToken pagination token is returned in the response. To retrieve the next set of results, reissue the search request and include the returned token. When all results have been returned, the response does not contain a pagination token value.

", + "ListCampaignsResponse$nextToken": "

The token to retrieve the next set of results, or null if there are no more results.

", + "ListDecoderManifestNetworkInterfacesRequest$nextToken": "

A pagination token for the next set of results.

If the results of a search are large, only a portion of the results are returned, and a nextToken pagination token is returned in the response. To retrieve the next set of results, reissue the search request and include the returned token. When all results have been returned, the response does not contain a pagination token value.

", + "ListDecoderManifestNetworkInterfacesResponse$nextToken": "

The token to retrieve the next set of results, or null if there are no more results.

", + "ListDecoderManifestSignalsRequest$nextToken": "

A pagination token for the next set of results.

If the results of a search are large, only a portion of the results are returned, and a nextToken pagination token is returned in the response. To retrieve the next set of results, reissue the search request and include the returned token. When all results have been returned, the response does not contain a pagination token value.

", + "ListDecoderManifestSignalsResponse$nextToken": "

The token to retrieve the next set of results, or null if there are no more results.

", + "ListDecoderManifestsRequest$nextToken": "

A pagination token for the next set of results.

If the results of a search are large, only a portion of the results are returned, and a nextToken pagination token is returned in the response. To retrieve the next set of results, reissue the search request and include the returned token. When all results have been returned, the response does not contain a pagination token value.

", + "ListDecoderManifestsResponse$nextToken": "

The token to retrieve the next set of results, or null if there are no more results.

", + "ListFleetsForVehicleRequest$nextToken": "

A pagination token for the next set of results.

If the results of a search are large, only a portion of the results are returned, and a nextToken pagination token is returned in the response. To retrieve the next set of results, reissue the search request and include the returned token. When all results have been returned, the response does not contain a pagination token value.

", + "ListFleetsForVehicleResponse$nextToken": "

The token to retrieve the next set of results, or null if there are no more results.

", + "ListFleetsRequest$nextToken": "

A pagination token for the next set of results.

If the results of a search are large, only a portion of the results are returned, and a nextToken pagination token is returned in the response. To retrieve the next set of results, reissue the search request and include the returned token. When all results have been returned, the response does not contain a pagination token value.

", + "ListFleetsResponse$nextToken": "

The token to retrieve the next set of results, or null if there are no more results.

", + "ListModelManifestNodesRequest$nextToken": "

A pagination token for the next set of results.

If the results of a search are large, only a portion of the results are returned, and a nextToken pagination token is returned in the response. To retrieve the next set of results, reissue the search request and include the returned token. When all results have been returned, the response does not contain a pagination token value.

", + "ListModelManifestNodesResponse$nextToken": "

The token to retrieve the next set of results, or null if there are no more results.

", + "ListModelManifestsRequest$nextToken": "

A pagination token for the next set of results.

If the results of a search are large, only a portion of the results are returned, and a nextToken pagination token is returned in the response. To retrieve the next set of results, reissue the search request and include the returned token. When all results have been returned, the response does not contain a pagination token value.

", + "ListModelManifestsResponse$nextToken": "

The token to retrieve the next set of results, or null if there are no more results.

", + "ListSignalCatalogNodesRequest$nextToken": "

A pagination token for the next set of results.

If the results of a search are large, only a portion of the results are returned, and a nextToken pagination token is returned in the response. To retrieve the next set of results, reissue the search request and include the returned token. When all results have been returned, the response does not contain a pagination token value.

", + "ListSignalCatalogNodesResponse$nextToken": "

The token to retrieve the next set of results, or null if there are no more results.

", + "ListSignalCatalogsRequest$nextToken": "

A pagination token for the next set of results.

If the results of a search are large, only a portion of the results are returned, and a nextToken pagination token is returned in the response. To retrieve the next set of results, reissue the search request and include the returned token. When all results have been returned, the response does not contain a pagination token value.

", + "ListSignalCatalogsResponse$nextToken": "

The token to retrieve the next set of results, or null if there are no more results.

", + "ListVehiclesInFleetRequest$nextToken": "

A pagination token for the next set of results.

If the results of a search are large, only a portion of the results are returned, and a nextToken pagination token is returned in the response. To retrieve the next set of results, reissue the search request and include the returned token. When all results have been returned, the response does not contain a pagination token value.

", + "ListVehiclesInFleetResponse$nextToken": "

The token to retrieve the next set of results, or null if there are no more results.

", + "ListVehiclesRequest$nextToken": "

A pagination token for the next set of results.

If the results of a search are large, only a portion of the results are returned, and a nextToken pagination token is returned in the response. To retrieve the next set of results, reissue the search request and include the returned token. When all results have been returned, the response does not contain a pagination token value.

", + "ListVehiclesResponse$nextToken": "

The token to retrieve the next set of results, or null if there are no more results.

" + } + }, + "nonNegativeInteger": { + "base": null, + "refs": { + "CanSignal$messageId": "

The ID of the message.

", + "CanSignal$startBit": "

Indicates the beginning of the CAN message.

", + "CanSignal$length": "

How many bytes of data are in the message.

", + "ObdInterface$requestMessageId": "

The ID of the message requesting vehicle data.

", + "ObdInterface$pidRequestIntervalSeconds": "

The maximum number message requests per second.

", + "ObdInterface$dtcRequestIntervalSeconds": "

The maximum number message requests per diagnostic trouble code per second.

", + "ObdSignal$serviceMode": "

The mode of operation (diagnostic service) in a message.

", + "ObdSignal$pid": "

The diagnostic code used to request data from a vehicle for this signal.

", + "ObdSignal$startByte": "

Indicates the beginning of the message.

", + "ObdSignal$bitRightShift": "

The number of positions to shift bits in the message.

" + } + }, + "number": { + "base": null, + "refs": { + "NodeCounts$totalNodes": "

The total number of nodes in a vehicle network.

", + "NodeCounts$totalBranches": "

The total number of nodes in a vehicle network that represent branches.

", + "NodeCounts$totalSensors": "

The total number of nodes in a vehicle network that represent sensors.

", + "NodeCounts$totalAttributes": "

The total number of nodes in a vehicle network that represent attributes.

", + "NodeCounts$totalActuators": "

The total number of nodes in a vehicle network that represent actuators.

", + "UpdateVehicleError$code": "

The relevant HTTP error code (400+).

" + } + }, + "positiveInteger": { + "base": null, + "refs": { + "ObdSignal$pidResponseLength": "

The length of the requested data.

" + } + }, + "priority": { + "base": null, + "refs": { + "CreateCampaignRequest$priority": "

(Optional) A number indicating the priority of one campaign over another campaign for a certain vehicle or fleet. A campaign with the lowest value is deployed to vehicles before any other campaigns. If it's not specified, 0 is used.

Default: 0

", + "GetCampaignResponse$priority": "

A number indicating the priority of one campaign over another campaign for a certain vehicle or fleet. A campaign with the lowest value is deployed to vehicles before any other campaigns.

" + } + }, + "resourceName": { + "base": null, + "refs": { + "CreateDecoderManifestRequest$name": "

The unique name of the decoder manifest to create.

", + "CreateDecoderManifestResponse$name": "

The name of the created decoder manifest.

", + "CreateModelManifestRequest$name": "

The name of the vehicle model to create.

", + "CreateModelManifestResponse$name": "

The name of the created vehicle model.

", + "CreateSignalCatalogRequest$name": "

The name of the signal catalog to create.

", + "CreateSignalCatalogResponse$name": "

The name of the created signal catalog.

", + "DeleteDecoderManifestRequest$name": "

The name of the decoder manifest to delete.

", + "DeleteDecoderManifestResponse$name": "

The name of the deleted decoder manifest.

", + "DeleteModelManifestRequest$name": "

The name of the model manifest to delete.

", + "DeleteModelManifestResponse$name": "

The name of the deleted model manifest.

", + "DeleteSignalCatalogRequest$name": "

The name of the signal catalog to delete.

", + "DeleteSignalCatalogResponse$name": "

The name of the deleted signal catalog.

", + "GetDecoderManifestRequest$name": "

The name of the decoder manifest to retrieve information about.

", + "GetModelManifestRequest$name": "

The name of the vehicle model to retrieve information about.

", + "GetModelManifestResponse$name": "

The name of the vehicle model.

", + "GetSignalCatalogRequest$name": "

The name of the signal catalog to retrieve information about.

", + "GetSignalCatalogResponse$name": "

The name of the signal catalog.

", + "ImportDecoderManifestRequest$name": "

The name of the decoder manifest to import.

", + "ImportDecoderManifestResponse$name": "

The name of the imported decoder manifest.

", + "ImportSignalCatalogRequest$name": "

The name of the signal catalog to import.

", + "ImportSignalCatalogResponse$name": "

The name of the imported signal catalog.

", + "ListDecoderManifestNetworkInterfacesRequest$name": "

The name of the decoder manifest to list information about.

", + "ListDecoderManifestSignalsRequest$name": "

The name of the decoder manifest to list information about.

", + "ListModelManifestNodesRequest$name": "

The name of the vehicle model to list information about.

", + "ListSignalCatalogNodesRequest$name": "

The name of the signal catalog to list information about.

", + "UpdateDecoderManifestRequest$name": "

The name of the decoder manifest to update.

", + "UpdateDecoderManifestResponse$name": "

The name of the updated decoder manifest.

", + "UpdateModelManifestRequest$name": "

The name of the vehicle model to update.

", + "UpdateModelManifestResponse$name": "

The name of the updated vehicle model.

", + "UpdateSignalCatalogRequest$name": "

The name of the signal catalog to update.

", + "UpdateSignalCatalogResponse$name": "

The name of the updated signal catalog.

" + } + }, + "signalCatalogSummaries": { + "base": null, + "refs": { + "ListSignalCatalogsResponse$summaries": "

A list of information about each signal catalog.

" + } + }, + "status": { + "base": null, + "refs": { + "ListCampaignsRequest$status": "

Optional parameter to filter the results by the status of each created campaign in your account. The status can be one of: CREATING, WAITING_FOR_APPROVAL, RUNNING, or SUSPENDED.

" + } + }, + "string": { + "base": null, + "refs": { + "AccessDeniedException$message": null, + "Actuator$fullyQualifiedName": "

The fully qualified name of the actuator. For example, the fully qualified name of an actuator might be Vehicle.Front.Left.Door.Lock.

", + "Actuator$unit": "

The scientific unit for the actuator.

", + "Actuator$assignedValue": "

A specified value for the actuator.

", + "Attribute$fullyQualifiedName": "

The fully qualified name of the attribute. For example, the fully qualified name of an attribute might be Vehicle.Body.Engine.Type.

", + "Attribute$unit": "

The scientific unit for the attribute.

", + "Attribute$assignedValue": "

A specified value for the attribute.

", + "Attribute$defaultValue": "

The default value of the attribute.

", + "Branch$fullyQualifiedName": "

The fully qualified name of the branch. For example, the fully qualified name of a branch might be Vehicle.Body.Engine.

", + "ConflictException$message": null, + "ConflictException$resource": "

The resource on which there are conflicting operations.

", + "ConflictException$resourceType": "

The type of resource on which there are conflicting operations..

", + "CreateVehicleError$code": "

An HTTP error code.

", + "CreateVehicleError$message": "

A description of the HTTP error.

", + "DecoderManifestSummary$name": "

The name of the decoder manifest.

", + "GetDecoderManifestResponse$name": "

The name of the decoder manifest.

", + "InternalServerException$message": null, + "InvalidNodeException$reason": "

The reason the node validation failed.

", + "InvalidSignal$reason": "

A message about why the signal isn't valid.

", + "InvalidSignalsException$message": null, + "LimitExceededException$message": null, + "LimitExceededException$resourceId": "

The identifier of the resource that was exceeded.

", + "LimitExceededException$resourceType": "

The type of resource that was exceeded.

", + "ModelManifestSummary$name": "

The name of the vehicle model.

", + "ModelSignalsMap$key": null, + "ModelSignalsMap$value": null, + "ResourceNotFoundException$message": null, + "ResourceNotFoundException$resourceId": "

The identifier of the resource that wasn't found.

", + "ResourceNotFoundException$resourceType": "

The type of resource that wasn't found.

", + "Sensor$fullyQualifiedName": "

The fully qualified name of the sensor. For example, the fully qualified name of a sensor might be Vehicle.Body.Engine.Battery.

", + "Sensor$unit": "

The scientific unit of measurement for data collected by the sensor.

", + "SignalCatalogSummary$name": "

The name of the signal catalog.

", + "ThrottlingException$message": null, + "ThrottlingException$quotaCode": "

The quota identifier of the applied throttling rules for this request.

", + "ThrottlingException$serviceCode": "

The code for the service that couldn't be completed due to throttling.

", + "UpdateVehicleError$message": "

A message associated with the error.

", + "ValidationException$message": null, + "VehicleStatus$campaignName": "

The name of a campaign.

", + "listOfStrings$member": null + } + }, + "timestamp": { + "base": null, + "refs": { + "CampaignSummary$creationTime": "

The time the campaign was created.

", + "CampaignSummary$lastModificationTime": "

The last time the campaign was modified.

", + "CreateCampaignRequest$startTime": "

(Optional) The time, in milliseconds, to deliver a campaign after it was approved. If it's not specified, 0 is used.

Default: 0

", + "CreateCampaignRequest$expiryTime": "

(Optional) The time the campaign expires, in seconds since epoch (January 1, 1970 at midnight UTC time). Vehicle data won't be collected after the campaign expires.

Default: 253402243200 (December 31, 9999, 00:00:00 UTC)

", + "DecoderManifestSummary$creationTime": "

The time the decoder manifest was created in seconds since epoch (January 1, 1970 at midnight UTC time).

", + "DecoderManifestSummary$lastModificationTime": "

The time the decoder manifest was last updated in seconds since epoch (January 1, 1970 at midnight UTC time).

", + "FleetSummary$creationTime": "

The time the fleet was created, in seconds since epoch (January 1, 1970 at midnight UTC time).

", + "FleetSummary$lastModificationTime": "

The time the fleet was last updated in seconds since epoch (January 1, 1970 at midnight UTC time).

", + "GetCampaignResponse$startTime": "

The time, in milliseconds, to deliver a campaign after it was approved.

", + "GetCampaignResponse$expiryTime": "

The time the campaign expires, in seconds since epoch (January 1, 1970 at midnight UTC time). Vehicle data won't be collected after the campaign expires.

", + "GetCampaignResponse$creationTime": "

The time the campaign was created in seconds since epoch (January 1, 1970 at midnight UTC time).

", + "GetCampaignResponse$lastModificationTime": "

The last time the campaign was modified.

", + "GetDecoderManifestResponse$creationTime": "

The time the decoder manifest was created in seconds since epoch (January 1, 1970 at midnight UTC time).

", + "GetDecoderManifestResponse$lastModificationTime": "

The time the decoder manifest was last updated in seconds since epoch (January 1, 1970 at midnight UTC time).

", + "GetFleetResponse$creationTime": "

The time the fleet was created in seconds since epoch (January 1, 1970 at midnight UTC time).

", + "GetFleetResponse$lastModificationTime": "

The time the fleet was last updated, in seconds since epoch (January 1, 1970 at midnight UTC time).

", + "GetModelManifestResponse$creationTime": "

The time the vehicle model was created, in seconds since epoch (January 1, 1970 at midnight UTC time).

", + "GetModelManifestResponse$lastModificationTime": "

The last time the vehicle model was modified.

", + "GetRegisterAccountStatusResponse$creationTime": "

The time the account was registered, in seconds since epoch (January 1, 1970 at midnight UTC time).

", + "GetRegisterAccountStatusResponse$lastModificationTime": "

The time this registration was last updated, in seconds since epoch (January 1, 1970 at midnight UTC time).

", + "GetSignalCatalogResponse$creationTime": "

The time the signal catalog was created in seconds since epoch (January 1, 1970 at midnight UTC time).

", + "GetSignalCatalogResponse$lastModificationTime": "

The last time the signal catalog was modified.

", + "GetVehicleResponse$creationTime": "

The time the vehicle was created in seconds since epoch (January 1, 1970 at midnight UTC time).

", + "GetVehicleResponse$lastModificationTime": "

The time the vehicle was last updated in seconds since epoch (January 1, 1970 at midnight UTC time).

", + "ModelManifestSummary$creationTime": "

The time the vehicle model was created, in seconds since epoch (January 1, 1970 at midnight UTC time).

", + "ModelManifestSummary$lastModificationTime": "

The time the vehicle model was last updated, in seconds since epoch (January 1, 1970 at midnight UTC time).

", + "RegisterAccountResponse$creationTime": "

The time the account was registered, in seconds since epoch (January 1, 1970 at midnight UTC time).

", + "RegisterAccountResponse$lastModificationTime": "

The time this registration was last updated, in seconds since epoch (January 1, 1970 at midnight UTC time).

", + "SignalCatalogSummary$creationTime": "

The time the signal catalog was created in seconds since epoch (January 1, 1970 at midnight UTC time).

", + "SignalCatalogSummary$lastModificationTime": "

The time the signal catalog was last updated in seconds since epoch (January 1, 1970 at midnight UTC time).

", + "VehicleSummary$creationTime": "

The time the vehicle was created in seconds since epoch (January 1, 1970 at midnight UTC time).

", + "VehicleSummary$lastModificationTime": "

The time the vehicle was last updated in seconds since epoch (January 1, 1970 at midnight UTC time).

" + } + }, + "uint32": { + "base": null, + "refs": { + "ConditionBasedCollectionScheme$minimumTriggerIntervalMs": "

The minimum duration of time between two triggering events to collect data, in milliseconds.

If a signal changes often, you might want to collect data at a slower rate.

", + "CreateCampaignRequest$postTriggerCollectionDuration": "

(Optional) How long (in milliseconds) to collect raw data after a triggering event initiates the collection. If it's not specified, 0 is used.

Default: 0

", + "GetCampaignResponse$postTriggerCollectionDuration": "

How long (in seconds) to collect raw data after a triggering event initiates the collection.

", + "SignalInformation$minimumSamplingIntervalMs": "

The minimum duration of time (in milliseconds) between two triggering events to collect data.

If a signal changes often, you might want to collect data at a slower rate.

" + } + }, + "updateVehicleErrors": { + "base": null, + "refs": { + "BatchUpdateVehicleResponse$errors": "

A list of information about errors returned while updating a batch of vehicles, or, if there aren't any errors, an empty list.

" + } + }, + "updateVehicleRequestItems": { + "base": null, + "refs": { + "BatchUpdateVehicleRequest$vehicles": "

A list of information about the vehicles to update. For more information, see the API data type.

" + } + }, + "updateVehicleResponseItems": { + "base": null, + "refs": { + "BatchUpdateVehicleResponse$vehicles": "

A list of information about the batch of updated vehicles.

This list contains only unique IDs for the vehicles that were updated.

" + } + }, + "vehicleName": { + "base": null, + "refs": { + "AssociateVehicleFleetRequest$vehicleName": "

The unique ID of the vehicle to associate with the fleet.

", + "CreateVehicleError$vehicleName": "

The ID of the vehicle with the error.

", + "CreateVehicleRequest$vehicleName": "

The unique ID of the vehicle to create.

", + "CreateVehicleRequestItem$vehicleName": "

The unique ID of the vehicle to create.

", + "CreateVehicleResponse$vehicleName": "

The unique ID of the created vehicle.

", + "CreateVehicleResponseItem$vehicleName": "

The unique ID of the vehicle to create.

", + "DeleteVehicleRequest$vehicleName": "

The ID of the vehicle to delete.

", + "DeleteVehicleResponse$vehicleName": "

The ID of the deleted vehicle.

", + "DisassociateVehicleFleetRequest$vehicleName": "

The unique ID of the vehicle to disassociate from the fleet.

", + "GetVehicleRequest$vehicleName": "

The ID of the vehicle to retrieve information about.

", + "GetVehicleResponse$vehicleName": "

The ID of the vehicle.

", + "GetVehicleStatusRequest$vehicleName": "

The ID of the vehicle to retrieve information about.

", + "ListFleetsForVehicleRequest$vehicleName": "

The ID of the vehicle to retrieve information about.

", + "UpdateVehicleError$vehicleName": "

The ID of the vehicle with the error.

", + "UpdateVehicleRequest$vehicleName": "

The unique ID of the vehicle to update.

", + "UpdateVehicleRequestItem$vehicleName": "

The unique ID of the vehicle to update.

", + "UpdateVehicleResponse$vehicleName": "

The ID of the updated vehicle.

", + "UpdateVehicleResponseItem$vehicleName": "

The unique ID of the updated vehicle.

", + "VehicleStatus$vehicleName": "

The unique ID of the vehicle.

", + "VehicleSummary$vehicleName": "

The unique ID of the vehicle.

", + "vehicles$member": null + } + }, + "vehicleSummaries": { + "base": null, + "refs": { + "ListVehiclesResponse$vehicleSummaries": "

A list of vehicles and information about them.

" + } + }, + "vehicles": { + "base": null, + "refs": { + "ListVehiclesInFleetResponse$vehicles": "

A list of vehicles associated with the fleet.

" + } + }, + "wildcardSignalName": { + "base": null, + "refs": { + "SignalInformation$name": "

The name of the signal.

" + } + } + } +} diff --git a/models/apis/iotfleetwise/2021-06-17/examples-1.json b/models/apis/iotfleetwise/2021-06-17/examples-1.json new file mode 100644 index 00000000000..0ea7e3b0bbe --- /dev/null +++ b/models/apis/iotfleetwise/2021-06-17/examples-1.json @@ -0,0 +1,5 @@ +{ + "version": "1.0", + "examples": { + } +} diff --git a/models/apis/iotfleetwise/2021-06-17/paginators-1.json b/models/apis/iotfleetwise/2021-06-17/paginators-1.json new file mode 100644 index 00000000000..ff157ff1753 --- /dev/null +++ b/models/apis/iotfleetwise/2021-06-17/paginators-1.json @@ -0,0 +1,82 @@ +{ + "pagination": { + "GetVehicleStatus": { + "input_token": "nextToken", + "output_token": "nextToken", + "limit_key": "maxResults", + "result_key": "campaigns" + }, + "ListCampaigns": { + "input_token": "nextToken", + "output_token": "nextToken", + "limit_key": "maxResults", + "result_key": "campaignSummaries" + }, + "ListDecoderManifestNetworkInterfaces": { + "input_token": "nextToken", + "output_token": "nextToken", + "limit_key": "maxResults", + "result_key": "networkInterfaces" + }, + "ListDecoderManifestSignals": { + "input_token": "nextToken", + "output_token": "nextToken", + "limit_key": "maxResults", + "result_key": "signalDecoders" + }, + "ListDecoderManifests": { + "input_token": "nextToken", + "output_token": "nextToken", + "limit_key": "maxResults", + "result_key": "summaries" + }, + "ListFleets": { + "input_token": "nextToken", + "output_token": "nextToken", + "limit_key": "maxResults", + "result_key": "fleetSummaries" + }, + "ListFleetsForVehicle": { + "input_token": "nextToken", + "output_token": "nextToken", + "limit_key": "maxResults", + "result_key": "fleets" + }, + "ListModelManifestNodes": { + "input_token": "nextToken", + "output_token": "nextToken", + "limit_key": "maxResults", + "result_key": "nodes" + }, + "ListModelManifests": { + "input_token": "nextToken", + "output_token": "nextToken", + "limit_key": "maxResults", + "result_key": "summaries" + }, + "ListSignalCatalogNodes": { + "input_token": "nextToken", + "output_token": "nextToken", + "limit_key": "maxResults", + "result_key": "nodes" + }, + "ListSignalCatalogs": { + "input_token": "nextToken", + "output_token": "nextToken", + "limit_key": "maxResults", + "result_key": "summaries" + }, + "ListVehicles": { + "input_token": "nextToken", + "output_token": "nextToken", + "limit_key": "maxResults", + "result_key": "vehicleSummaries" + }, + "ListVehiclesInFleet": { + "input_token": "nextToken", + "output_token": "nextToken", + "limit_key": "maxResults", + "result_key": "vehicles" + } + } +} diff --git a/models/apis/iotfleetwise/2021-06-17/smoke.json b/models/apis/iotfleetwise/2021-06-17/smoke.json new file mode 100644 index 00000000000..a9756813e4a --- /dev/null +++ b/models/apis/iotfleetwise/2021-06-17/smoke.json @@ -0,0 +1,6 @@ +{ + "version": 1, + "defaultRegion": "us-west-2", + "testCases": [ + ] +} diff --git a/models/apis/iotfleetwise/2021-06-17/waiters-2.json b/models/apis/iotfleetwise/2021-06-17/waiters-2.json new file mode 100644 index 00000000000..13f60ee66be --- /dev/null +++ b/models/apis/iotfleetwise/2021-06-17/waiters-2.json @@ -0,0 +1,5 @@ +{ + "version": 2, + "waiters": { + } +} diff --git a/models/apis/ssm/2014-11-06/api-2.json b/models/apis/ssm/2014-11-06/api-2.json index dca15532941..ace9db2caf2 100644 --- a/models/apis/ssm/2014-11-06/api-2.json +++ b/models/apis/ssm/2014-11-06/api-2.json @@ -2084,6 +2084,50 @@ "max":10 }, "AggregatorSchemaOnly":{"type":"boolean"}, + "Alarm":{ + "type":"structure", + "required":["Name"], + "members":{ + "Name":{"shape":"AlarmName"} + } + }, + "AlarmConfiguration":{ + "type":"structure", + "required":["Alarms"], + "members":{ + "IgnorePollAlarmFailure":{"shape":"Boolean"}, + "Alarms":{"shape":"AlarmList"} + } + }, + "AlarmList":{ + "type":"list", + "member":{"shape":"Alarm"}, + "max":1, + "min":1 + }, + "AlarmName":{ + "type":"string", + "max":255, + "min":1, + "pattern":"^(?!\\s*$).+" + }, + "AlarmStateInformation":{ + "type":"structure", + "required":[ + "Name", + "State" + ], + "members":{ + "Name":{"shape":"AlarmName"}, + "State":{"shape":"ExternalAlarmState"} + } + }, + "AlarmStateInformationList":{ + "type":"list", + "member":{"shape":"AlarmStateInformation"}, + "max":1, + "min":1 + }, "AllowedPattern":{ "type":"string", "max":1024, @@ -2202,7 +2246,9 @@ "TargetMaps":{ "shape":"TargetMaps", "box":true - } + }, + "AlarmConfiguration":{"shape":"AlarmConfiguration"}, + "TriggeredAlarms":{"shape":"AlarmStateInformationList"} } }, "AssociationDescriptionList":{ @@ -2226,7 +2272,9 @@ "DetailedStatus":{"shape":"StatusName"}, "CreatedTime":{"shape":"DateTime"}, "LastExecutionDate":{"shape":"DateTime"}, - "ResourceCountByStatus":{"shape":"ResourceCountByStatus"} + "ResourceCountByStatus":{"shape":"ResourceCountByStatus"}, + "AlarmConfiguration":{"shape":"AlarmConfiguration"}, + "TriggeredAlarms":{"shape":"AlarmStateInformationList"} } }, "AssociationExecutionDoesNotExist":{ @@ -2623,6 +2671,8 @@ "box":true }, "ProgressCounters":{"shape":"ProgressCounters"}, + "AlarmConfiguration":{"shape":"AlarmConfiguration"}, + "TriggeredAlarms":{"shape":"AlarmStateInformationList"}, "AutomationSubtype":{"shape":"AutomationSubtype"}, "ScheduledTime":{"shape":"DateTime"}, "Runbooks":{"shape":"Runbooks"}, @@ -2713,6 +2763,8 @@ "MaxErrors":{"shape":"MaxErrors"}, "Target":{"shape":"String"}, "AutomationType":{"shape":"AutomationType"}, + "AlarmConfiguration":{"shape":"AlarmConfiguration"}, + "TriggeredAlarms":{"shape":"AlarmStateInformationList"}, "AutomationSubtype":{"shape":"AutomationSubtype"}, "ScheduledTime":{"shape":"DateTime"}, "Runbooks":{"shape":"Runbooks"}, @@ -2942,7 +2994,9 @@ "ServiceRole":{"shape":"ServiceRole"}, "NotificationConfig":{"shape":"NotificationConfig"}, "CloudWatchOutputConfig":{"shape":"CloudWatchOutputConfig"}, - "TimeoutSeconds":{"shape":"TimeoutSeconds"} + "TimeoutSeconds":{"shape":"TimeoutSeconds"}, + "AlarmConfiguration":{"shape":"AlarmConfiguration"}, + "TriggeredAlarms":{"shape":"AlarmStateInformationList"} } }, "CommandFilter":{ @@ -3342,7 +3396,8 @@ "TargetMaps":{ "shape":"TargetMaps", "box":true - } + }, + "AlarmConfiguration":{"shape":"AlarmConfiguration"} } }, "CreateAssociationBatchResult":{ @@ -3383,7 +3438,8 @@ "Tags":{ "shape":"TagList", "box":true - } + }, + "AlarmConfiguration":{"shape":"AlarmConfiguration"} } }, "CreateAssociationResult":{ @@ -4881,6 +4937,13 @@ "pattern":"[\\w+=,.@/-]+" }, "ExpirationDate":{"type":"timestamp"}, + "ExternalAlarmState":{ + "type":"string", + "enum":[ + "UNKNOWN", + "ALARM" + ] + }, "FailedCreateAssociation":{ "type":"structure", "members":{ @@ -5177,7 +5240,9 @@ "Status":{"shape":"MaintenanceWindowExecutionStatus"}, "StatusDetails":{"shape":"MaintenanceWindowExecutionStatusDetails"}, "StartTime":{"shape":"DateTime"}, - "EndTime":{"shape":"DateTime"} + "EndTime":{"shape":"DateTime"}, + "AlarmConfiguration":{"shape":"AlarmConfiguration"}, + "TriggeredAlarms":{"shape":"AlarmStateInformationList"} } }, "GetMaintenanceWindowRequest":{ @@ -5241,7 +5306,8 @@ "CutoffBehavior":{ "shape":"MaintenanceWindowTaskCutoffBehavior", "box":true - } + }, + "AlarmConfiguration":{"shape":"AlarmConfiguration"} } }, "GetOpsItemRequest":{ @@ -6883,7 +6949,9 @@ "StartTime":{"shape":"DateTime"}, "EndTime":{"shape":"DateTime"}, "TaskArn":{"shape":"MaintenanceWindowTaskArn"}, - "TaskType":{"shape":"MaintenanceWindowTaskType"} + "TaskType":{"shape":"MaintenanceWindowTaskType"}, + "AlarmConfiguration":{"shape":"AlarmConfiguration"}, + "TriggeredAlarms":{"shape":"AlarmStateInformationList"} } }, "MaintenanceWindowExecutionTaskIdentityList":{ @@ -7118,7 +7186,8 @@ "CutoffBehavior":{ "shape":"MaintenanceWindowTaskCutoffBehavior", "box":true - } + }, + "AlarmConfiguration":{"shape":"AlarmConfiguration"} } }, "MaintenanceWindowTaskArn":{ @@ -8932,7 +9001,8 @@ "CutoffBehavior":{ "shape":"MaintenanceWindowTaskCutoffBehavior", "box":true - } + }, + "AlarmConfiguration":{"shape":"AlarmConfiguration"} } }, "RegisterTaskWithMaintenanceWindowResult":{ @@ -9454,7 +9524,8 @@ "MaxErrors":{"shape":"MaxErrors"}, "ServiceRoleArn":{"shape":"ServiceRole"}, "NotificationConfig":{"shape":"NotificationConfig"}, - "CloudWatchOutputConfig":{"shape":"CloudWatchOutputConfig"} + "CloudWatchOutputConfig":{"shape":"CloudWatchOutputConfig"}, + "AlarmConfiguration":{"shape":"AlarmConfiguration"} } }, "SendCommandResult":{ @@ -9718,7 +9789,8 @@ "shape":"TargetLocations", "box":true }, - "Tags":{"shape":"TagList"} + "Tags":{"shape":"TagList"}, + "AlarmConfiguration":{"shape":"AlarmConfiguration"} } }, "StartAutomationExecutionResult":{ @@ -10204,7 +10276,8 @@ "TargetMaps":{ "shape":"TargetMaps", "box":true - } + }, + "AlarmConfiguration":{"shape":"AlarmConfiguration"} } }, "UpdateAssociationResult":{ @@ -10406,7 +10479,8 @@ "CutoffBehavior":{ "shape":"MaintenanceWindowTaskCutoffBehavior", "box":true - } + }, + "AlarmConfiguration":{"shape":"AlarmConfiguration"} } }, "UpdateMaintenanceWindowTaskResult":{ @@ -10428,7 +10502,8 @@ "CutoffBehavior":{ "shape":"MaintenanceWindowTaskCutoffBehavior", "box":true - } + }, + "AlarmConfiguration":{"shape":"AlarmConfiguration"} } }, "UpdateManagedInstanceRoleRequest":{ diff --git a/models/apis/ssm/2014-11-06/docs-2.json b/models/apis/ssm/2014-11-06/docs-2.json index e28cb5aff02..991718cee60 100644 --- a/models/apis/ssm/2014-11-06/docs-2.json +++ b/models/apis/ssm/2014-11-06/docs-2.json @@ -234,6 +234,65 @@ "GetInventorySchemaRequest$Aggregator": "

Returns inventory schemas that support aggregation. For example, this call returns the AWS:InstanceInformation type, because it supports aggregation based on the PlatformName, PlatformType, and PlatformVersion attributes.

" } }, + "Alarm": { + "base": "

A CloudWatch alarm you apply to an automation or command.

", + "refs": { + "AlarmList$member": null + } + }, + "AlarmConfiguration": { + "base": "

The details for the CloudWatch alarm you want to apply to an automation or command.

", + "refs": { + "AssociationDescription$AlarmConfiguration": null, + "AssociationExecution$AlarmConfiguration": null, + "AutomationExecution$AlarmConfiguration": "

The details for the CloudWatch alarm applied to your automation.

", + "AutomationExecutionMetadata$AlarmConfiguration": "

The details for the CloudWatch alarm applied to your automation.

", + "Command$AlarmConfiguration": "

The details for the CloudWatch alarm applied to your command.

", + "CreateAssociationBatchRequestEntry$AlarmConfiguration": null, + "CreateAssociationRequest$AlarmConfiguration": null, + "GetMaintenanceWindowExecutionTaskResult$AlarmConfiguration": "

The details for the CloudWatch alarm you applied to your maintenance window task.

", + "GetMaintenanceWindowTaskResult$AlarmConfiguration": "

The details for the CloudWatch alarm you applied to your maintenance window task.

", + "MaintenanceWindowExecutionTaskIdentity$AlarmConfiguration": "

The details for the CloudWatch alarm applied to your maintenance window task.

", + "MaintenanceWindowTask$AlarmConfiguration": "

The details for the CloudWatch alarm applied to your maintenance window task.

", + "RegisterTaskWithMaintenanceWindowRequest$AlarmConfiguration": "

The CloudWatch alarm you want to apply to your maintenance window task.

", + "SendCommandRequest$AlarmConfiguration": "

The CloudWatch alarm you want to apply to your command.

", + "StartAutomationExecutionRequest$AlarmConfiguration": "

The CloudWatch alarm you want to apply to your automation.

", + "UpdateAssociationRequest$AlarmConfiguration": null, + "UpdateMaintenanceWindowTaskRequest$AlarmConfiguration": "

The CloudWatch alarm you want to apply to your maintenance window task.

", + "UpdateMaintenanceWindowTaskResult$AlarmConfiguration": "

The details for the CloudWatch alarm you applied to your maintenance window task.

" + } + }, + "AlarmList": { + "base": null, + "refs": { + "AlarmConfiguration$Alarms": "

The name of the CloudWatch alarm specified in the configuration.

" + } + }, + "AlarmName": { + "base": null, + "refs": { + "Alarm$Name": "

The name of your CloudWatch alarm.

", + "AlarmStateInformation$Name": "

The name of your CloudWatch alarm.

" + } + }, + "AlarmStateInformation": { + "base": "

The details about the state of your CloudWatch alarm.

", + "refs": { + "AlarmStateInformationList$member": null + } + }, + "AlarmStateInformationList": { + "base": null, + "refs": { + "AssociationDescription$TriggeredAlarms": "

The CloudWatch alarm that was invoked during the association.

", + "AssociationExecution$TriggeredAlarms": "

The CloudWatch alarms that were invoked by the association.

", + "AutomationExecution$TriggeredAlarms": "

The CloudWatch alarm that was invoked by the automation.

", + "AutomationExecutionMetadata$TriggeredAlarms": "

The CloudWatch alarm that was invoked by the automation.

", + "Command$TriggeredAlarms": "

The CloudWatch alarm that was invoked by the command.

", + "GetMaintenanceWindowExecutionTaskResult$TriggeredAlarms": "

The CloudWatch alarms that were invoked by the maintenance window task.

", + "MaintenanceWindowExecutionTaskIdentity$TriggeredAlarms": "

The CloudWatch alarm that was invoked by the maintenance window task.

" + } + }, "AllowedPattern": { "base": null, "refs": { @@ -894,6 +953,7 @@ "base": null, "refs": { "Activation$Expired": "

Whether or not the activation is expired.

", + "AlarmConfiguration$IgnorePollAlarmFailure": "

If you specify true for this value, your automation or command continue to run even if we can't gather information about the state of your CloudWatch alarm. The default value is false.

", "AutomationExecution$StepExecutionsTruncated": "

A boolean value that indicates if the response contains the full list of the Automation step executions. If true, use the DescribeAutomationStepExecutions API operation to get the full list of step executions.

", "BaselineOverride$ApprovedPatchesEnableNonSecurity": "

Indicates whether the list of approved patches includes non-security updates that should be applied to the managed nodes. The default value is false. Applies to Linux managed nodes only.

", "CreatePatchBaselineRequest$ApprovedPatchesEnableNonSecurity": "

Indicates whether the list of approved patches includes non-security updates that should be applied to the managed nodes. The default value is false. Applies to Linux managed nodes only.

", @@ -2629,6 +2689,12 @@ "CreateActivationRequest$ExpirationDate": "

The date by which this activation request should expire, in timestamp format, such as \"2021-07-07T00:00:00\". You can specify a date up to 30 days in advance. If you don't provide an expiration date, the activation code expires in 24 hours.

" } }, + "ExternalAlarmState": { + "base": null, + "refs": { + "AlarmStateInformation$State": "

The state of your CloudWatch alarm.

" + } + }, "FailedCreateAssociation": { "base": "

Describes a failed association.

", "refs": { @@ -3453,7 +3519,7 @@ } }, "InvalidTag": { - "base": "

The specified tag key or value is not valid.

", + "base": "

The tag key or value isn't valid.

", "refs": { } }, @@ -7637,7 +7703,7 @@ "Activation$Tags": "

Tags assigned to the activation.

", "AddTagsToResourceRequest$Tags": "

One or more tags. The value parameter is required.

Don't enter personally identifiable information in this field.

", "CreateActivationRequest$Tags": "

Optional metadata that you assign to a resource. Tags enable you to categorize a resource in different ways, such as by purpose, owner, or environment. For example, you might want to tag an activation to identify which servers or virtual machines (VMs) in your on-premises environment you intend to activate. In this case, you could specify the following key-value pairs:

When you install SSM Agent on your on-premises servers and VMs, you specify an activation ID and code. When you specify the activation ID and code, tags assigned to the activation are automatically applied to the on-premises servers or VMs.

You can't add tags to or delete tags from an existing activation. You can tag your on-premises servers, edge devices, and VMs after they connect to Systems Manager for the first time and are assigned a managed node ID. This means they are listed in the Amazon Web Services Systems Manager console with an ID that is prefixed with \"mi-\". For information about how to add tags to your managed nodes, see AddTagsToResource. For information about how to remove tags from your managed nodes, see RemoveTagsFromResource.

", - "CreateAssociationRequest$Tags": "

Adds or overwrites one or more tags for a State Manager association. Tags are metadata that you can assign to your Amazon Web Services resources. Tags enable you to categorize your resources in different ways, for example, by purpose, owner, or environment. Each tag consists of a key and an optional value, both of which you define.

", + "CreateAssociationRequest$Tags": "

Optional metadata that you assign to a resource. Tags enable you to categorize a resource in different ways, such as by purpose, owner, or environment. For example, you might want to tag an association to identify the type of resource to which it applies, the environment, or the purpose of the association.

", "CreateDocumentRequest$Tags": "

Optional metadata that you assign to a resource. Tags enable you to categorize a resource in different ways, such as by purpose, owner, or environment. For example, you might want to tag an SSM document to identify the types of targets or the environment where it will run. In this case, you could specify the following key-value pairs:

To add tags to an existing SSM document, use the AddTagsToResource operation.

", "CreateMaintenanceWindowRequest$Tags": "

Optional metadata that you assign to a resource. Tags enable you to categorize a resource in different ways, such as by purpose, owner, or environment. For example, you might want to tag a maintenance window to identify the type of tasks it will run, the types of targets, and the environment it will run in. In this case, you could specify the following key-value pairs:

To add tags to an existing maintenance window, use the AddTagsToResource operation.

", "CreateOpsItemRequest$Tags": "

Optional metadata that you assign to a resource. You can restrict access to OpsItems by using an inline IAM policy that specifies tags. For more information, see Getting started with OpsCenter in the Amazon Web Services Systems Manager User Guide.

Tags use a key-value pair. For example:

Key=Department,Value=Finance

To add tags to a new OpsItem, a user must have IAM permissions for both the ssm:CreateOpsItems operation and the ssm:AddTagsToResource operation. To add tags to an existing OpsItem, use the AddTagsToResource operation.

", diff --git a/models/endpoints/endpoints.json b/models/endpoints/endpoints.json index e49196f1558..ab4b9716bb9 100644 --- a/models/endpoints/endpoints.json +++ b/models/endpoints/endpoints.json @@ -7261,6 +7261,12 @@ } } }, + "iotfleetwise" : { + "endpoints" : { + "eu-central-1" : { }, + "us-east-1" : { } + } + }, "iotsecuredtunneling" : { "defaults" : { "variants" : [ { diff --git a/service/costandusagereportservice/api.go b/service/costandusagereportservice/api.go index 2ccdfd6a9b6..7fe5e909bfd 100644 --- a/service/costandusagereportservice/api.go +++ b/service/costandusagereportservice/api.go @@ -1205,6 +1205,9 @@ const ( // AWSRegionApSoutheast2 is a AWSRegion enum value AWSRegionApSoutheast2 = "ap-southeast-2" + // AWSRegionApSoutheast3 is a AWSRegion enum value + AWSRegionApSoutheast3 = "ap-southeast-3" + // AWSRegionApNortheast1 is a AWSRegion enum value AWSRegionApNortheast1 = "ap-northeast-1" @@ -1235,6 +1238,12 @@ const ( // AWSRegionEuSouth1 is a AWSRegion enum value AWSRegionEuSouth1 = "eu-south-1" + // AWSRegionEuSouth2 is a AWSRegion enum value + AWSRegionEuSouth2 = "eu-south-2" + + // AWSRegionMeCentral1 is a AWSRegion enum value + AWSRegionMeCentral1 = "me-central-1" + // AWSRegionMeSouth1 is a AWSRegion enum value AWSRegionMeSouth1 = "me-south-1" @@ -1268,6 +1277,7 @@ func AWSRegion_Values() []string { AWSRegionApSouth1, AWSRegionApSoutheast1, AWSRegionApSoutheast2, + AWSRegionApSoutheast3, AWSRegionApNortheast1, AWSRegionApNortheast2, AWSRegionApNortheast3, @@ -1278,6 +1288,8 @@ func AWSRegion_Values() []string { AWSRegionEuWest3, AWSRegionEuNorth1, AWSRegionEuSouth1, + AWSRegionEuSouth2, + AWSRegionMeCentral1, AWSRegionMeSouth1, AWSRegionSaEast1, AWSRegionUsEast1, diff --git a/service/iotfleetwise/api.go b/service/iotfleetwise/api.go new file mode 100644 index 00000000000..24786b52bd8 --- /dev/null +++ b/service/iotfleetwise/api.go @@ -0,0 +1,16362 @@ +// Code generated by private/model/cli/gen-api/main.go. DO NOT EDIT. + +package iotfleetwise + +import ( + "fmt" + "time" + + "github.com/aws/aws-sdk-go/aws" + "github.com/aws/aws-sdk-go/aws/awsutil" + "github.com/aws/aws-sdk-go/aws/request" + "github.com/aws/aws-sdk-go/private/protocol" + "github.com/aws/aws-sdk-go/private/protocol/jsonrpc" +) + +const opAssociateVehicleFleet = "AssociateVehicleFleet" + +// AssociateVehicleFleetRequest generates a "aws/request.Request" representing the +// client's request for the AssociateVehicleFleet operation. The "output" return +// value will be populated with the request's response once the request completes +// successfully. +// +// Use "Send" method on the returned Request to send the API call to the service. +// the "output" return value is not valid until after Send returns without error. +// +// See AssociateVehicleFleet for more information on using the AssociateVehicleFleet +// API call, and error handling. +// +// This method is useful when you want to inject custom logic or configuration +// into the SDK's request lifecycle. Such as custom headers, or retry logic. +// +// // Example sending a request using the AssociateVehicleFleetRequest method. +// req, resp := client.AssociateVehicleFleetRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/iotfleetwise-2021-06-17/AssociateVehicleFleet +func (c *IoTFleetWise) AssociateVehicleFleetRequest(input *AssociateVehicleFleetInput) (req *request.Request, output *AssociateVehicleFleetOutput) { + op := &request.Operation{ + Name: opAssociateVehicleFleet, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &AssociateVehicleFleetInput{} + } + + output = &AssociateVehicleFleetOutput{} + req = c.newRequest(op, input, output) + req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) + return +} + +// AssociateVehicleFleet API operation for AWS IoT FleetWise. +// +// Adds, or associates, a vehicle with a fleet. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS IoT FleetWise's +// API operation AssociateVehicleFleet for usage and error information. +// +// Returned Error Types: +// +// - InternalServerException +// The request couldn't be completed because the server temporarily failed. +// +// - ResourceNotFoundException +// The resource wasn't found. +// +// - ThrottlingException +// The request couldn't be completed due to throttling. +// +// - ValidationException +// The input fails to satisfy the constraints specified by an Amazon Web Services +// service. +// +// - AccessDeniedException +// You don't have sufficient permission to perform this action. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/iotfleetwise-2021-06-17/AssociateVehicleFleet +func (c *IoTFleetWise) AssociateVehicleFleet(input *AssociateVehicleFleetInput) (*AssociateVehicleFleetOutput, error) { + req, out := c.AssociateVehicleFleetRequest(input) + return out, req.Send() +} + +// AssociateVehicleFleetWithContext is the same as AssociateVehicleFleet with the addition of +// the ability to pass a context and additional request options. +// +// See AssociateVehicleFleet for details on how to use this API operation. +// +// The context must be non-nil and will be used for request cancellation. If +// the context is nil a panic will occur. In the future the SDK may create +// sub-contexts for http.Requests. See https://golang.org/pkg/context/ +// for more information on using Contexts. +func (c *IoTFleetWise) AssociateVehicleFleetWithContext(ctx aws.Context, input *AssociateVehicleFleetInput, opts ...request.Option) (*AssociateVehicleFleetOutput, error) { + req, out := c.AssociateVehicleFleetRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opBatchCreateVehicle = "BatchCreateVehicle" + +// BatchCreateVehicleRequest generates a "aws/request.Request" representing the +// client's request for the BatchCreateVehicle operation. The "output" return +// value will be populated with the request's response once the request completes +// successfully. +// +// Use "Send" method on the returned Request to send the API call to the service. +// the "output" return value is not valid until after Send returns without error. +// +// See BatchCreateVehicle for more information on using the BatchCreateVehicle +// API call, and error handling. +// +// This method is useful when you want to inject custom logic or configuration +// into the SDK's request lifecycle. Such as custom headers, or retry logic. +// +// // Example sending a request using the BatchCreateVehicleRequest method. +// req, resp := client.BatchCreateVehicleRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/iotfleetwise-2021-06-17/BatchCreateVehicle +func (c *IoTFleetWise) BatchCreateVehicleRequest(input *BatchCreateVehicleInput) (req *request.Request, output *BatchCreateVehicleOutput) { + op := &request.Operation{ + Name: opBatchCreateVehicle, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &BatchCreateVehicleInput{} + } + + output = &BatchCreateVehicleOutput{} + req = c.newRequest(op, input, output) + return +} + +// BatchCreateVehicle API operation for AWS IoT FleetWise. +// +// Creates a group, or batch, of vehicles. +// +// You must specify a decoder manifest and a vehicle model (model manifest) +// for each vehicle. +// +// For more information, see Create multiple vehicles (AWS CLI) (https://docs.aws.amazon.com/iot-fleetwise/latest/developerguide/create-vehicles-cli.html) +// in the Amazon Web Services IoT FleetWise Developer Guide. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS IoT FleetWise's +// API operation BatchCreateVehicle for usage and error information. +// +// Returned Error Types: +// +// - InternalServerException +// The request couldn't be completed because the server temporarily failed. +// +// - LimitExceededException +// A service quota was exceeded. +// +// - ThrottlingException +// The request couldn't be completed due to throttling. +// +// - ValidationException +// The input fails to satisfy the constraints specified by an Amazon Web Services +// service. +// +// - AccessDeniedException +// You don't have sufficient permission to perform this action. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/iotfleetwise-2021-06-17/BatchCreateVehicle +func (c *IoTFleetWise) BatchCreateVehicle(input *BatchCreateVehicleInput) (*BatchCreateVehicleOutput, error) { + req, out := c.BatchCreateVehicleRequest(input) + return out, req.Send() +} + +// BatchCreateVehicleWithContext is the same as BatchCreateVehicle with the addition of +// the ability to pass a context and additional request options. +// +// See BatchCreateVehicle for details on how to use this API operation. +// +// The context must be non-nil and will be used for request cancellation. If +// the context is nil a panic will occur. In the future the SDK may create +// sub-contexts for http.Requests. See https://golang.org/pkg/context/ +// for more information on using Contexts. +func (c *IoTFleetWise) BatchCreateVehicleWithContext(ctx aws.Context, input *BatchCreateVehicleInput, opts ...request.Option) (*BatchCreateVehicleOutput, error) { + req, out := c.BatchCreateVehicleRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opBatchUpdateVehicle = "BatchUpdateVehicle" + +// BatchUpdateVehicleRequest generates a "aws/request.Request" representing the +// client's request for the BatchUpdateVehicle operation. The "output" return +// value will be populated with the request's response once the request completes +// successfully. +// +// Use "Send" method on the returned Request to send the API call to the service. +// the "output" return value is not valid until after Send returns without error. +// +// See BatchUpdateVehicle for more information on using the BatchUpdateVehicle +// API call, and error handling. +// +// This method is useful when you want to inject custom logic or configuration +// into the SDK's request lifecycle. Such as custom headers, or retry logic. +// +// // Example sending a request using the BatchUpdateVehicleRequest method. +// req, resp := client.BatchUpdateVehicleRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/iotfleetwise-2021-06-17/BatchUpdateVehicle +func (c *IoTFleetWise) BatchUpdateVehicleRequest(input *BatchUpdateVehicleInput) (req *request.Request, output *BatchUpdateVehicleOutput) { + op := &request.Operation{ + Name: opBatchUpdateVehicle, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &BatchUpdateVehicleInput{} + } + + output = &BatchUpdateVehicleOutput{} + req = c.newRequest(op, input, output) + return +} + +// BatchUpdateVehicle API operation for AWS IoT FleetWise. +// +// Updates a group, or batch, of vehicles. +// +// You must specify a decoder manifest and a vehicle model (model manifest) +// for each vehicle. +// +// For more information, see Update multiple vehicles (AWS CLI) (https://docs.aws.amazon.com/iot-fleetwise/latest/developerguide/update-vehicles-cli.html) +// in the Amazon Web Services IoT FleetWise Developer Guide. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS IoT FleetWise's +// API operation BatchUpdateVehicle for usage and error information. +// +// Returned Error Types: +// +// - InternalServerException +// The request couldn't be completed because the server temporarily failed. +// +// - ThrottlingException +// The request couldn't be completed due to throttling. +// +// - ValidationException +// The input fails to satisfy the constraints specified by an Amazon Web Services +// service. +// +// - AccessDeniedException +// You don't have sufficient permission to perform this action. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/iotfleetwise-2021-06-17/BatchUpdateVehicle +func (c *IoTFleetWise) BatchUpdateVehicle(input *BatchUpdateVehicleInput) (*BatchUpdateVehicleOutput, error) { + req, out := c.BatchUpdateVehicleRequest(input) + return out, req.Send() +} + +// BatchUpdateVehicleWithContext is the same as BatchUpdateVehicle with the addition of +// the ability to pass a context and additional request options. +// +// See BatchUpdateVehicle for details on how to use this API operation. +// +// The context must be non-nil and will be used for request cancellation. If +// the context is nil a panic will occur. In the future the SDK may create +// sub-contexts for http.Requests. See https://golang.org/pkg/context/ +// for more information on using Contexts. +func (c *IoTFleetWise) BatchUpdateVehicleWithContext(ctx aws.Context, input *BatchUpdateVehicleInput, opts ...request.Option) (*BatchUpdateVehicleOutput, error) { + req, out := c.BatchUpdateVehicleRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opCreateCampaign = "CreateCampaign" + +// CreateCampaignRequest generates a "aws/request.Request" representing the +// client's request for the CreateCampaign operation. The "output" return +// value will be populated with the request's response once the request completes +// successfully. +// +// Use "Send" method on the returned Request to send the API call to the service. +// the "output" return value is not valid until after Send returns without error. +// +// See CreateCampaign for more information on using the CreateCampaign +// API call, and error handling. +// +// This method is useful when you want to inject custom logic or configuration +// into the SDK's request lifecycle. Such as custom headers, or retry logic. +// +// // Example sending a request using the CreateCampaignRequest method. +// req, resp := client.CreateCampaignRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/iotfleetwise-2021-06-17/CreateCampaign +func (c *IoTFleetWise) CreateCampaignRequest(input *CreateCampaignInput) (req *request.Request, output *CreateCampaignOutput) { + op := &request.Operation{ + Name: opCreateCampaign, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &CreateCampaignInput{} + } + + output = &CreateCampaignOutput{} + req = c.newRequest(op, input, output) + return +} + +// CreateCampaign API operation for AWS IoT FleetWise. +// +// Creates an orchestration of data collection rules. The Amazon Web Services +// IoT FleetWise Edge Agent software running in vehicles uses campaigns to decide +// how to collect and transfer data to the cloud. You create campaigns in the +// cloud. After you or your team approve campaigns, Amazon Web Services IoT +// FleetWise automatically deploys them to vehicles. +// +// For more information, see Collect and transfer data with campaigns (https://docs.aws.amazon.com/iot-fleetwise/latest/developerguide/campaigns.html) +// in the Amazon Web Services IoT FleetWise Developer Guide. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS IoT FleetWise's +// API operation CreateCampaign for usage and error information. +// +// Returned Error Types: +// +// - ResourceNotFoundException +// The resource wasn't found. +// +// - InternalServerException +// The request couldn't be completed because the server temporarily failed. +// +// - ConflictException +// The request has conflicting operations. This can occur if you're trying to +// perform more than one operation on the same resource at the same time. +// +// - LimitExceededException +// A service quota was exceeded. +// +// - ThrottlingException +// The request couldn't be completed due to throttling. +// +// - ValidationException +// The input fails to satisfy the constraints specified by an Amazon Web Services +// service. +// +// - AccessDeniedException +// You don't have sufficient permission to perform this action. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/iotfleetwise-2021-06-17/CreateCampaign +func (c *IoTFleetWise) CreateCampaign(input *CreateCampaignInput) (*CreateCampaignOutput, error) { + req, out := c.CreateCampaignRequest(input) + return out, req.Send() +} + +// CreateCampaignWithContext is the same as CreateCampaign with the addition of +// the ability to pass a context and additional request options. +// +// See CreateCampaign for details on how to use this API operation. +// +// The context must be non-nil and will be used for request cancellation. If +// the context is nil a panic will occur. In the future the SDK may create +// sub-contexts for http.Requests. See https://golang.org/pkg/context/ +// for more information on using Contexts. +func (c *IoTFleetWise) CreateCampaignWithContext(ctx aws.Context, input *CreateCampaignInput, opts ...request.Option) (*CreateCampaignOutput, error) { + req, out := c.CreateCampaignRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opCreateDecoderManifest = "CreateDecoderManifest" + +// CreateDecoderManifestRequest generates a "aws/request.Request" representing the +// client's request for the CreateDecoderManifest operation. The "output" return +// value will be populated with the request's response once the request completes +// successfully. +// +// Use "Send" method on the returned Request to send the API call to the service. +// the "output" return value is not valid until after Send returns without error. +// +// See CreateDecoderManifest for more information on using the CreateDecoderManifest +// API call, and error handling. +// +// This method is useful when you want to inject custom logic or configuration +// into the SDK's request lifecycle. Such as custom headers, or retry logic. +// +// // Example sending a request using the CreateDecoderManifestRequest method. +// req, resp := client.CreateDecoderManifestRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/iotfleetwise-2021-06-17/CreateDecoderManifest +func (c *IoTFleetWise) CreateDecoderManifestRequest(input *CreateDecoderManifestInput) (req *request.Request, output *CreateDecoderManifestOutput) { + op := &request.Operation{ + Name: opCreateDecoderManifest, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &CreateDecoderManifestInput{} + } + + output = &CreateDecoderManifestOutput{} + req = c.newRequest(op, input, output) + return +} + +// CreateDecoderManifest API operation for AWS IoT FleetWise. +// +// Creates the decoder manifest associated with a model manifest. To create +// a decoder manifest, the following must be true: +// +// - Every signal decoder has a unique name. +// +// - Each signal decoder is associated with a network interface. +// +// - Each network interface has a unique ID. +// +// - The signal decoders are specified in the model manifest. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS IoT FleetWise's +// API operation CreateDecoderManifest for usage and error information. +// +// Returned Error Types: +// +// - ResourceNotFoundException +// The resource wasn't found. +// +// - InternalServerException +// The request couldn't be completed because the server temporarily failed. +// +// - ConflictException +// The request has conflicting operations. This can occur if you're trying to +// perform more than one operation on the same resource at the same time. +// +// - LimitExceededException +// A service quota was exceeded. +// +// - DecoderManifestValidationException +// The request couldn't be completed because it contains signal decoders with +// one or more validation errors. +// +// - ThrottlingException +// The request couldn't be completed due to throttling. +// +// - ValidationException +// The input fails to satisfy the constraints specified by an Amazon Web Services +// service. +// +// - AccessDeniedException +// You don't have sufficient permission to perform this action. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/iotfleetwise-2021-06-17/CreateDecoderManifest +func (c *IoTFleetWise) CreateDecoderManifest(input *CreateDecoderManifestInput) (*CreateDecoderManifestOutput, error) { + req, out := c.CreateDecoderManifestRequest(input) + return out, req.Send() +} + +// CreateDecoderManifestWithContext is the same as CreateDecoderManifest with the addition of +// the ability to pass a context and additional request options. +// +// See CreateDecoderManifest for details on how to use this API operation. +// +// The context must be non-nil and will be used for request cancellation. If +// the context is nil a panic will occur. In the future the SDK may create +// sub-contexts for http.Requests. See https://golang.org/pkg/context/ +// for more information on using Contexts. +func (c *IoTFleetWise) CreateDecoderManifestWithContext(ctx aws.Context, input *CreateDecoderManifestInput, opts ...request.Option) (*CreateDecoderManifestOutput, error) { + req, out := c.CreateDecoderManifestRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opCreateFleet = "CreateFleet" + +// CreateFleetRequest generates a "aws/request.Request" representing the +// client's request for the CreateFleet operation. The "output" return +// value will be populated with the request's response once the request completes +// successfully. +// +// Use "Send" method on the returned Request to send the API call to the service. +// the "output" return value is not valid until after Send returns without error. +// +// See CreateFleet for more information on using the CreateFleet +// API call, and error handling. +// +// This method is useful when you want to inject custom logic or configuration +// into the SDK's request lifecycle. Such as custom headers, or retry logic. +// +// // Example sending a request using the CreateFleetRequest method. +// req, resp := client.CreateFleetRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/iotfleetwise-2021-06-17/CreateFleet +func (c *IoTFleetWise) CreateFleetRequest(input *CreateFleetInput) (req *request.Request, output *CreateFleetOutput) { + op := &request.Operation{ + Name: opCreateFleet, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &CreateFleetInput{} + } + + output = &CreateFleetOutput{} + req = c.newRequest(op, input, output) + return +} + +// CreateFleet API operation for AWS IoT FleetWise. +// +// Creates a fleet that represents a group of vehicles. +// +// You must create both a signal catalog and vehicles before you can create +// a fleet. +// +// For more information, see Fleets (https://docs.aws.amazon.com/iot-fleetwise/latest/developerguide/fleets.html) +// in the Amazon Web Services IoT FleetWise Developer Guide. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS IoT FleetWise's +// API operation CreateFleet for usage and error information. +// +// Returned Error Types: +// +// - InternalServerException +// The request couldn't be completed because the server temporarily failed. +// +// - ResourceNotFoundException +// The resource wasn't found. +// +// - ConflictException +// The request has conflicting operations. This can occur if you're trying to +// perform more than one operation on the same resource at the same time. +// +// - LimitExceededException +// A service quota was exceeded. +// +// - ThrottlingException +// The request couldn't be completed due to throttling. +// +// - ValidationException +// The input fails to satisfy the constraints specified by an Amazon Web Services +// service. +// +// - AccessDeniedException +// You don't have sufficient permission to perform this action. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/iotfleetwise-2021-06-17/CreateFleet +func (c *IoTFleetWise) CreateFleet(input *CreateFleetInput) (*CreateFleetOutput, error) { + req, out := c.CreateFleetRequest(input) + return out, req.Send() +} + +// CreateFleetWithContext is the same as CreateFleet with the addition of +// the ability to pass a context and additional request options. +// +// See CreateFleet for details on how to use this API operation. +// +// The context must be non-nil and will be used for request cancellation. If +// the context is nil a panic will occur. In the future the SDK may create +// sub-contexts for http.Requests. See https://golang.org/pkg/context/ +// for more information on using Contexts. +func (c *IoTFleetWise) CreateFleetWithContext(ctx aws.Context, input *CreateFleetInput, opts ...request.Option) (*CreateFleetOutput, error) { + req, out := c.CreateFleetRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opCreateModelManifest = "CreateModelManifest" + +// CreateModelManifestRequest generates a "aws/request.Request" representing the +// client's request for the CreateModelManifest operation. The "output" return +// value will be populated with the request's response once the request completes +// successfully. +// +// Use "Send" method on the returned Request to send the API call to the service. +// the "output" return value is not valid until after Send returns without error. +// +// See CreateModelManifest for more information on using the CreateModelManifest +// API call, and error handling. +// +// This method is useful when you want to inject custom logic or configuration +// into the SDK's request lifecycle. Such as custom headers, or retry logic. +// +// // Example sending a request using the CreateModelManifestRequest method. +// req, resp := client.CreateModelManifestRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/iotfleetwise-2021-06-17/CreateModelManifest +func (c *IoTFleetWise) CreateModelManifestRequest(input *CreateModelManifestInput) (req *request.Request, output *CreateModelManifestOutput) { + op := &request.Operation{ + Name: opCreateModelManifest, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &CreateModelManifestInput{} + } + + output = &CreateModelManifestOutput{} + req = c.newRequest(op, input, output) + return +} + +// CreateModelManifest API operation for AWS IoT FleetWise. +// +// Creates a vehicle model (model manifest) that specifies signals (attributes, +// branches, sensors, and actuators). +// +// For more information, see Vehicle models (https://docs.aws.amazon.com/iot-fleetwise/latest/developerguide/vehicle-models.html) +// in the Amazon Web Services IoT FleetWise Developer Guide. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS IoT FleetWise's +// API operation CreateModelManifest for usage and error information. +// +// Returned Error Types: +// +// - ResourceNotFoundException +// The resource wasn't found. +// +// - InternalServerException +// The request couldn't be completed because the server temporarily failed. +// +// - ConflictException +// The request has conflicting operations. This can occur if you're trying to +// perform more than one operation on the same resource at the same time. +// +// - LimitExceededException +// A service quota was exceeded. +// +// - ThrottlingException +// The request couldn't be completed due to throttling. +// +// - ValidationException +// The input fails to satisfy the constraints specified by an Amazon Web Services +// service. +// +// - InvalidSignalsException +// The request couldn't be completed because it contains signals that aren't +// valid. +// +// - AccessDeniedException +// You don't have sufficient permission to perform this action. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/iotfleetwise-2021-06-17/CreateModelManifest +func (c *IoTFleetWise) CreateModelManifest(input *CreateModelManifestInput) (*CreateModelManifestOutput, error) { + req, out := c.CreateModelManifestRequest(input) + return out, req.Send() +} + +// CreateModelManifestWithContext is the same as CreateModelManifest with the addition of +// the ability to pass a context and additional request options. +// +// See CreateModelManifest for details on how to use this API operation. +// +// The context must be non-nil and will be used for request cancellation. If +// the context is nil a panic will occur. In the future the SDK may create +// sub-contexts for http.Requests. See https://golang.org/pkg/context/ +// for more information on using Contexts. +func (c *IoTFleetWise) CreateModelManifestWithContext(ctx aws.Context, input *CreateModelManifestInput, opts ...request.Option) (*CreateModelManifestOutput, error) { + req, out := c.CreateModelManifestRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opCreateSignalCatalog = "CreateSignalCatalog" + +// CreateSignalCatalogRequest generates a "aws/request.Request" representing the +// client's request for the CreateSignalCatalog operation. The "output" return +// value will be populated with the request's response once the request completes +// successfully. +// +// Use "Send" method on the returned Request to send the API call to the service. +// the "output" return value is not valid until after Send returns without error. +// +// See CreateSignalCatalog for more information on using the CreateSignalCatalog +// API call, and error handling. +// +// This method is useful when you want to inject custom logic or configuration +// into the SDK's request lifecycle. Such as custom headers, or retry logic. +// +// // Example sending a request using the CreateSignalCatalogRequest method. +// req, resp := client.CreateSignalCatalogRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/iotfleetwise-2021-06-17/CreateSignalCatalog +func (c *IoTFleetWise) CreateSignalCatalogRequest(input *CreateSignalCatalogInput) (req *request.Request, output *CreateSignalCatalogOutput) { + op := &request.Operation{ + Name: opCreateSignalCatalog, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &CreateSignalCatalogInput{} + } + + output = &CreateSignalCatalogOutput{} + req = c.newRequest(op, input, output) + return +} + +// CreateSignalCatalog API operation for AWS IoT FleetWise. +// +// Creates a collection of standardized signals that can be reused to create +// vehicle models. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS IoT FleetWise's +// API operation CreateSignalCatalog for usage and error information. +// +// Returned Error Types: +// +// - InternalServerException +// The request couldn't be completed because the server temporarily failed. +// +// - ConflictException +// The request has conflicting operations. This can occur if you're trying to +// perform more than one operation on the same resource at the same time. +// +// - LimitExceededException +// A service quota was exceeded. +// +// - InvalidNodeException +// The specified node type doesn't match the expected node type for a node. +// You can specify the node type as branch, sensor, actuator, or attribute. +// +// - ThrottlingException +// The request couldn't be completed due to throttling. +// +// - ValidationException +// The input fails to satisfy the constraints specified by an Amazon Web Services +// service. +// +// - InvalidSignalsException +// The request couldn't be completed because it contains signals that aren't +// valid. +// +// - AccessDeniedException +// You don't have sufficient permission to perform this action. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/iotfleetwise-2021-06-17/CreateSignalCatalog +func (c *IoTFleetWise) CreateSignalCatalog(input *CreateSignalCatalogInput) (*CreateSignalCatalogOutput, error) { + req, out := c.CreateSignalCatalogRequest(input) + return out, req.Send() +} + +// CreateSignalCatalogWithContext is the same as CreateSignalCatalog with the addition of +// the ability to pass a context and additional request options. +// +// See CreateSignalCatalog for details on how to use this API operation. +// +// The context must be non-nil and will be used for request cancellation. If +// the context is nil a panic will occur. In the future the SDK may create +// sub-contexts for http.Requests. See https://golang.org/pkg/context/ +// for more information on using Contexts. +func (c *IoTFleetWise) CreateSignalCatalogWithContext(ctx aws.Context, input *CreateSignalCatalogInput, opts ...request.Option) (*CreateSignalCatalogOutput, error) { + req, out := c.CreateSignalCatalogRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opCreateVehicle = "CreateVehicle" + +// CreateVehicleRequest generates a "aws/request.Request" representing the +// client's request for the CreateVehicle operation. The "output" return +// value will be populated with the request's response once the request completes +// successfully. +// +// Use "Send" method on the returned Request to send the API call to the service. +// the "output" return value is not valid until after Send returns without error. +// +// See CreateVehicle for more information on using the CreateVehicle +// API call, and error handling. +// +// This method is useful when you want to inject custom logic or configuration +// into the SDK's request lifecycle. Such as custom headers, or retry logic. +// +// // Example sending a request using the CreateVehicleRequest method. +// req, resp := client.CreateVehicleRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/iotfleetwise-2021-06-17/CreateVehicle +func (c *IoTFleetWise) CreateVehicleRequest(input *CreateVehicleInput) (req *request.Request, output *CreateVehicleOutput) { + op := &request.Operation{ + Name: opCreateVehicle, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &CreateVehicleInput{} + } + + output = &CreateVehicleOutput{} + req = c.newRequest(op, input, output) + return +} + +// CreateVehicle API operation for AWS IoT FleetWise. +// +// Creates a vehicle, which is an instance of a vehicle model (model manifest). +// Vehicles created from the same vehicle model consist of the same signals +// inherited from the vehicle model. +// +// If you have an existing Amazon Web Services IoT Thing, you can use Amazon +// Web Services IoT FleetWise to create a vehicle and collect data from your +// thing. +// +// For more information, see Create a vehicle (AWS CLI) (https://docs.aws.amazon.com/iot-fleetwise/latest/developerguide/create-vehicle-cli.html) +// in the Amazon Web Services IoT FleetWise Developer Guide. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS IoT FleetWise's +// API operation CreateVehicle for usage and error information. +// +// Returned Error Types: +// +// - InternalServerException +// The request couldn't be completed because the server temporarily failed. +// +// - ResourceNotFoundException +// The resource wasn't found. +// +// - ConflictException +// The request has conflicting operations. This can occur if you're trying to +// perform more than one operation on the same resource at the same time. +// +// - LimitExceededException +// A service quota was exceeded. +// +// - ThrottlingException +// The request couldn't be completed due to throttling. +// +// - ValidationException +// The input fails to satisfy the constraints specified by an Amazon Web Services +// service. +// +// - AccessDeniedException +// You don't have sufficient permission to perform this action. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/iotfleetwise-2021-06-17/CreateVehicle +func (c *IoTFleetWise) CreateVehicle(input *CreateVehicleInput) (*CreateVehicleOutput, error) { + req, out := c.CreateVehicleRequest(input) + return out, req.Send() +} + +// CreateVehicleWithContext is the same as CreateVehicle with the addition of +// the ability to pass a context and additional request options. +// +// See CreateVehicle for details on how to use this API operation. +// +// The context must be non-nil and will be used for request cancellation. If +// the context is nil a panic will occur. In the future the SDK may create +// sub-contexts for http.Requests. See https://golang.org/pkg/context/ +// for more information on using Contexts. +func (c *IoTFleetWise) CreateVehicleWithContext(ctx aws.Context, input *CreateVehicleInput, opts ...request.Option) (*CreateVehicleOutput, error) { + req, out := c.CreateVehicleRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opDeleteCampaign = "DeleteCampaign" + +// DeleteCampaignRequest generates a "aws/request.Request" representing the +// client's request for the DeleteCampaign operation. The "output" return +// value will be populated with the request's response once the request completes +// successfully. +// +// Use "Send" method on the returned Request to send the API call to the service. +// the "output" return value is not valid until after Send returns without error. +// +// See DeleteCampaign for more information on using the DeleteCampaign +// API call, and error handling. +// +// This method is useful when you want to inject custom logic or configuration +// into the SDK's request lifecycle. Such as custom headers, or retry logic. +// +// // Example sending a request using the DeleteCampaignRequest method. +// req, resp := client.DeleteCampaignRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/iotfleetwise-2021-06-17/DeleteCampaign +func (c *IoTFleetWise) DeleteCampaignRequest(input *DeleteCampaignInput) (req *request.Request, output *DeleteCampaignOutput) { + op := &request.Operation{ + Name: opDeleteCampaign, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &DeleteCampaignInput{} + } + + output = &DeleteCampaignOutput{} + req = c.newRequest(op, input, output) + return +} + +// DeleteCampaign API operation for AWS IoT FleetWise. +// +// Deletes a data collection campaign. Deleting a campaign suspends all data +// collection and removes it from any vehicles. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS IoT FleetWise's +// API operation DeleteCampaign for usage and error information. +// +// Returned Error Types: +// +// - ResourceNotFoundException +// The resource wasn't found. +// +// - InternalServerException +// The request couldn't be completed because the server temporarily failed. +// +// - ThrottlingException +// The request couldn't be completed due to throttling. +// +// - ValidationException +// The input fails to satisfy the constraints specified by an Amazon Web Services +// service. +// +// - AccessDeniedException +// You don't have sufficient permission to perform this action. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/iotfleetwise-2021-06-17/DeleteCampaign +func (c *IoTFleetWise) DeleteCampaign(input *DeleteCampaignInput) (*DeleteCampaignOutput, error) { + req, out := c.DeleteCampaignRequest(input) + return out, req.Send() +} + +// DeleteCampaignWithContext is the same as DeleteCampaign with the addition of +// the ability to pass a context and additional request options. +// +// See DeleteCampaign for details on how to use this API operation. +// +// The context must be non-nil and will be used for request cancellation. If +// the context is nil a panic will occur. In the future the SDK may create +// sub-contexts for http.Requests. See https://golang.org/pkg/context/ +// for more information on using Contexts. +func (c *IoTFleetWise) DeleteCampaignWithContext(ctx aws.Context, input *DeleteCampaignInput, opts ...request.Option) (*DeleteCampaignOutput, error) { + req, out := c.DeleteCampaignRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opDeleteDecoderManifest = "DeleteDecoderManifest" + +// DeleteDecoderManifestRequest generates a "aws/request.Request" representing the +// client's request for the DeleteDecoderManifest operation. The "output" return +// value will be populated with the request's response once the request completes +// successfully. +// +// Use "Send" method on the returned Request to send the API call to the service. +// the "output" return value is not valid until after Send returns without error. +// +// See DeleteDecoderManifest for more information on using the DeleteDecoderManifest +// API call, and error handling. +// +// This method is useful when you want to inject custom logic or configuration +// into the SDK's request lifecycle. Such as custom headers, or retry logic. +// +// // Example sending a request using the DeleteDecoderManifestRequest method. +// req, resp := client.DeleteDecoderManifestRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/iotfleetwise-2021-06-17/DeleteDecoderManifest +func (c *IoTFleetWise) DeleteDecoderManifestRequest(input *DeleteDecoderManifestInput) (req *request.Request, output *DeleteDecoderManifestOutput) { + op := &request.Operation{ + Name: opDeleteDecoderManifest, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &DeleteDecoderManifestInput{} + } + + output = &DeleteDecoderManifestOutput{} + req = c.newRequest(op, input, output) + return +} + +// DeleteDecoderManifest API operation for AWS IoT FleetWise. +// +// Deletes a decoder manifest. You can't delete a decoder manifest if it has +// vehicles associated with it. +// +// If the decoder manifest is successfully deleted, Amazon Web Services IoT +// FleetWise sends back an HTTP 200 response with an empty body. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS IoT FleetWise's +// API operation DeleteDecoderManifest for usage and error information. +// +// Returned Error Types: +// +// - InternalServerException +// The request couldn't be completed because the server temporarily failed. +// +// - ConflictException +// The request has conflicting operations. This can occur if you're trying to +// perform more than one operation on the same resource at the same time. +// +// - ThrottlingException +// The request couldn't be completed due to throttling. +// +// - ValidationException +// The input fails to satisfy the constraints specified by an Amazon Web Services +// service. +// +// - AccessDeniedException +// You don't have sufficient permission to perform this action. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/iotfleetwise-2021-06-17/DeleteDecoderManifest +func (c *IoTFleetWise) DeleteDecoderManifest(input *DeleteDecoderManifestInput) (*DeleteDecoderManifestOutput, error) { + req, out := c.DeleteDecoderManifestRequest(input) + return out, req.Send() +} + +// DeleteDecoderManifestWithContext is the same as DeleteDecoderManifest with the addition of +// the ability to pass a context and additional request options. +// +// See DeleteDecoderManifest for details on how to use this API operation. +// +// The context must be non-nil and will be used for request cancellation. If +// the context is nil a panic will occur. In the future the SDK may create +// sub-contexts for http.Requests. See https://golang.org/pkg/context/ +// for more information on using Contexts. +func (c *IoTFleetWise) DeleteDecoderManifestWithContext(ctx aws.Context, input *DeleteDecoderManifestInput, opts ...request.Option) (*DeleteDecoderManifestOutput, error) { + req, out := c.DeleteDecoderManifestRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opDeleteFleet = "DeleteFleet" + +// DeleteFleetRequest generates a "aws/request.Request" representing the +// client's request for the DeleteFleet operation. The "output" return +// value will be populated with the request's response once the request completes +// successfully. +// +// Use "Send" method on the returned Request to send the API call to the service. +// the "output" return value is not valid until after Send returns without error. +// +// See DeleteFleet for more information on using the DeleteFleet +// API call, and error handling. +// +// This method is useful when you want to inject custom logic or configuration +// into the SDK's request lifecycle. Such as custom headers, or retry logic. +// +// // Example sending a request using the DeleteFleetRequest method. +// req, resp := client.DeleteFleetRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/iotfleetwise-2021-06-17/DeleteFleet +func (c *IoTFleetWise) DeleteFleetRequest(input *DeleteFleetInput) (req *request.Request, output *DeleteFleetOutput) { + op := &request.Operation{ + Name: opDeleteFleet, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &DeleteFleetInput{} + } + + output = &DeleteFleetOutput{} + req = c.newRequest(op, input, output) + return +} + +// DeleteFleet API operation for AWS IoT FleetWise. +// +// Deletes a fleet. Before you delete a fleet, all vehicles must be dissociated +// from the fleet. For more information, see Delete a fleet (AWS CLI) (https://docs.aws.amazon.com/iot-fleetwise/latest/developerguide/delete-fleet-cli.html) +// in the Amazon Web Services IoT FleetWise Developer Guide. +// +// If the fleet is successfully deleted, Amazon Web Services IoT FleetWise sends +// back an HTTP 200 response with an empty body. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS IoT FleetWise's +// API operation DeleteFleet for usage and error information. +// +// Returned Error Types: +// +// - InternalServerException +// The request couldn't be completed because the server temporarily failed. +// +// - ThrottlingException +// The request couldn't be completed due to throttling. +// +// - ValidationException +// The input fails to satisfy the constraints specified by an Amazon Web Services +// service. +// +// - AccessDeniedException +// You don't have sufficient permission to perform this action. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/iotfleetwise-2021-06-17/DeleteFleet +func (c *IoTFleetWise) DeleteFleet(input *DeleteFleetInput) (*DeleteFleetOutput, error) { + req, out := c.DeleteFleetRequest(input) + return out, req.Send() +} + +// DeleteFleetWithContext is the same as DeleteFleet with the addition of +// the ability to pass a context and additional request options. +// +// See DeleteFleet for details on how to use this API operation. +// +// The context must be non-nil and will be used for request cancellation. If +// the context is nil a panic will occur. In the future the SDK may create +// sub-contexts for http.Requests. See https://golang.org/pkg/context/ +// for more information on using Contexts. +func (c *IoTFleetWise) DeleteFleetWithContext(ctx aws.Context, input *DeleteFleetInput, opts ...request.Option) (*DeleteFleetOutput, error) { + req, out := c.DeleteFleetRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opDeleteModelManifest = "DeleteModelManifest" + +// DeleteModelManifestRequest generates a "aws/request.Request" representing the +// client's request for the DeleteModelManifest operation. The "output" return +// value will be populated with the request's response once the request completes +// successfully. +// +// Use "Send" method on the returned Request to send the API call to the service. +// the "output" return value is not valid until after Send returns without error. +// +// See DeleteModelManifest for more information on using the DeleteModelManifest +// API call, and error handling. +// +// This method is useful when you want to inject custom logic or configuration +// into the SDK's request lifecycle. Such as custom headers, or retry logic. +// +// // Example sending a request using the DeleteModelManifestRequest method. +// req, resp := client.DeleteModelManifestRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/iotfleetwise-2021-06-17/DeleteModelManifest +func (c *IoTFleetWise) DeleteModelManifestRequest(input *DeleteModelManifestInput) (req *request.Request, output *DeleteModelManifestOutput) { + op := &request.Operation{ + Name: opDeleteModelManifest, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &DeleteModelManifestInput{} + } + + output = &DeleteModelManifestOutput{} + req = c.newRequest(op, input, output) + return +} + +// DeleteModelManifest API operation for AWS IoT FleetWise. +// +// Deletes a vehicle model (model manifest). +// +// If the vehicle model is successfully deleted, Amazon Web Services IoT FleetWise +// sends back an HTTP 200 response with an empty body. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS IoT FleetWise's +// API operation DeleteModelManifest for usage and error information. +// +// Returned Error Types: +// +// - InternalServerException +// The request couldn't be completed because the server temporarily failed. +// +// - ConflictException +// The request has conflicting operations. This can occur if you're trying to +// perform more than one operation on the same resource at the same time. +// +// - ThrottlingException +// The request couldn't be completed due to throttling. +// +// - ValidationException +// The input fails to satisfy the constraints specified by an Amazon Web Services +// service. +// +// - AccessDeniedException +// You don't have sufficient permission to perform this action. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/iotfleetwise-2021-06-17/DeleteModelManifest +func (c *IoTFleetWise) DeleteModelManifest(input *DeleteModelManifestInput) (*DeleteModelManifestOutput, error) { + req, out := c.DeleteModelManifestRequest(input) + return out, req.Send() +} + +// DeleteModelManifestWithContext is the same as DeleteModelManifest with the addition of +// the ability to pass a context and additional request options. +// +// See DeleteModelManifest for details on how to use this API operation. +// +// The context must be non-nil and will be used for request cancellation. If +// the context is nil a panic will occur. In the future the SDK may create +// sub-contexts for http.Requests. See https://golang.org/pkg/context/ +// for more information on using Contexts. +func (c *IoTFleetWise) DeleteModelManifestWithContext(ctx aws.Context, input *DeleteModelManifestInput, opts ...request.Option) (*DeleteModelManifestOutput, error) { + req, out := c.DeleteModelManifestRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opDeleteSignalCatalog = "DeleteSignalCatalog" + +// DeleteSignalCatalogRequest generates a "aws/request.Request" representing the +// client's request for the DeleteSignalCatalog operation. The "output" return +// value will be populated with the request's response once the request completes +// successfully. +// +// Use "Send" method on the returned Request to send the API call to the service. +// the "output" return value is not valid until after Send returns without error. +// +// See DeleteSignalCatalog for more information on using the DeleteSignalCatalog +// API call, and error handling. +// +// This method is useful when you want to inject custom logic or configuration +// into the SDK's request lifecycle. Such as custom headers, or retry logic. +// +// // Example sending a request using the DeleteSignalCatalogRequest method. +// req, resp := client.DeleteSignalCatalogRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/iotfleetwise-2021-06-17/DeleteSignalCatalog +func (c *IoTFleetWise) DeleteSignalCatalogRequest(input *DeleteSignalCatalogInput) (req *request.Request, output *DeleteSignalCatalogOutput) { + op := &request.Operation{ + Name: opDeleteSignalCatalog, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &DeleteSignalCatalogInput{} + } + + output = &DeleteSignalCatalogOutput{} + req = c.newRequest(op, input, output) + return +} + +// DeleteSignalCatalog API operation for AWS IoT FleetWise. +// +// Deletes a signal catalog. +// +// If the signal catalog is successfully deleted, Amazon Web Services IoT FleetWise +// sends back an HTTP 200 response with an empty body. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS IoT FleetWise's +// API operation DeleteSignalCatalog for usage and error information. +// +// Returned Error Types: +// +// - InternalServerException +// The request couldn't be completed because the server temporarily failed. +// +// - ConflictException +// The request has conflicting operations. This can occur if you're trying to +// perform more than one operation on the same resource at the same time. +// +// - ThrottlingException +// The request couldn't be completed due to throttling. +// +// - ValidationException +// The input fails to satisfy the constraints specified by an Amazon Web Services +// service. +// +// - AccessDeniedException +// You don't have sufficient permission to perform this action. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/iotfleetwise-2021-06-17/DeleteSignalCatalog +func (c *IoTFleetWise) DeleteSignalCatalog(input *DeleteSignalCatalogInput) (*DeleteSignalCatalogOutput, error) { + req, out := c.DeleteSignalCatalogRequest(input) + return out, req.Send() +} + +// DeleteSignalCatalogWithContext is the same as DeleteSignalCatalog with the addition of +// the ability to pass a context and additional request options. +// +// See DeleteSignalCatalog for details on how to use this API operation. +// +// The context must be non-nil and will be used for request cancellation. If +// the context is nil a panic will occur. In the future the SDK may create +// sub-contexts for http.Requests. See https://golang.org/pkg/context/ +// for more information on using Contexts. +func (c *IoTFleetWise) DeleteSignalCatalogWithContext(ctx aws.Context, input *DeleteSignalCatalogInput, opts ...request.Option) (*DeleteSignalCatalogOutput, error) { + req, out := c.DeleteSignalCatalogRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opDeleteVehicle = "DeleteVehicle" + +// DeleteVehicleRequest generates a "aws/request.Request" representing the +// client's request for the DeleteVehicle operation. The "output" return +// value will be populated with the request's response once the request completes +// successfully. +// +// Use "Send" method on the returned Request to send the API call to the service. +// the "output" return value is not valid until after Send returns without error. +// +// See DeleteVehicle for more information on using the DeleteVehicle +// API call, and error handling. +// +// This method is useful when you want to inject custom logic or configuration +// into the SDK's request lifecycle. Such as custom headers, or retry logic. +// +// // Example sending a request using the DeleteVehicleRequest method. +// req, resp := client.DeleteVehicleRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/iotfleetwise-2021-06-17/DeleteVehicle +func (c *IoTFleetWise) DeleteVehicleRequest(input *DeleteVehicleInput) (req *request.Request, output *DeleteVehicleOutput) { + op := &request.Operation{ + Name: opDeleteVehicle, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &DeleteVehicleInput{} + } + + output = &DeleteVehicleOutput{} + req = c.newRequest(op, input, output) + return +} + +// DeleteVehicle API operation for AWS IoT FleetWise. +// +// Deletes a vehicle and removes it from any campaigns. +// +// If the vehicle is successfully deleted, Amazon Web Services IoT FleetWise +// sends back an HTTP 200 response with an empty body. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS IoT FleetWise's +// API operation DeleteVehicle for usage and error information. +// +// Returned Error Types: +// +// - InternalServerException +// The request couldn't be completed because the server temporarily failed. +// +// - ThrottlingException +// The request couldn't be completed due to throttling. +// +// - ValidationException +// The input fails to satisfy the constraints specified by an Amazon Web Services +// service. +// +// - AccessDeniedException +// You don't have sufficient permission to perform this action. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/iotfleetwise-2021-06-17/DeleteVehicle +func (c *IoTFleetWise) DeleteVehicle(input *DeleteVehicleInput) (*DeleteVehicleOutput, error) { + req, out := c.DeleteVehicleRequest(input) + return out, req.Send() +} + +// DeleteVehicleWithContext is the same as DeleteVehicle with the addition of +// the ability to pass a context and additional request options. +// +// See DeleteVehicle for details on how to use this API operation. +// +// The context must be non-nil and will be used for request cancellation. If +// the context is nil a panic will occur. In the future the SDK may create +// sub-contexts for http.Requests. See https://golang.org/pkg/context/ +// for more information on using Contexts. +func (c *IoTFleetWise) DeleteVehicleWithContext(ctx aws.Context, input *DeleteVehicleInput, opts ...request.Option) (*DeleteVehicleOutput, error) { + req, out := c.DeleteVehicleRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opDisassociateVehicleFleet = "DisassociateVehicleFleet" + +// DisassociateVehicleFleetRequest generates a "aws/request.Request" representing the +// client's request for the DisassociateVehicleFleet operation. The "output" return +// value will be populated with the request's response once the request completes +// successfully. +// +// Use "Send" method on the returned Request to send the API call to the service. +// the "output" return value is not valid until after Send returns without error. +// +// See DisassociateVehicleFleet for more information on using the DisassociateVehicleFleet +// API call, and error handling. +// +// This method is useful when you want to inject custom logic or configuration +// into the SDK's request lifecycle. Such as custom headers, or retry logic. +// +// // Example sending a request using the DisassociateVehicleFleetRequest method. +// req, resp := client.DisassociateVehicleFleetRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/iotfleetwise-2021-06-17/DisassociateVehicleFleet +func (c *IoTFleetWise) DisassociateVehicleFleetRequest(input *DisassociateVehicleFleetInput) (req *request.Request, output *DisassociateVehicleFleetOutput) { + op := &request.Operation{ + Name: opDisassociateVehicleFleet, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &DisassociateVehicleFleetInput{} + } + + output = &DisassociateVehicleFleetOutput{} + req = c.newRequest(op, input, output) + req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) + return +} + +// DisassociateVehicleFleet API operation for AWS IoT FleetWise. +// +// Removes, or disassociates, a vehicle from a fleet. Disassociating a vehicle +// from a fleet doesn't delete the vehicle. +// +// If the vehicle is successfully dissociated from a fleet, Amazon Web Services +// IoT FleetWise sends back an HTTP 200 response with an empty body. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS IoT FleetWise's +// API operation DisassociateVehicleFleet for usage and error information. +// +// Returned Error Types: +// +// - InternalServerException +// The request couldn't be completed because the server temporarily failed. +// +// - ResourceNotFoundException +// The resource wasn't found. +// +// - ThrottlingException +// The request couldn't be completed due to throttling. +// +// - ValidationException +// The input fails to satisfy the constraints specified by an Amazon Web Services +// service. +// +// - AccessDeniedException +// You don't have sufficient permission to perform this action. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/iotfleetwise-2021-06-17/DisassociateVehicleFleet +func (c *IoTFleetWise) DisassociateVehicleFleet(input *DisassociateVehicleFleetInput) (*DisassociateVehicleFleetOutput, error) { + req, out := c.DisassociateVehicleFleetRequest(input) + return out, req.Send() +} + +// DisassociateVehicleFleetWithContext is the same as DisassociateVehicleFleet with the addition of +// the ability to pass a context and additional request options. +// +// See DisassociateVehicleFleet for details on how to use this API operation. +// +// The context must be non-nil and will be used for request cancellation. If +// the context is nil a panic will occur. In the future the SDK may create +// sub-contexts for http.Requests. See https://golang.org/pkg/context/ +// for more information on using Contexts. +func (c *IoTFleetWise) DisassociateVehicleFleetWithContext(ctx aws.Context, input *DisassociateVehicleFleetInput, opts ...request.Option) (*DisassociateVehicleFleetOutput, error) { + req, out := c.DisassociateVehicleFleetRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opGetCampaign = "GetCampaign" + +// GetCampaignRequest generates a "aws/request.Request" representing the +// client's request for the GetCampaign operation. The "output" return +// value will be populated with the request's response once the request completes +// successfully. +// +// Use "Send" method on the returned Request to send the API call to the service. +// the "output" return value is not valid until after Send returns without error. +// +// See GetCampaign for more information on using the GetCampaign +// API call, and error handling. +// +// This method is useful when you want to inject custom logic or configuration +// into the SDK's request lifecycle. Such as custom headers, or retry logic. +// +// // Example sending a request using the GetCampaignRequest method. +// req, resp := client.GetCampaignRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/iotfleetwise-2021-06-17/GetCampaign +func (c *IoTFleetWise) GetCampaignRequest(input *GetCampaignInput) (req *request.Request, output *GetCampaignOutput) { + op := &request.Operation{ + Name: opGetCampaign, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &GetCampaignInput{} + } + + output = &GetCampaignOutput{} + req = c.newRequest(op, input, output) + return +} + +// GetCampaign API operation for AWS IoT FleetWise. +// +// Retrieves information about a campaign. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS IoT FleetWise's +// API operation GetCampaign for usage and error information. +// +// Returned Error Types: +// +// - ResourceNotFoundException +// The resource wasn't found. +// +// - InternalServerException +// The request couldn't be completed because the server temporarily failed. +// +// - ThrottlingException +// The request couldn't be completed due to throttling. +// +// - ValidationException +// The input fails to satisfy the constraints specified by an Amazon Web Services +// service. +// +// - AccessDeniedException +// You don't have sufficient permission to perform this action. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/iotfleetwise-2021-06-17/GetCampaign +func (c *IoTFleetWise) GetCampaign(input *GetCampaignInput) (*GetCampaignOutput, error) { + req, out := c.GetCampaignRequest(input) + return out, req.Send() +} + +// GetCampaignWithContext is the same as GetCampaign with the addition of +// the ability to pass a context and additional request options. +// +// See GetCampaign for details on how to use this API operation. +// +// The context must be non-nil and will be used for request cancellation. If +// the context is nil a panic will occur. In the future the SDK may create +// sub-contexts for http.Requests. See https://golang.org/pkg/context/ +// for more information on using Contexts. +func (c *IoTFleetWise) GetCampaignWithContext(ctx aws.Context, input *GetCampaignInput, opts ...request.Option) (*GetCampaignOutput, error) { + req, out := c.GetCampaignRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opGetDecoderManifest = "GetDecoderManifest" + +// GetDecoderManifestRequest generates a "aws/request.Request" representing the +// client's request for the GetDecoderManifest operation. The "output" return +// value will be populated with the request's response once the request completes +// successfully. +// +// Use "Send" method on the returned Request to send the API call to the service. +// the "output" return value is not valid until after Send returns without error. +// +// See GetDecoderManifest for more information on using the GetDecoderManifest +// API call, and error handling. +// +// This method is useful when you want to inject custom logic or configuration +// into the SDK's request lifecycle. Such as custom headers, or retry logic. +// +// // Example sending a request using the GetDecoderManifestRequest method. +// req, resp := client.GetDecoderManifestRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/iotfleetwise-2021-06-17/GetDecoderManifest +func (c *IoTFleetWise) GetDecoderManifestRequest(input *GetDecoderManifestInput) (req *request.Request, output *GetDecoderManifestOutput) { + op := &request.Operation{ + Name: opGetDecoderManifest, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &GetDecoderManifestInput{} + } + + output = &GetDecoderManifestOutput{} + req = c.newRequest(op, input, output) + return +} + +// GetDecoderManifest API operation for AWS IoT FleetWise. +// +// Retrieves information about a created decoder manifest. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS IoT FleetWise's +// API operation GetDecoderManifest for usage and error information. +// +// Returned Error Types: +// +// - ResourceNotFoundException +// The resource wasn't found. +// +// - InternalServerException +// The request couldn't be completed because the server temporarily failed. +// +// - ThrottlingException +// The request couldn't be completed due to throttling. +// +// - ValidationException +// The input fails to satisfy the constraints specified by an Amazon Web Services +// service. +// +// - AccessDeniedException +// You don't have sufficient permission to perform this action. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/iotfleetwise-2021-06-17/GetDecoderManifest +func (c *IoTFleetWise) GetDecoderManifest(input *GetDecoderManifestInput) (*GetDecoderManifestOutput, error) { + req, out := c.GetDecoderManifestRequest(input) + return out, req.Send() +} + +// GetDecoderManifestWithContext is the same as GetDecoderManifest with the addition of +// the ability to pass a context and additional request options. +// +// See GetDecoderManifest for details on how to use this API operation. +// +// The context must be non-nil and will be used for request cancellation. If +// the context is nil a panic will occur. In the future the SDK may create +// sub-contexts for http.Requests. See https://golang.org/pkg/context/ +// for more information on using Contexts. +func (c *IoTFleetWise) GetDecoderManifestWithContext(ctx aws.Context, input *GetDecoderManifestInput, opts ...request.Option) (*GetDecoderManifestOutput, error) { + req, out := c.GetDecoderManifestRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opGetFleet = "GetFleet" + +// GetFleetRequest generates a "aws/request.Request" representing the +// client's request for the GetFleet operation. The "output" return +// value will be populated with the request's response once the request completes +// successfully. +// +// Use "Send" method on the returned Request to send the API call to the service. +// the "output" return value is not valid until after Send returns without error. +// +// See GetFleet for more information on using the GetFleet +// API call, and error handling. +// +// This method is useful when you want to inject custom logic or configuration +// into the SDK's request lifecycle. Such as custom headers, or retry logic. +// +// // Example sending a request using the GetFleetRequest method. +// req, resp := client.GetFleetRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/iotfleetwise-2021-06-17/GetFleet +func (c *IoTFleetWise) GetFleetRequest(input *GetFleetInput) (req *request.Request, output *GetFleetOutput) { + op := &request.Operation{ + Name: opGetFleet, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &GetFleetInput{} + } + + output = &GetFleetOutput{} + req = c.newRequest(op, input, output) + return +} + +// GetFleet API operation for AWS IoT FleetWise. +// +// Retrieves information about a fleet. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS IoT FleetWise's +// API operation GetFleet for usage and error information. +// +// Returned Error Types: +// +// - InternalServerException +// The request couldn't be completed because the server temporarily failed. +// +// - ResourceNotFoundException +// The resource wasn't found. +// +// - ThrottlingException +// The request couldn't be completed due to throttling. +// +// - ValidationException +// The input fails to satisfy the constraints specified by an Amazon Web Services +// service. +// +// - AccessDeniedException +// You don't have sufficient permission to perform this action. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/iotfleetwise-2021-06-17/GetFleet +func (c *IoTFleetWise) GetFleet(input *GetFleetInput) (*GetFleetOutput, error) { + req, out := c.GetFleetRequest(input) + return out, req.Send() +} + +// GetFleetWithContext is the same as GetFleet with the addition of +// the ability to pass a context and additional request options. +// +// See GetFleet for details on how to use this API operation. +// +// The context must be non-nil and will be used for request cancellation. If +// the context is nil a panic will occur. In the future the SDK may create +// sub-contexts for http.Requests. See https://golang.org/pkg/context/ +// for more information on using Contexts. +func (c *IoTFleetWise) GetFleetWithContext(ctx aws.Context, input *GetFleetInput, opts ...request.Option) (*GetFleetOutput, error) { + req, out := c.GetFleetRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opGetLoggingOptions = "GetLoggingOptions" + +// GetLoggingOptionsRequest generates a "aws/request.Request" representing the +// client's request for the GetLoggingOptions operation. The "output" return +// value will be populated with the request's response once the request completes +// successfully. +// +// Use "Send" method on the returned Request to send the API call to the service. +// the "output" return value is not valid until after Send returns without error. +// +// See GetLoggingOptions for more information on using the GetLoggingOptions +// API call, and error handling. +// +// This method is useful when you want to inject custom logic or configuration +// into the SDK's request lifecycle. Such as custom headers, or retry logic. +// +// // Example sending a request using the GetLoggingOptionsRequest method. +// req, resp := client.GetLoggingOptionsRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/iotfleetwise-2021-06-17/GetLoggingOptions +func (c *IoTFleetWise) GetLoggingOptionsRequest(input *GetLoggingOptionsInput) (req *request.Request, output *GetLoggingOptionsOutput) { + op := &request.Operation{ + Name: opGetLoggingOptions, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &GetLoggingOptionsInput{} + } + + output = &GetLoggingOptionsOutput{} + req = c.newRequest(op, input, output) + return +} + +// GetLoggingOptions API operation for AWS IoT FleetWise. +// +// Retrieves the logging options. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS IoT FleetWise's +// API operation GetLoggingOptions for usage and error information. +// +// Returned Error Types: +// +// - InternalServerException +// The request couldn't be completed because the server temporarily failed. +// +// - ThrottlingException +// The request couldn't be completed due to throttling. +// +// - AccessDeniedException +// You don't have sufficient permission to perform this action. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/iotfleetwise-2021-06-17/GetLoggingOptions +func (c *IoTFleetWise) GetLoggingOptions(input *GetLoggingOptionsInput) (*GetLoggingOptionsOutput, error) { + req, out := c.GetLoggingOptionsRequest(input) + return out, req.Send() +} + +// GetLoggingOptionsWithContext is the same as GetLoggingOptions with the addition of +// the ability to pass a context and additional request options. +// +// See GetLoggingOptions for details on how to use this API operation. +// +// The context must be non-nil and will be used for request cancellation. If +// the context is nil a panic will occur. In the future the SDK may create +// sub-contexts for http.Requests. See https://golang.org/pkg/context/ +// for more information on using Contexts. +func (c *IoTFleetWise) GetLoggingOptionsWithContext(ctx aws.Context, input *GetLoggingOptionsInput, opts ...request.Option) (*GetLoggingOptionsOutput, error) { + req, out := c.GetLoggingOptionsRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opGetModelManifest = "GetModelManifest" + +// GetModelManifestRequest generates a "aws/request.Request" representing the +// client's request for the GetModelManifest operation. The "output" return +// value will be populated with the request's response once the request completes +// successfully. +// +// Use "Send" method on the returned Request to send the API call to the service. +// the "output" return value is not valid until after Send returns without error. +// +// See GetModelManifest for more information on using the GetModelManifest +// API call, and error handling. +// +// This method is useful when you want to inject custom logic or configuration +// into the SDK's request lifecycle. Such as custom headers, or retry logic. +// +// // Example sending a request using the GetModelManifestRequest method. +// req, resp := client.GetModelManifestRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/iotfleetwise-2021-06-17/GetModelManifest +func (c *IoTFleetWise) GetModelManifestRequest(input *GetModelManifestInput) (req *request.Request, output *GetModelManifestOutput) { + op := &request.Operation{ + Name: opGetModelManifest, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &GetModelManifestInput{} + } + + output = &GetModelManifestOutput{} + req = c.newRequest(op, input, output) + return +} + +// GetModelManifest API operation for AWS IoT FleetWise. +// +// Retrieves information about a vehicle model (model manifest). +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS IoT FleetWise's +// API operation GetModelManifest for usage and error information. +// +// Returned Error Types: +// +// - ResourceNotFoundException +// The resource wasn't found. +// +// - InternalServerException +// The request couldn't be completed because the server temporarily failed. +// +// - ThrottlingException +// The request couldn't be completed due to throttling. +// +// - AccessDeniedException +// You don't have sufficient permission to perform this action. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/iotfleetwise-2021-06-17/GetModelManifest +func (c *IoTFleetWise) GetModelManifest(input *GetModelManifestInput) (*GetModelManifestOutput, error) { + req, out := c.GetModelManifestRequest(input) + return out, req.Send() +} + +// GetModelManifestWithContext is the same as GetModelManifest with the addition of +// the ability to pass a context and additional request options. +// +// See GetModelManifest for details on how to use this API operation. +// +// The context must be non-nil and will be used for request cancellation. If +// the context is nil a panic will occur. In the future the SDK may create +// sub-contexts for http.Requests. See https://golang.org/pkg/context/ +// for more information on using Contexts. +func (c *IoTFleetWise) GetModelManifestWithContext(ctx aws.Context, input *GetModelManifestInput, opts ...request.Option) (*GetModelManifestOutput, error) { + req, out := c.GetModelManifestRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opGetRegisterAccountStatus = "GetRegisterAccountStatus" + +// GetRegisterAccountStatusRequest generates a "aws/request.Request" representing the +// client's request for the GetRegisterAccountStatus operation. The "output" return +// value will be populated with the request's response once the request completes +// successfully. +// +// Use "Send" method on the returned Request to send the API call to the service. +// the "output" return value is not valid until after Send returns without error. +// +// See GetRegisterAccountStatus for more information on using the GetRegisterAccountStatus +// API call, and error handling. +// +// This method is useful when you want to inject custom logic or configuration +// into the SDK's request lifecycle. Such as custom headers, or retry logic. +// +// // Example sending a request using the GetRegisterAccountStatusRequest method. +// req, resp := client.GetRegisterAccountStatusRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/iotfleetwise-2021-06-17/GetRegisterAccountStatus +func (c *IoTFleetWise) GetRegisterAccountStatusRequest(input *GetRegisterAccountStatusInput) (req *request.Request, output *GetRegisterAccountStatusOutput) { + op := &request.Operation{ + Name: opGetRegisterAccountStatus, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &GetRegisterAccountStatusInput{} + } + + output = &GetRegisterAccountStatusOutput{} + req = c.newRequest(op, input, output) + return +} + +// GetRegisterAccountStatus API operation for AWS IoT FleetWise. +// +// Retrieves information about the status of registering your Amazon Web Services +// account, IAM, and Amazon Timestream resources so that Amazon Web Services +// IoT FleetWise can transfer your vehicle data to the Amazon Web Services Cloud. +// +// For more information, including step-by-step procedures, see Setting up Amazon +// Web Services IoT FleetWise (https://docs.aws.amazon.com/iot-fleetwise/latest/developerguide/setting-up.html). +// +// This API operation doesn't require input parameters. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS IoT FleetWise's +// API operation GetRegisterAccountStatus for usage and error information. +// +// Returned Error Types: +// +// - ResourceNotFoundException +// The resource wasn't found. +// +// - InternalServerException +// The request couldn't be completed because the server temporarily failed. +// +// - ThrottlingException +// The request couldn't be completed due to throttling. +// +// - ValidationException +// The input fails to satisfy the constraints specified by an Amazon Web Services +// service. +// +// - AccessDeniedException +// You don't have sufficient permission to perform this action. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/iotfleetwise-2021-06-17/GetRegisterAccountStatus +func (c *IoTFleetWise) GetRegisterAccountStatus(input *GetRegisterAccountStatusInput) (*GetRegisterAccountStatusOutput, error) { + req, out := c.GetRegisterAccountStatusRequest(input) + return out, req.Send() +} + +// GetRegisterAccountStatusWithContext is the same as GetRegisterAccountStatus with the addition of +// the ability to pass a context and additional request options. +// +// See GetRegisterAccountStatus for details on how to use this API operation. +// +// The context must be non-nil and will be used for request cancellation. If +// the context is nil a panic will occur. In the future the SDK may create +// sub-contexts for http.Requests. See https://golang.org/pkg/context/ +// for more information on using Contexts. +func (c *IoTFleetWise) GetRegisterAccountStatusWithContext(ctx aws.Context, input *GetRegisterAccountStatusInput, opts ...request.Option) (*GetRegisterAccountStatusOutput, error) { + req, out := c.GetRegisterAccountStatusRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opGetSignalCatalog = "GetSignalCatalog" + +// GetSignalCatalogRequest generates a "aws/request.Request" representing the +// client's request for the GetSignalCatalog operation. The "output" return +// value will be populated with the request's response once the request completes +// successfully. +// +// Use "Send" method on the returned Request to send the API call to the service. +// the "output" return value is not valid until after Send returns without error. +// +// See GetSignalCatalog for more information on using the GetSignalCatalog +// API call, and error handling. +// +// This method is useful when you want to inject custom logic or configuration +// into the SDK's request lifecycle. Such as custom headers, or retry logic. +// +// // Example sending a request using the GetSignalCatalogRequest method. +// req, resp := client.GetSignalCatalogRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/iotfleetwise-2021-06-17/GetSignalCatalog +func (c *IoTFleetWise) GetSignalCatalogRequest(input *GetSignalCatalogInput) (req *request.Request, output *GetSignalCatalogOutput) { + op := &request.Operation{ + Name: opGetSignalCatalog, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &GetSignalCatalogInput{} + } + + output = &GetSignalCatalogOutput{} + req = c.newRequest(op, input, output) + return +} + +// GetSignalCatalog API operation for AWS IoT FleetWise. +// +// Retrieves information about a signal catalog. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS IoT FleetWise's +// API operation GetSignalCatalog for usage and error information. +// +// Returned Error Types: +// +// - ResourceNotFoundException +// The resource wasn't found. +// +// - InternalServerException +// The request couldn't be completed because the server temporarily failed. +// +// - ThrottlingException +// The request couldn't be completed due to throttling. +// +// - ValidationException +// The input fails to satisfy the constraints specified by an Amazon Web Services +// service. +// +// - AccessDeniedException +// You don't have sufficient permission to perform this action. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/iotfleetwise-2021-06-17/GetSignalCatalog +func (c *IoTFleetWise) GetSignalCatalog(input *GetSignalCatalogInput) (*GetSignalCatalogOutput, error) { + req, out := c.GetSignalCatalogRequest(input) + return out, req.Send() +} + +// GetSignalCatalogWithContext is the same as GetSignalCatalog with the addition of +// the ability to pass a context and additional request options. +// +// See GetSignalCatalog for details on how to use this API operation. +// +// The context must be non-nil and will be used for request cancellation. If +// the context is nil a panic will occur. In the future the SDK may create +// sub-contexts for http.Requests. See https://golang.org/pkg/context/ +// for more information on using Contexts. +func (c *IoTFleetWise) GetSignalCatalogWithContext(ctx aws.Context, input *GetSignalCatalogInput, opts ...request.Option) (*GetSignalCatalogOutput, error) { + req, out := c.GetSignalCatalogRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opGetVehicle = "GetVehicle" + +// GetVehicleRequest generates a "aws/request.Request" representing the +// client's request for the GetVehicle operation. The "output" return +// value will be populated with the request's response once the request completes +// successfully. +// +// Use "Send" method on the returned Request to send the API call to the service. +// the "output" return value is not valid until after Send returns without error. +// +// See GetVehicle for more information on using the GetVehicle +// API call, and error handling. +// +// This method is useful when you want to inject custom logic or configuration +// into the SDK's request lifecycle. Such as custom headers, or retry logic. +// +// // Example sending a request using the GetVehicleRequest method. +// req, resp := client.GetVehicleRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/iotfleetwise-2021-06-17/GetVehicle +func (c *IoTFleetWise) GetVehicleRequest(input *GetVehicleInput) (req *request.Request, output *GetVehicleOutput) { + op := &request.Operation{ + Name: opGetVehicle, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &GetVehicleInput{} + } + + output = &GetVehicleOutput{} + req = c.newRequest(op, input, output) + return +} + +// GetVehicle API operation for AWS IoT FleetWise. +// +// Retrieves information about a vehicle. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS IoT FleetWise's +// API operation GetVehicle for usage and error information. +// +// Returned Error Types: +// +// - InternalServerException +// The request couldn't be completed because the server temporarily failed. +// +// - ResourceNotFoundException +// The resource wasn't found. +// +// - ThrottlingException +// The request couldn't be completed due to throttling. +// +// - ValidationException +// The input fails to satisfy the constraints specified by an Amazon Web Services +// service. +// +// - AccessDeniedException +// You don't have sufficient permission to perform this action. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/iotfleetwise-2021-06-17/GetVehicle +func (c *IoTFleetWise) GetVehicle(input *GetVehicleInput) (*GetVehicleOutput, error) { + req, out := c.GetVehicleRequest(input) + return out, req.Send() +} + +// GetVehicleWithContext is the same as GetVehicle with the addition of +// the ability to pass a context and additional request options. +// +// See GetVehicle for details on how to use this API operation. +// +// The context must be non-nil and will be used for request cancellation. If +// the context is nil a panic will occur. In the future the SDK may create +// sub-contexts for http.Requests. See https://golang.org/pkg/context/ +// for more information on using Contexts. +func (c *IoTFleetWise) GetVehicleWithContext(ctx aws.Context, input *GetVehicleInput, opts ...request.Option) (*GetVehicleOutput, error) { + req, out := c.GetVehicleRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opGetVehicleStatus = "GetVehicleStatus" + +// GetVehicleStatusRequest generates a "aws/request.Request" representing the +// client's request for the GetVehicleStatus operation. The "output" return +// value will be populated with the request's response once the request completes +// successfully. +// +// Use "Send" method on the returned Request to send the API call to the service. +// the "output" return value is not valid until after Send returns without error. +// +// See GetVehicleStatus for more information on using the GetVehicleStatus +// API call, and error handling. +// +// This method is useful when you want to inject custom logic or configuration +// into the SDK's request lifecycle. Such as custom headers, or retry logic. +// +// // Example sending a request using the GetVehicleStatusRequest method. +// req, resp := client.GetVehicleStatusRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/iotfleetwise-2021-06-17/GetVehicleStatus +func (c *IoTFleetWise) GetVehicleStatusRequest(input *GetVehicleStatusInput) (req *request.Request, output *GetVehicleStatusOutput) { + op := &request.Operation{ + Name: opGetVehicleStatus, + HTTPMethod: "POST", + HTTPPath: "/", + Paginator: &request.Paginator{ + InputTokens: []string{"nextToken"}, + OutputTokens: []string{"nextToken"}, + LimitToken: "maxResults", + TruncationToken: "", + }, + } + + if input == nil { + input = &GetVehicleStatusInput{} + } + + output = &GetVehicleStatusOutput{} + req = c.newRequest(op, input, output) + return +} + +// GetVehicleStatus API operation for AWS IoT FleetWise. +// +// Retrieves information about the status of a vehicle with any associated campaigns. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS IoT FleetWise's +// API operation GetVehicleStatus for usage and error information. +// +// Returned Error Types: +// +// - ResourceNotFoundException +// The resource wasn't found. +// +// - InternalServerException +// The request couldn't be completed because the server temporarily failed. +// +// - ThrottlingException +// The request couldn't be completed due to throttling. +// +// - ValidationException +// The input fails to satisfy the constraints specified by an Amazon Web Services +// service. +// +// - AccessDeniedException +// You don't have sufficient permission to perform this action. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/iotfleetwise-2021-06-17/GetVehicleStatus +func (c *IoTFleetWise) GetVehicleStatus(input *GetVehicleStatusInput) (*GetVehicleStatusOutput, error) { + req, out := c.GetVehicleStatusRequest(input) + return out, req.Send() +} + +// GetVehicleStatusWithContext is the same as GetVehicleStatus with the addition of +// the ability to pass a context and additional request options. +// +// See GetVehicleStatus for details on how to use this API operation. +// +// The context must be non-nil and will be used for request cancellation. If +// the context is nil a panic will occur. In the future the SDK may create +// sub-contexts for http.Requests. See https://golang.org/pkg/context/ +// for more information on using Contexts. +func (c *IoTFleetWise) GetVehicleStatusWithContext(ctx aws.Context, input *GetVehicleStatusInput, opts ...request.Option) (*GetVehicleStatusOutput, error) { + req, out := c.GetVehicleStatusRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +// GetVehicleStatusPages iterates over the pages of a GetVehicleStatus operation, +// calling the "fn" function with the response data for each page. To stop +// iterating, return false from the fn function. +// +// See GetVehicleStatus method for more information on how to use this operation. +// +// Note: This operation can generate multiple requests to a service. +// +// // Example iterating over at most 3 pages of a GetVehicleStatus operation. +// pageNum := 0 +// err := client.GetVehicleStatusPages(params, +// func(page *iotfleetwise.GetVehicleStatusOutput, lastPage bool) bool { +// pageNum++ +// fmt.Println(page) +// return pageNum <= 3 +// }) +func (c *IoTFleetWise) GetVehicleStatusPages(input *GetVehicleStatusInput, fn func(*GetVehicleStatusOutput, bool) bool) error { + return c.GetVehicleStatusPagesWithContext(aws.BackgroundContext(), input, fn) +} + +// GetVehicleStatusPagesWithContext same as GetVehicleStatusPages except +// it takes a Context and allows setting request options on the pages. +// +// The context must be non-nil and will be used for request cancellation. If +// the context is nil a panic will occur. In the future the SDK may create +// sub-contexts for http.Requests. See https://golang.org/pkg/context/ +// for more information on using Contexts. +func (c *IoTFleetWise) GetVehicleStatusPagesWithContext(ctx aws.Context, input *GetVehicleStatusInput, fn func(*GetVehicleStatusOutput, bool) bool, opts ...request.Option) error { + p := request.Pagination{ + NewRequest: func() (*request.Request, error) { + var inCpy *GetVehicleStatusInput + if input != nil { + tmp := *input + inCpy = &tmp + } + req, _ := c.GetVehicleStatusRequest(inCpy) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return req, nil + }, + } + + for p.Next() { + if !fn(p.Page().(*GetVehicleStatusOutput), !p.HasNextPage()) { + break + } + } + + return p.Err() +} + +const opImportDecoderManifest = "ImportDecoderManifest" + +// ImportDecoderManifestRequest generates a "aws/request.Request" representing the +// client's request for the ImportDecoderManifest operation. The "output" return +// value will be populated with the request's response once the request completes +// successfully. +// +// Use "Send" method on the returned Request to send the API call to the service. +// the "output" return value is not valid until after Send returns without error. +// +// See ImportDecoderManifest for more information on using the ImportDecoderManifest +// API call, and error handling. +// +// This method is useful when you want to inject custom logic or configuration +// into the SDK's request lifecycle. Such as custom headers, or retry logic. +// +// // Example sending a request using the ImportDecoderManifestRequest method. +// req, resp := client.ImportDecoderManifestRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/iotfleetwise-2021-06-17/ImportDecoderManifest +func (c *IoTFleetWise) ImportDecoderManifestRequest(input *ImportDecoderManifestInput) (req *request.Request, output *ImportDecoderManifestOutput) { + op := &request.Operation{ + Name: opImportDecoderManifest, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &ImportDecoderManifestInput{} + } + + output = &ImportDecoderManifestOutput{} + req = c.newRequest(op, input, output) + return +} + +// ImportDecoderManifest API operation for AWS IoT FleetWise. +// +// Creates a decoder manifest using your existing CAN DBC file from your local +// device. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS IoT FleetWise's +// API operation ImportDecoderManifest for usage and error information. +// +// Returned Error Types: +// +// - ResourceNotFoundException +// The resource wasn't found. +// +// - InternalServerException +// The request couldn't be completed because the server temporarily failed. +// +// - ConflictException +// The request has conflicting operations. This can occur if you're trying to +// perform more than one operation on the same resource at the same time. +// +// - DecoderManifestValidationException +// The request couldn't be completed because it contains signal decoders with +// one or more validation errors. +// +// - ThrottlingException +// The request couldn't be completed due to throttling. +// +// - ValidationException +// The input fails to satisfy the constraints specified by an Amazon Web Services +// service. +// +// - InvalidSignalsException +// The request couldn't be completed because it contains signals that aren't +// valid. +// +// - AccessDeniedException +// You don't have sufficient permission to perform this action. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/iotfleetwise-2021-06-17/ImportDecoderManifest +func (c *IoTFleetWise) ImportDecoderManifest(input *ImportDecoderManifestInput) (*ImportDecoderManifestOutput, error) { + req, out := c.ImportDecoderManifestRequest(input) + return out, req.Send() +} + +// ImportDecoderManifestWithContext is the same as ImportDecoderManifest with the addition of +// the ability to pass a context and additional request options. +// +// See ImportDecoderManifest for details on how to use this API operation. +// +// The context must be non-nil and will be used for request cancellation. If +// the context is nil a panic will occur. In the future the SDK may create +// sub-contexts for http.Requests. See https://golang.org/pkg/context/ +// for more information on using Contexts. +func (c *IoTFleetWise) ImportDecoderManifestWithContext(ctx aws.Context, input *ImportDecoderManifestInput, opts ...request.Option) (*ImportDecoderManifestOutput, error) { + req, out := c.ImportDecoderManifestRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opImportSignalCatalog = "ImportSignalCatalog" + +// ImportSignalCatalogRequest generates a "aws/request.Request" representing the +// client's request for the ImportSignalCatalog operation. The "output" return +// value will be populated with the request's response once the request completes +// successfully. +// +// Use "Send" method on the returned Request to send the API call to the service. +// the "output" return value is not valid until after Send returns without error. +// +// See ImportSignalCatalog for more information on using the ImportSignalCatalog +// API call, and error handling. +// +// This method is useful when you want to inject custom logic or configuration +// into the SDK's request lifecycle. Such as custom headers, or retry logic. +// +// // Example sending a request using the ImportSignalCatalogRequest method. +// req, resp := client.ImportSignalCatalogRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/iotfleetwise-2021-06-17/ImportSignalCatalog +func (c *IoTFleetWise) ImportSignalCatalogRequest(input *ImportSignalCatalogInput) (req *request.Request, output *ImportSignalCatalogOutput) { + op := &request.Operation{ + Name: opImportSignalCatalog, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &ImportSignalCatalogInput{} + } + + output = &ImportSignalCatalogOutput{} + req = c.newRequest(op, input, output) + return +} + +// ImportSignalCatalog API operation for AWS IoT FleetWise. +// +// Creates a signal catalog using your existing VSS formatted content from your +// local device. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS IoT FleetWise's +// API operation ImportSignalCatalog for usage and error information. +// +// Returned Error Types: +// +// - ResourceNotFoundException +// The resource wasn't found. +// +// - InternalServerException +// The request couldn't be completed because the server temporarily failed. +// +// - ConflictException +// The request has conflicting operations. This can occur if you're trying to +// perform more than one operation on the same resource at the same time. +// +// - LimitExceededException +// A service quota was exceeded. +// +// - ThrottlingException +// The request couldn't be completed due to throttling. +// +// - ValidationException +// The input fails to satisfy the constraints specified by an Amazon Web Services +// service. +// +// - InvalidSignalsException +// The request couldn't be completed because it contains signals that aren't +// valid. +// +// - AccessDeniedException +// You don't have sufficient permission to perform this action. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/iotfleetwise-2021-06-17/ImportSignalCatalog +func (c *IoTFleetWise) ImportSignalCatalog(input *ImportSignalCatalogInput) (*ImportSignalCatalogOutput, error) { + req, out := c.ImportSignalCatalogRequest(input) + return out, req.Send() +} + +// ImportSignalCatalogWithContext is the same as ImportSignalCatalog with the addition of +// the ability to pass a context and additional request options. +// +// See ImportSignalCatalog for details on how to use this API operation. +// +// The context must be non-nil and will be used for request cancellation. If +// the context is nil a panic will occur. In the future the SDK may create +// sub-contexts for http.Requests. See https://golang.org/pkg/context/ +// for more information on using Contexts. +func (c *IoTFleetWise) ImportSignalCatalogWithContext(ctx aws.Context, input *ImportSignalCatalogInput, opts ...request.Option) (*ImportSignalCatalogOutput, error) { + req, out := c.ImportSignalCatalogRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opListCampaigns = "ListCampaigns" + +// ListCampaignsRequest generates a "aws/request.Request" representing the +// client's request for the ListCampaigns operation. The "output" return +// value will be populated with the request's response once the request completes +// successfully. +// +// Use "Send" method on the returned Request to send the API call to the service. +// the "output" return value is not valid until after Send returns without error. +// +// See ListCampaigns for more information on using the ListCampaigns +// API call, and error handling. +// +// This method is useful when you want to inject custom logic or configuration +// into the SDK's request lifecycle. Such as custom headers, or retry logic. +// +// // Example sending a request using the ListCampaignsRequest method. +// req, resp := client.ListCampaignsRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/iotfleetwise-2021-06-17/ListCampaigns +func (c *IoTFleetWise) ListCampaignsRequest(input *ListCampaignsInput) (req *request.Request, output *ListCampaignsOutput) { + op := &request.Operation{ + Name: opListCampaigns, + HTTPMethod: "POST", + HTTPPath: "/", + Paginator: &request.Paginator{ + InputTokens: []string{"nextToken"}, + OutputTokens: []string{"nextToken"}, + LimitToken: "maxResults", + TruncationToken: "", + }, + } + + if input == nil { + input = &ListCampaignsInput{} + } + + output = &ListCampaignsOutput{} + req = c.newRequest(op, input, output) + return +} + +// ListCampaigns API operation for AWS IoT FleetWise. +// +// Lists information about created campaigns. +// +// This API operation uses pagination. Specify the nextToken parameter in the +// request to return more results. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS IoT FleetWise's +// API operation ListCampaigns for usage and error information. +// +// Returned Error Types: +// +// - InternalServerException +// The request couldn't be completed because the server temporarily failed. +// +// - ThrottlingException +// The request couldn't be completed due to throttling. +// +// - ValidationException +// The input fails to satisfy the constraints specified by an Amazon Web Services +// service. +// +// - AccessDeniedException +// You don't have sufficient permission to perform this action. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/iotfleetwise-2021-06-17/ListCampaigns +func (c *IoTFleetWise) ListCampaigns(input *ListCampaignsInput) (*ListCampaignsOutput, error) { + req, out := c.ListCampaignsRequest(input) + return out, req.Send() +} + +// ListCampaignsWithContext is the same as ListCampaigns with the addition of +// the ability to pass a context and additional request options. +// +// See ListCampaigns for details on how to use this API operation. +// +// The context must be non-nil and will be used for request cancellation. If +// the context is nil a panic will occur. In the future the SDK may create +// sub-contexts for http.Requests. See https://golang.org/pkg/context/ +// for more information on using Contexts. +func (c *IoTFleetWise) ListCampaignsWithContext(ctx aws.Context, input *ListCampaignsInput, opts ...request.Option) (*ListCampaignsOutput, error) { + req, out := c.ListCampaignsRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +// ListCampaignsPages iterates over the pages of a ListCampaigns operation, +// calling the "fn" function with the response data for each page. To stop +// iterating, return false from the fn function. +// +// See ListCampaigns method for more information on how to use this operation. +// +// Note: This operation can generate multiple requests to a service. +// +// // Example iterating over at most 3 pages of a ListCampaigns operation. +// pageNum := 0 +// err := client.ListCampaignsPages(params, +// func(page *iotfleetwise.ListCampaignsOutput, lastPage bool) bool { +// pageNum++ +// fmt.Println(page) +// return pageNum <= 3 +// }) +func (c *IoTFleetWise) ListCampaignsPages(input *ListCampaignsInput, fn func(*ListCampaignsOutput, bool) bool) error { + return c.ListCampaignsPagesWithContext(aws.BackgroundContext(), input, fn) +} + +// ListCampaignsPagesWithContext same as ListCampaignsPages except +// it takes a Context and allows setting request options on the pages. +// +// The context must be non-nil and will be used for request cancellation. If +// the context is nil a panic will occur. In the future the SDK may create +// sub-contexts for http.Requests. See https://golang.org/pkg/context/ +// for more information on using Contexts. +func (c *IoTFleetWise) ListCampaignsPagesWithContext(ctx aws.Context, input *ListCampaignsInput, fn func(*ListCampaignsOutput, bool) bool, opts ...request.Option) error { + p := request.Pagination{ + NewRequest: func() (*request.Request, error) { + var inCpy *ListCampaignsInput + if input != nil { + tmp := *input + inCpy = &tmp + } + req, _ := c.ListCampaignsRequest(inCpy) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return req, nil + }, + } + + for p.Next() { + if !fn(p.Page().(*ListCampaignsOutput), !p.HasNextPage()) { + break + } + } + + return p.Err() +} + +const opListDecoderManifestNetworkInterfaces = "ListDecoderManifestNetworkInterfaces" + +// ListDecoderManifestNetworkInterfacesRequest generates a "aws/request.Request" representing the +// client's request for the ListDecoderManifestNetworkInterfaces operation. The "output" return +// value will be populated with the request's response once the request completes +// successfully. +// +// Use "Send" method on the returned Request to send the API call to the service. +// the "output" return value is not valid until after Send returns without error. +// +// See ListDecoderManifestNetworkInterfaces for more information on using the ListDecoderManifestNetworkInterfaces +// API call, and error handling. +// +// This method is useful when you want to inject custom logic or configuration +// into the SDK's request lifecycle. Such as custom headers, or retry logic. +// +// // Example sending a request using the ListDecoderManifestNetworkInterfacesRequest method. +// req, resp := client.ListDecoderManifestNetworkInterfacesRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/iotfleetwise-2021-06-17/ListDecoderManifestNetworkInterfaces +func (c *IoTFleetWise) ListDecoderManifestNetworkInterfacesRequest(input *ListDecoderManifestNetworkInterfacesInput) (req *request.Request, output *ListDecoderManifestNetworkInterfacesOutput) { + op := &request.Operation{ + Name: opListDecoderManifestNetworkInterfaces, + HTTPMethod: "POST", + HTTPPath: "/", + Paginator: &request.Paginator{ + InputTokens: []string{"nextToken"}, + OutputTokens: []string{"nextToken"}, + LimitToken: "maxResults", + TruncationToken: "", + }, + } + + if input == nil { + input = &ListDecoderManifestNetworkInterfacesInput{} + } + + output = &ListDecoderManifestNetworkInterfacesOutput{} + req = c.newRequest(op, input, output) + return +} + +// ListDecoderManifestNetworkInterfaces API operation for AWS IoT FleetWise. +// +// Lists the network interfaces specified in a decoder manifest. +// +// This API operation uses pagination. Specify the nextToken parameter in the +// request to return more results. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS IoT FleetWise's +// API operation ListDecoderManifestNetworkInterfaces for usage and error information. +// +// Returned Error Types: +// +// - ResourceNotFoundException +// The resource wasn't found. +// +// - InternalServerException +// The request couldn't be completed because the server temporarily failed. +// +// - ThrottlingException +// The request couldn't be completed due to throttling. +// +// - ValidationException +// The input fails to satisfy the constraints specified by an Amazon Web Services +// service. +// +// - AccessDeniedException +// You don't have sufficient permission to perform this action. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/iotfleetwise-2021-06-17/ListDecoderManifestNetworkInterfaces +func (c *IoTFleetWise) ListDecoderManifestNetworkInterfaces(input *ListDecoderManifestNetworkInterfacesInput) (*ListDecoderManifestNetworkInterfacesOutput, error) { + req, out := c.ListDecoderManifestNetworkInterfacesRequest(input) + return out, req.Send() +} + +// ListDecoderManifestNetworkInterfacesWithContext is the same as ListDecoderManifestNetworkInterfaces with the addition of +// the ability to pass a context and additional request options. +// +// See ListDecoderManifestNetworkInterfaces for details on how to use this API operation. +// +// The context must be non-nil and will be used for request cancellation. If +// the context is nil a panic will occur. In the future the SDK may create +// sub-contexts for http.Requests. See https://golang.org/pkg/context/ +// for more information on using Contexts. +func (c *IoTFleetWise) ListDecoderManifestNetworkInterfacesWithContext(ctx aws.Context, input *ListDecoderManifestNetworkInterfacesInput, opts ...request.Option) (*ListDecoderManifestNetworkInterfacesOutput, error) { + req, out := c.ListDecoderManifestNetworkInterfacesRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +// ListDecoderManifestNetworkInterfacesPages iterates over the pages of a ListDecoderManifestNetworkInterfaces operation, +// calling the "fn" function with the response data for each page. To stop +// iterating, return false from the fn function. +// +// See ListDecoderManifestNetworkInterfaces method for more information on how to use this operation. +// +// Note: This operation can generate multiple requests to a service. +// +// // Example iterating over at most 3 pages of a ListDecoderManifestNetworkInterfaces operation. +// pageNum := 0 +// err := client.ListDecoderManifestNetworkInterfacesPages(params, +// func(page *iotfleetwise.ListDecoderManifestNetworkInterfacesOutput, lastPage bool) bool { +// pageNum++ +// fmt.Println(page) +// return pageNum <= 3 +// }) +func (c *IoTFleetWise) ListDecoderManifestNetworkInterfacesPages(input *ListDecoderManifestNetworkInterfacesInput, fn func(*ListDecoderManifestNetworkInterfacesOutput, bool) bool) error { + return c.ListDecoderManifestNetworkInterfacesPagesWithContext(aws.BackgroundContext(), input, fn) +} + +// ListDecoderManifestNetworkInterfacesPagesWithContext same as ListDecoderManifestNetworkInterfacesPages except +// it takes a Context and allows setting request options on the pages. +// +// The context must be non-nil and will be used for request cancellation. If +// the context is nil a panic will occur. In the future the SDK may create +// sub-contexts for http.Requests. See https://golang.org/pkg/context/ +// for more information on using Contexts. +func (c *IoTFleetWise) ListDecoderManifestNetworkInterfacesPagesWithContext(ctx aws.Context, input *ListDecoderManifestNetworkInterfacesInput, fn func(*ListDecoderManifestNetworkInterfacesOutput, bool) bool, opts ...request.Option) error { + p := request.Pagination{ + NewRequest: func() (*request.Request, error) { + var inCpy *ListDecoderManifestNetworkInterfacesInput + if input != nil { + tmp := *input + inCpy = &tmp + } + req, _ := c.ListDecoderManifestNetworkInterfacesRequest(inCpy) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return req, nil + }, + } + + for p.Next() { + if !fn(p.Page().(*ListDecoderManifestNetworkInterfacesOutput), !p.HasNextPage()) { + break + } + } + + return p.Err() +} + +const opListDecoderManifestSignals = "ListDecoderManifestSignals" + +// ListDecoderManifestSignalsRequest generates a "aws/request.Request" representing the +// client's request for the ListDecoderManifestSignals operation. The "output" return +// value will be populated with the request's response once the request completes +// successfully. +// +// Use "Send" method on the returned Request to send the API call to the service. +// the "output" return value is not valid until after Send returns without error. +// +// See ListDecoderManifestSignals for more information on using the ListDecoderManifestSignals +// API call, and error handling. +// +// This method is useful when you want to inject custom logic or configuration +// into the SDK's request lifecycle. Such as custom headers, or retry logic. +// +// // Example sending a request using the ListDecoderManifestSignalsRequest method. +// req, resp := client.ListDecoderManifestSignalsRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/iotfleetwise-2021-06-17/ListDecoderManifestSignals +func (c *IoTFleetWise) ListDecoderManifestSignalsRequest(input *ListDecoderManifestSignalsInput) (req *request.Request, output *ListDecoderManifestSignalsOutput) { + op := &request.Operation{ + Name: opListDecoderManifestSignals, + HTTPMethod: "POST", + HTTPPath: "/", + Paginator: &request.Paginator{ + InputTokens: []string{"nextToken"}, + OutputTokens: []string{"nextToken"}, + LimitToken: "maxResults", + TruncationToken: "", + }, + } + + if input == nil { + input = &ListDecoderManifestSignalsInput{} + } + + output = &ListDecoderManifestSignalsOutput{} + req = c.newRequest(op, input, output) + return +} + +// ListDecoderManifestSignals API operation for AWS IoT FleetWise. +// +// A list of information about signal decoders specified in a decoder manifest. +// +// This API operation uses pagination. Specify the nextToken parameter in the +// request to return more results. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS IoT FleetWise's +// API operation ListDecoderManifestSignals for usage and error information. +// +// Returned Error Types: +// +// - ResourceNotFoundException +// The resource wasn't found. +// +// - InternalServerException +// The request couldn't be completed because the server temporarily failed. +// +// - ThrottlingException +// The request couldn't be completed due to throttling. +// +// - ValidationException +// The input fails to satisfy the constraints specified by an Amazon Web Services +// service. +// +// - AccessDeniedException +// You don't have sufficient permission to perform this action. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/iotfleetwise-2021-06-17/ListDecoderManifestSignals +func (c *IoTFleetWise) ListDecoderManifestSignals(input *ListDecoderManifestSignalsInput) (*ListDecoderManifestSignalsOutput, error) { + req, out := c.ListDecoderManifestSignalsRequest(input) + return out, req.Send() +} + +// ListDecoderManifestSignalsWithContext is the same as ListDecoderManifestSignals with the addition of +// the ability to pass a context and additional request options. +// +// See ListDecoderManifestSignals for details on how to use this API operation. +// +// The context must be non-nil and will be used for request cancellation. If +// the context is nil a panic will occur. In the future the SDK may create +// sub-contexts for http.Requests. See https://golang.org/pkg/context/ +// for more information on using Contexts. +func (c *IoTFleetWise) ListDecoderManifestSignalsWithContext(ctx aws.Context, input *ListDecoderManifestSignalsInput, opts ...request.Option) (*ListDecoderManifestSignalsOutput, error) { + req, out := c.ListDecoderManifestSignalsRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +// ListDecoderManifestSignalsPages iterates over the pages of a ListDecoderManifestSignals operation, +// calling the "fn" function with the response data for each page. To stop +// iterating, return false from the fn function. +// +// See ListDecoderManifestSignals method for more information on how to use this operation. +// +// Note: This operation can generate multiple requests to a service. +// +// // Example iterating over at most 3 pages of a ListDecoderManifestSignals operation. +// pageNum := 0 +// err := client.ListDecoderManifestSignalsPages(params, +// func(page *iotfleetwise.ListDecoderManifestSignalsOutput, lastPage bool) bool { +// pageNum++ +// fmt.Println(page) +// return pageNum <= 3 +// }) +func (c *IoTFleetWise) ListDecoderManifestSignalsPages(input *ListDecoderManifestSignalsInput, fn func(*ListDecoderManifestSignalsOutput, bool) bool) error { + return c.ListDecoderManifestSignalsPagesWithContext(aws.BackgroundContext(), input, fn) +} + +// ListDecoderManifestSignalsPagesWithContext same as ListDecoderManifestSignalsPages except +// it takes a Context and allows setting request options on the pages. +// +// The context must be non-nil and will be used for request cancellation. If +// the context is nil a panic will occur. In the future the SDK may create +// sub-contexts for http.Requests. See https://golang.org/pkg/context/ +// for more information on using Contexts. +func (c *IoTFleetWise) ListDecoderManifestSignalsPagesWithContext(ctx aws.Context, input *ListDecoderManifestSignalsInput, fn func(*ListDecoderManifestSignalsOutput, bool) bool, opts ...request.Option) error { + p := request.Pagination{ + NewRequest: func() (*request.Request, error) { + var inCpy *ListDecoderManifestSignalsInput + if input != nil { + tmp := *input + inCpy = &tmp + } + req, _ := c.ListDecoderManifestSignalsRequest(inCpy) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return req, nil + }, + } + + for p.Next() { + if !fn(p.Page().(*ListDecoderManifestSignalsOutput), !p.HasNextPage()) { + break + } + } + + return p.Err() +} + +const opListDecoderManifests = "ListDecoderManifests" + +// ListDecoderManifestsRequest generates a "aws/request.Request" representing the +// client's request for the ListDecoderManifests operation. The "output" return +// value will be populated with the request's response once the request completes +// successfully. +// +// Use "Send" method on the returned Request to send the API call to the service. +// the "output" return value is not valid until after Send returns without error. +// +// See ListDecoderManifests for more information on using the ListDecoderManifests +// API call, and error handling. +// +// This method is useful when you want to inject custom logic or configuration +// into the SDK's request lifecycle. Such as custom headers, or retry logic. +// +// // Example sending a request using the ListDecoderManifestsRequest method. +// req, resp := client.ListDecoderManifestsRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/iotfleetwise-2021-06-17/ListDecoderManifests +func (c *IoTFleetWise) ListDecoderManifestsRequest(input *ListDecoderManifestsInput) (req *request.Request, output *ListDecoderManifestsOutput) { + op := &request.Operation{ + Name: opListDecoderManifests, + HTTPMethod: "POST", + HTTPPath: "/", + Paginator: &request.Paginator{ + InputTokens: []string{"nextToken"}, + OutputTokens: []string{"nextToken"}, + LimitToken: "maxResults", + TruncationToken: "", + }, + } + + if input == nil { + input = &ListDecoderManifestsInput{} + } + + output = &ListDecoderManifestsOutput{} + req = c.newRequest(op, input, output) + return +} + +// ListDecoderManifests API operation for AWS IoT FleetWise. +// +// Lists decoder manifests. +// +// This API operation uses pagination. Specify the nextToken parameter in the +// request to return more results. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS IoT FleetWise's +// API operation ListDecoderManifests for usage and error information. +// +// Returned Error Types: +// +// - InternalServerException +// The request couldn't be completed because the server temporarily failed. +// +// - ThrottlingException +// The request couldn't be completed due to throttling. +// +// - ValidationException +// The input fails to satisfy the constraints specified by an Amazon Web Services +// service. +// +// - AccessDeniedException +// You don't have sufficient permission to perform this action. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/iotfleetwise-2021-06-17/ListDecoderManifests +func (c *IoTFleetWise) ListDecoderManifests(input *ListDecoderManifestsInput) (*ListDecoderManifestsOutput, error) { + req, out := c.ListDecoderManifestsRequest(input) + return out, req.Send() +} + +// ListDecoderManifestsWithContext is the same as ListDecoderManifests with the addition of +// the ability to pass a context and additional request options. +// +// See ListDecoderManifests for details on how to use this API operation. +// +// The context must be non-nil and will be used for request cancellation. If +// the context is nil a panic will occur. In the future the SDK may create +// sub-contexts for http.Requests. See https://golang.org/pkg/context/ +// for more information on using Contexts. +func (c *IoTFleetWise) ListDecoderManifestsWithContext(ctx aws.Context, input *ListDecoderManifestsInput, opts ...request.Option) (*ListDecoderManifestsOutput, error) { + req, out := c.ListDecoderManifestsRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +// ListDecoderManifestsPages iterates over the pages of a ListDecoderManifests operation, +// calling the "fn" function with the response data for each page. To stop +// iterating, return false from the fn function. +// +// See ListDecoderManifests method for more information on how to use this operation. +// +// Note: This operation can generate multiple requests to a service. +// +// // Example iterating over at most 3 pages of a ListDecoderManifests operation. +// pageNum := 0 +// err := client.ListDecoderManifestsPages(params, +// func(page *iotfleetwise.ListDecoderManifestsOutput, lastPage bool) bool { +// pageNum++ +// fmt.Println(page) +// return pageNum <= 3 +// }) +func (c *IoTFleetWise) ListDecoderManifestsPages(input *ListDecoderManifestsInput, fn func(*ListDecoderManifestsOutput, bool) bool) error { + return c.ListDecoderManifestsPagesWithContext(aws.BackgroundContext(), input, fn) +} + +// ListDecoderManifestsPagesWithContext same as ListDecoderManifestsPages except +// it takes a Context and allows setting request options on the pages. +// +// The context must be non-nil and will be used for request cancellation. If +// the context is nil a panic will occur. In the future the SDK may create +// sub-contexts for http.Requests. See https://golang.org/pkg/context/ +// for more information on using Contexts. +func (c *IoTFleetWise) ListDecoderManifestsPagesWithContext(ctx aws.Context, input *ListDecoderManifestsInput, fn func(*ListDecoderManifestsOutput, bool) bool, opts ...request.Option) error { + p := request.Pagination{ + NewRequest: func() (*request.Request, error) { + var inCpy *ListDecoderManifestsInput + if input != nil { + tmp := *input + inCpy = &tmp + } + req, _ := c.ListDecoderManifestsRequest(inCpy) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return req, nil + }, + } + + for p.Next() { + if !fn(p.Page().(*ListDecoderManifestsOutput), !p.HasNextPage()) { + break + } + } + + return p.Err() +} + +const opListFleets = "ListFleets" + +// ListFleetsRequest generates a "aws/request.Request" representing the +// client's request for the ListFleets operation. The "output" return +// value will be populated with the request's response once the request completes +// successfully. +// +// Use "Send" method on the returned Request to send the API call to the service. +// the "output" return value is not valid until after Send returns without error. +// +// See ListFleets for more information on using the ListFleets +// API call, and error handling. +// +// This method is useful when you want to inject custom logic or configuration +// into the SDK's request lifecycle. Such as custom headers, or retry logic. +// +// // Example sending a request using the ListFleetsRequest method. +// req, resp := client.ListFleetsRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/iotfleetwise-2021-06-17/ListFleets +func (c *IoTFleetWise) ListFleetsRequest(input *ListFleetsInput) (req *request.Request, output *ListFleetsOutput) { + op := &request.Operation{ + Name: opListFleets, + HTTPMethod: "POST", + HTTPPath: "/", + Paginator: &request.Paginator{ + InputTokens: []string{"nextToken"}, + OutputTokens: []string{"nextToken"}, + LimitToken: "maxResults", + TruncationToken: "", + }, + } + + if input == nil { + input = &ListFleetsInput{} + } + + output = &ListFleetsOutput{} + req = c.newRequest(op, input, output) + return +} + +// ListFleets API operation for AWS IoT FleetWise. +// +// Retrieves information for each created fleet in an Amazon Web Services account. +// +// This API operation uses pagination. Specify the nextToken parameter in the +// request to return more results. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS IoT FleetWise's +// API operation ListFleets for usage and error information. +// +// Returned Error Types: +// +// - InternalServerException +// The request couldn't be completed because the server temporarily failed. +// +// - ResourceNotFoundException +// The resource wasn't found. +// +// - ThrottlingException +// The request couldn't be completed due to throttling. +// +// - ValidationException +// The input fails to satisfy the constraints specified by an Amazon Web Services +// service. +// +// - AccessDeniedException +// You don't have sufficient permission to perform this action. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/iotfleetwise-2021-06-17/ListFleets +func (c *IoTFleetWise) ListFleets(input *ListFleetsInput) (*ListFleetsOutput, error) { + req, out := c.ListFleetsRequest(input) + return out, req.Send() +} + +// ListFleetsWithContext is the same as ListFleets with the addition of +// the ability to pass a context and additional request options. +// +// See ListFleets for details on how to use this API operation. +// +// The context must be non-nil and will be used for request cancellation. If +// the context is nil a panic will occur. In the future the SDK may create +// sub-contexts for http.Requests. See https://golang.org/pkg/context/ +// for more information on using Contexts. +func (c *IoTFleetWise) ListFleetsWithContext(ctx aws.Context, input *ListFleetsInput, opts ...request.Option) (*ListFleetsOutput, error) { + req, out := c.ListFleetsRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +// ListFleetsPages iterates over the pages of a ListFleets operation, +// calling the "fn" function with the response data for each page. To stop +// iterating, return false from the fn function. +// +// See ListFleets method for more information on how to use this operation. +// +// Note: This operation can generate multiple requests to a service. +// +// // Example iterating over at most 3 pages of a ListFleets operation. +// pageNum := 0 +// err := client.ListFleetsPages(params, +// func(page *iotfleetwise.ListFleetsOutput, lastPage bool) bool { +// pageNum++ +// fmt.Println(page) +// return pageNum <= 3 +// }) +func (c *IoTFleetWise) ListFleetsPages(input *ListFleetsInput, fn func(*ListFleetsOutput, bool) bool) error { + return c.ListFleetsPagesWithContext(aws.BackgroundContext(), input, fn) +} + +// ListFleetsPagesWithContext same as ListFleetsPages except +// it takes a Context and allows setting request options on the pages. +// +// The context must be non-nil and will be used for request cancellation. If +// the context is nil a panic will occur. In the future the SDK may create +// sub-contexts for http.Requests. See https://golang.org/pkg/context/ +// for more information on using Contexts. +func (c *IoTFleetWise) ListFleetsPagesWithContext(ctx aws.Context, input *ListFleetsInput, fn func(*ListFleetsOutput, bool) bool, opts ...request.Option) error { + p := request.Pagination{ + NewRequest: func() (*request.Request, error) { + var inCpy *ListFleetsInput + if input != nil { + tmp := *input + inCpy = &tmp + } + req, _ := c.ListFleetsRequest(inCpy) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return req, nil + }, + } + + for p.Next() { + if !fn(p.Page().(*ListFleetsOutput), !p.HasNextPage()) { + break + } + } + + return p.Err() +} + +const opListFleetsForVehicle = "ListFleetsForVehicle" + +// ListFleetsForVehicleRequest generates a "aws/request.Request" representing the +// client's request for the ListFleetsForVehicle operation. The "output" return +// value will be populated with the request's response once the request completes +// successfully. +// +// Use "Send" method on the returned Request to send the API call to the service. +// the "output" return value is not valid until after Send returns without error. +// +// See ListFleetsForVehicle for more information on using the ListFleetsForVehicle +// API call, and error handling. +// +// This method is useful when you want to inject custom logic or configuration +// into the SDK's request lifecycle. Such as custom headers, or retry logic. +// +// // Example sending a request using the ListFleetsForVehicleRequest method. +// req, resp := client.ListFleetsForVehicleRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/iotfleetwise-2021-06-17/ListFleetsForVehicle +func (c *IoTFleetWise) ListFleetsForVehicleRequest(input *ListFleetsForVehicleInput) (req *request.Request, output *ListFleetsForVehicleOutput) { + op := &request.Operation{ + Name: opListFleetsForVehicle, + HTTPMethod: "POST", + HTTPPath: "/", + Paginator: &request.Paginator{ + InputTokens: []string{"nextToken"}, + OutputTokens: []string{"nextToken"}, + LimitToken: "maxResults", + TruncationToken: "", + }, + } + + if input == nil { + input = &ListFleetsForVehicleInput{} + } + + output = &ListFleetsForVehicleOutput{} + req = c.newRequest(op, input, output) + return +} + +// ListFleetsForVehicle API operation for AWS IoT FleetWise. +// +// Retrieves a list of IDs for all fleets that the vehicle is associated with. +// +// This API operation uses pagination. Specify the nextToken parameter in the +// request to return more results. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS IoT FleetWise's +// API operation ListFleetsForVehicle for usage and error information. +// +// Returned Error Types: +// +// - InternalServerException +// The request couldn't be completed because the server temporarily failed. +// +// - ResourceNotFoundException +// The resource wasn't found. +// +// - ThrottlingException +// The request couldn't be completed due to throttling. +// +// - ValidationException +// The input fails to satisfy the constraints specified by an Amazon Web Services +// service. +// +// - AccessDeniedException +// You don't have sufficient permission to perform this action. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/iotfleetwise-2021-06-17/ListFleetsForVehicle +func (c *IoTFleetWise) ListFleetsForVehicle(input *ListFleetsForVehicleInput) (*ListFleetsForVehicleOutput, error) { + req, out := c.ListFleetsForVehicleRequest(input) + return out, req.Send() +} + +// ListFleetsForVehicleWithContext is the same as ListFleetsForVehicle with the addition of +// the ability to pass a context and additional request options. +// +// See ListFleetsForVehicle for details on how to use this API operation. +// +// The context must be non-nil and will be used for request cancellation. If +// the context is nil a panic will occur. In the future the SDK may create +// sub-contexts for http.Requests. See https://golang.org/pkg/context/ +// for more information on using Contexts. +func (c *IoTFleetWise) ListFleetsForVehicleWithContext(ctx aws.Context, input *ListFleetsForVehicleInput, opts ...request.Option) (*ListFleetsForVehicleOutput, error) { + req, out := c.ListFleetsForVehicleRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +// ListFleetsForVehiclePages iterates over the pages of a ListFleetsForVehicle operation, +// calling the "fn" function with the response data for each page. To stop +// iterating, return false from the fn function. +// +// See ListFleetsForVehicle method for more information on how to use this operation. +// +// Note: This operation can generate multiple requests to a service. +// +// // Example iterating over at most 3 pages of a ListFleetsForVehicle operation. +// pageNum := 0 +// err := client.ListFleetsForVehiclePages(params, +// func(page *iotfleetwise.ListFleetsForVehicleOutput, lastPage bool) bool { +// pageNum++ +// fmt.Println(page) +// return pageNum <= 3 +// }) +func (c *IoTFleetWise) ListFleetsForVehiclePages(input *ListFleetsForVehicleInput, fn func(*ListFleetsForVehicleOutput, bool) bool) error { + return c.ListFleetsForVehiclePagesWithContext(aws.BackgroundContext(), input, fn) +} + +// ListFleetsForVehiclePagesWithContext same as ListFleetsForVehiclePages except +// it takes a Context and allows setting request options on the pages. +// +// The context must be non-nil and will be used for request cancellation. If +// the context is nil a panic will occur. In the future the SDK may create +// sub-contexts for http.Requests. See https://golang.org/pkg/context/ +// for more information on using Contexts. +func (c *IoTFleetWise) ListFleetsForVehiclePagesWithContext(ctx aws.Context, input *ListFleetsForVehicleInput, fn func(*ListFleetsForVehicleOutput, bool) bool, opts ...request.Option) error { + p := request.Pagination{ + NewRequest: func() (*request.Request, error) { + var inCpy *ListFleetsForVehicleInput + if input != nil { + tmp := *input + inCpy = &tmp + } + req, _ := c.ListFleetsForVehicleRequest(inCpy) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return req, nil + }, + } + + for p.Next() { + if !fn(p.Page().(*ListFleetsForVehicleOutput), !p.HasNextPage()) { + break + } + } + + return p.Err() +} + +const opListModelManifestNodes = "ListModelManifestNodes" + +// ListModelManifestNodesRequest generates a "aws/request.Request" representing the +// client's request for the ListModelManifestNodes operation. The "output" return +// value will be populated with the request's response once the request completes +// successfully. +// +// Use "Send" method on the returned Request to send the API call to the service. +// the "output" return value is not valid until after Send returns without error. +// +// See ListModelManifestNodes for more information on using the ListModelManifestNodes +// API call, and error handling. +// +// This method is useful when you want to inject custom logic or configuration +// into the SDK's request lifecycle. Such as custom headers, or retry logic. +// +// // Example sending a request using the ListModelManifestNodesRequest method. +// req, resp := client.ListModelManifestNodesRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/iotfleetwise-2021-06-17/ListModelManifestNodes +func (c *IoTFleetWise) ListModelManifestNodesRequest(input *ListModelManifestNodesInput) (req *request.Request, output *ListModelManifestNodesOutput) { + op := &request.Operation{ + Name: opListModelManifestNodes, + HTTPMethod: "POST", + HTTPPath: "/", + Paginator: &request.Paginator{ + InputTokens: []string{"nextToken"}, + OutputTokens: []string{"nextToken"}, + LimitToken: "maxResults", + TruncationToken: "", + }, + } + + if input == nil { + input = &ListModelManifestNodesInput{} + } + + output = &ListModelManifestNodesOutput{} + req = c.newRequest(op, input, output) + return +} + +// ListModelManifestNodes API operation for AWS IoT FleetWise. +// +// Lists information about nodes specified in a vehicle model (model manifest). +// +// This API operation uses pagination. Specify the nextToken parameter in the +// request to return more results. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS IoT FleetWise's +// API operation ListModelManifestNodes for usage and error information. +// +// Returned Error Types: +// +// - InternalServerException +// The request couldn't be completed because the server temporarily failed. +// +// - ResourceNotFoundException +// The resource wasn't found. +// +// - LimitExceededException +// A service quota was exceeded. +// +// - ThrottlingException +// The request couldn't be completed due to throttling. +// +// - ValidationException +// The input fails to satisfy the constraints specified by an Amazon Web Services +// service. +// +// - AccessDeniedException +// You don't have sufficient permission to perform this action. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/iotfleetwise-2021-06-17/ListModelManifestNodes +func (c *IoTFleetWise) ListModelManifestNodes(input *ListModelManifestNodesInput) (*ListModelManifestNodesOutput, error) { + req, out := c.ListModelManifestNodesRequest(input) + return out, req.Send() +} + +// ListModelManifestNodesWithContext is the same as ListModelManifestNodes with the addition of +// the ability to pass a context and additional request options. +// +// See ListModelManifestNodes for details on how to use this API operation. +// +// The context must be non-nil and will be used for request cancellation. If +// the context is nil a panic will occur. In the future the SDK may create +// sub-contexts for http.Requests. See https://golang.org/pkg/context/ +// for more information on using Contexts. +func (c *IoTFleetWise) ListModelManifestNodesWithContext(ctx aws.Context, input *ListModelManifestNodesInput, opts ...request.Option) (*ListModelManifestNodesOutput, error) { + req, out := c.ListModelManifestNodesRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +// ListModelManifestNodesPages iterates over the pages of a ListModelManifestNodes operation, +// calling the "fn" function with the response data for each page. To stop +// iterating, return false from the fn function. +// +// See ListModelManifestNodes method for more information on how to use this operation. +// +// Note: This operation can generate multiple requests to a service. +// +// // Example iterating over at most 3 pages of a ListModelManifestNodes operation. +// pageNum := 0 +// err := client.ListModelManifestNodesPages(params, +// func(page *iotfleetwise.ListModelManifestNodesOutput, lastPage bool) bool { +// pageNum++ +// fmt.Println(page) +// return pageNum <= 3 +// }) +func (c *IoTFleetWise) ListModelManifestNodesPages(input *ListModelManifestNodesInput, fn func(*ListModelManifestNodesOutput, bool) bool) error { + return c.ListModelManifestNodesPagesWithContext(aws.BackgroundContext(), input, fn) +} + +// ListModelManifestNodesPagesWithContext same as ListModelManifestNodesPages except +// it takes a Context and allows setting request options on the pages. +// +// The context must be non-nil and will be used for request cancellation. If +// the context is nil a panic will occur. In the future the SDK may create +// sub-contexts for http.Requests. See https://golang.org/pkg/context/ +// for more information on using Contexts. +func (c *IoTFleetWise) ListModelManifestNodesPagesWithContext(ctx aws.Context, input *ListModelManifestNodesInput, fn func(*ListModelManifestNodesOutput, bool) bool, opts ...request.Option) error { + p := request.Pagination{ + NewRequest: func() (*request.Request, error) { + var inCpy *ListModelManifestNodesInput + if input != nil { + tmp := *input + inCpy = &tmp + } + req, _ := c.ListModelManifestNodesRequest(inCpy) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return req, nil + }, + } + + for p.Next() { + if !fn(p.Page().(*ListModelManifestNodesOutput), !p.HasNextPage()) { + break + } + } + + return p.Err() +} + +const opListModelManifests = "ListModelManifests" + +// ListModelManifestsRequest generates a "aws/request.Request" representing the +// client's request for the ListModelManifests operation. The "output" return +// value will be populated with the request's response once the request completes +// successfully. +// +// Use "Send" method on the returned Request to send the API call to the service. +// the "output" return value is not valid until after Send returns without error. +// +// See ListModelManifests for more information on using the ListModelManifests +// API call, and error handling. +// +// This method is useful when you want to inject custom logic or configuration +// into the SDK's request lifecycle. Such as custom headers, or retry logic. +// +// // Example sending a request using the ListModelManifestsRequest method. +// req, resp := client.ListModelManifestsRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/iotfleetwise-2021-06-17/ListModelManifests +func (c *IoTFleetWise) ListModelManifestsRequest(input *ListModelManifestsInput) (req *request.Request, output *ListModelManifestsOutput) { + op := &request.Operation{ + Name: opListModelManifests, + HTTPMethod: "POST", + HTTPPath: "/", + Paginator: &request.Paginator{ + InputTokens: []string{"nextToken"}, + OutputTokens: []string{"nextToken"}, + LimitToken: "maxResults", + TruncationToken: "", + }, + } + + if input == nil { + input = &ListModelManifestsInput{} + } + + output = &ListModelManifestsOutput{} + req = c.newRequest(op, input, output) + return +} + +// ListModelManifests API operation for AWS IoT FleetWise. +// +// Retrieves a list of vehicle models (model manifests). +// +// This API operation uses pagination. Specify the nextToken parameter in the +// request to return more results. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS IoT FleetWise's +// API operation ListModelManifests for usage and error information. +// +// Returned Error Types: +// +// - InternalServerException +// The request couldn't be completed because the server temporarily failed. +// +// - ThrottlingException +// The request couldn't be completed due to throttling. +// +// - ValidationException +// The input fails to satisfy the constraints specified by an Amazon Web Services +// service. +// +// - AccessDeniedException +// You don't have sufficient permission to perform this action. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/iotfleetwise-2021-06-17/ListModelManifests +func (c *IoTFleetWise) ListModelManifests(input *ListModelManifestsInput) (*ListModelManifestsOutput, error) { + req, out := c.ListModelManifestsRequest(input) + return out, req.Send() +} + +// ListModelManifestsWithContext is the same as ListModelManifests with the addition of +// the ability to pass a context and additional request options. +// +// See ListModelManifests for details on how to use this API operation. +// +// The context must be non-nil and will be used for request cancellation. If +// the context is nil a panic will occur. In the future the SDK may create +// sub-contexts for http.Requests. See https://golang.org/pkg/context/ +// for more information on using Contexts. +func (c *IoTFleetWise) ListModelManifestsWithContext(ctx aws.Context, input *ListModelManifestsInput, opts ...request.Option) (*ListModelManifestsOutput, error) { + req, out := c.ListModelManifestsRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +// ListModelManifestsPages iterates over the pages of a ListModelManifests operation, +// calling the "fn" function with the response data for each page. To stop +// iterating, return false from the fn function. +// +// See ListModelManifests method for more information on how to use this operation. +// +// Note: This operation can generate multiple requests to a service. +// +// // Example iterating over at most 3 pages of a ListModelManifests operation. +// pageNum := 0 +// err := client.ListModelManifestsPages(params, +// func(page *iotfleetwise.ListModelManifestsOutput, lastPage bool) bool { +// pageNum++ +// fmt.Println(page) +// return pageNum <= 3 +// }) +func (c *IoTFleetWise) ListModelManifestsPages(input *ListModelManifestsInput, fn func(*ListModelManifestsOutput, bool) bool) error { + return c.ListModelManifestsPagesWithContext(aws.BackgroundContext(), input, fn) +} + +// ListModelManifestsPagesWithContext same as ListModelManifestsPages except +// it takes a Context and allows setting request options on the pages. +// +// The context must be non-nil and will be used for request cancellation. If +// the context is nil a panic will occur. In the future the SDK may create +// sub-contexts for http.Requests. See https://golang.org/pkg/context/ +// for more information on using Contexts. +func (c *IoTFleetWise) ListModelManifestsPagesWithContext(ctx aws.Context, input *ListModelManifestsInput, fn func(*ListModelManifestsOutput, bool) bool, opts ...request.Option) error { + p := request.Pagination{ + NewRequest: func() (*request.Request, error) { + var inCpy *ListModelManifestsInput + if input != nil { + tmp := *input + inCpy = &tmp + } + req, _ := c.ListModelManifestsRequest(inCpy) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return req, nil + }, + } + + for p.Next() { + if !fn(p.Page().(*ListModelManifestsOutput), !p.HasNextPage()) { + break + } + } + + return p.Err() +} + +const opListSignalCatalogNodes = "ListSignalCatalogNodes" + +// ListSignalCatalogNodesRequest generates a "aws/request.Request" representing the +// client's request for the ListSignalCatalogNodes operation. The "output" return +// value will be populated with the request's response once the request completes +// successfully. +// +// Use "Send" method on the returned Request to send the API call to the service. +// the "output" return value is not valid until after Send returns without error. +// +// See ListSignalCatalogNodes for more information on using the ListSignalCatalogNodes +// API call, and error handling. +// +// This method is useful when you want to inject custom logic or configuration +// into the SDK's request lifecycle. Such as custom headers, or retry logic. +// +// // Example sending a request using the ListSignalCatalogNodesRequest method. +// req, resp := client.ListSignalCatalogNodesRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/iotfleetwise-2021-06-17/ListSignalCatalogNodes +func (c *IoTFleetWise) ListSignalCatalogNodesRequest(input *ListSignalCatalogNodesInput) (req *request.Request, output *ListSignalCatalogNodesOutput) { + op := &request.Operation{ + Name: opListSignalCatalogNodes, + HTTPMethod: "POST", + HTTPPath: "/", + Paginator: &request.Paginator{ + InputTokens: []string{"nextToken"}, + OutputTokens: []string{"nextToken"}, + LimitToken: "maxResults", + TruncationToken: "", + }, + } + + if input == nil { + input = &ListSignalCatalogNodesInput{} + } + + output = &ListSignalCatalogNodesOutput{} + req = c.newRequest(op, input, output) + return +} + +// ListSignalCatalogNodes API operation for AWS IoT FleetWise. +// +// Lists of information about the signals (nodes) specified in a signal catalog. +// +// This API operation uses pagination. Specify the nextToken parameter in the +// request to return more results. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS IoT FleetWise's +// API operation ListSignalCatalogNodes for usage and error information. +// +// Returned Error Types: +// +// - InternalServerException +// The request couldn't be completed because the server temporarily failed. +// +// - ResourceNotFoundException +// The resource wasn't found. +// +// - LimitExceededException +// A service quota was exceeded. +// +// - ThrottlingException +// The request couldn't be completed due to throttling. +// +// - ValidationException +// The input fails to satisfy the constraints specified by an Amazon Web Services +// service. +// +// - AccessDeniedException +// You don't have sufficient permission to perform this action. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/iotfleetwise-2021-06-17/ListSignalCatalogNodes +func (c *IoTFleetWise) ListSignalCatalogNodes(input *ListSignalCatalogNodesInput) (*ListSignalCatalogNodesOutput, error) { + req, out := c.ListSignalCatalogNodesRequest(input) + return out, req.Send() +} + +// ListSignalCatalogNodesWithContext is the same as ListSignalCatalogNodes with the addition of +// the ability to pass a context and additional request options. +// +// See ListSignalCatalogNodes for details on how to use this API operation. +// +// The context must be non-nil and will be used for request cancellation. If +// the context is nil a panic will occur. In the future the SDK may create +// sub-contexts for http.Requests. See https://golang.org/pkg/context/ +// for more information on using Contexts. +func (c *IoTFleetWise) ListSignalCatalogNodesWithContext(ctx aws.Context, input *ListSignalCatalogNodesInput, opts ...request.Option) (*ListSignalCatalogNodesOutput, error) { + req, out := c.ListSignalCatalogNodesRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +// ListSignalCatalogNodesPages iterates over the pages of a ListSignalCatalogNodes operation, +// calling the "fn" function with the response data for each page. To stop +// iterating, return false from the fn function. +// +// See ListSignalCatalogNodes method for more information on how to use this operation. +// +// Note: This operation can generate multiple requests to a service. +// +// // Example iterating over at most 3 pages of a ListSignalCatalogNodes operation. +// pageNum := 0 +// err := client.ListSignalCatalogNodesPages(params, +// func(page *iotfleetwise.ListSignalCatalogNodesOutput, lastPage bool) bool { +// pageNum++ +// fmt.Println(page) +// return pageNum <= 3 +// }) +func (c *IoTFleetWise) ListSignalCatalogNodesPages(input *ListSignalCatalogNodesInput, fn func(*ListSignalCatalogNodesOutput, bool) bool) error { + return c.ListSignalCatalogNodesPagesWithContext(aws.BackgroundContext(), input, fn) +} + +// ListSignalCatalogNodesPagesWithContext same as ListSignalCatalogNodesPages except +// it takes a Context and allows setting request options on the pages. +// +// The context must be non-nil and will be used for request cancellation. If +// the context is nil a panic will occur. In the future the SDK may create +// sub-contexts for http.Requests. See https://golang.org/pkg/context/ +// for more information on using Contexts. +func (c *IoTFleetWise) ListSignalCatalogNodesPagesWithContext(ctx aws.Context, input *ListSignalCatalogNodesInput, fn func(*ListSignalCatalogNodesOutput, bool) bool, opts ...request.Option) error { + p := request.Pagination{ + NewRequest: func() (*request.Request, error) { + var inCpy *ListSignalCatalogNodesInput + if input != nil { + tmp := *input + inCpy = &tmp + } + req, _ := c.ListSignalCatalogNodesRequest(inCpy) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return req, nil + }, + } + + for p.Next() { + if !fn(p.Page().(*ListSignalCatalogNodesOutput), !p.HasNextPage()) { + break + } + } + + return p.Err() +} + +const opListSignalCatalogs = "ListSignalCatalogs" + +// ListSignalCatalogsRequest generates a "aws/request.Request" representing the +// client's request for the ListSignalCatalogs operation. The "output" return +// value will be populated with the request's response once the request completes +// successfully. +// +// Use "Send" method on the returned Request to send the API call to the service. +// the "output" return value is not valid until after Send returns without error. +// +// See ListSignalCatalogs for more information on using the ListSignalCatalogs +// API call, and error handling. +// +// This method is useful when you want to inject custom logic or configuration +// into the SDK's request lifecycle. Such as custom headers, or retry logic. +// +// // Example sending a request using the ListSignalCatalogsRequest method. +// req, resp := client.ListSignalCatalogsRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/iotfleetwise-2021-06-17/ListSignalCatalogs +func (c *IoTFleetWise) ListSignalCatalogsRequest(input *ListSignalCatalogsInput) (req *request.Request, output *ListSignalCatalogsOutput) { + op := &request.Operation{ + Name: opListSignalCatalogs, + HTTPMethod: "POST", + HTTPPath: "/", + Paginator: &request.Paginator{ + InputTokens: []string{"nextToken"}, + OutputTokens: []string{"nextToken"}, + LimitToken: "maxResults", + TruncationToken: "", + }, + } + + if input == nil { + input = &ListSignalCatalogsInput{} + } + + output = &ListSignalCatalogsOutput{} + req = c.newRequest(op, input, output) + return +} + +// ListSignalCatalogs API operation for AWS IoT FleetWise. +// +// Lists all the created signal catalogs in an Amazon Web Services account. +// +// You can use to list information about each signal (node) specified in a signal +// catalog. +// +// This API operation uses pagination. Specify the nextToken parameter in the +// request to return more results. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS IoT FleetWise's +// API operation ListSignalCatalogs for usage and error information. +// +// Returned Error Types: +// +// - InternalServerException +// The request couldn't be completed because the server temporarily failed. +// +// - ThrottlingException +// The request couldn't be completed due to throttling. +// +// - ValidationException +// The input fails to satisfy the constraints specified by an Amazon Web Services +// service. +// +// - AccessDeniedException +// You don't have sufficient permission to perform this action. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/iotfleetwise-2021-06-17/ListSignalCatalogs +func (c *IoTFleetWise) ListSignalCatalogs(input *ListSignalCatalogsInput) (*ListSignalCatalogsOutput, error) { + req, out := c.ListSignalCatalogsRequest(input) + return out, req.Send() +} + +// ListSignalCatalogsWithContext is the same as ListSignalCatalogs with the addition of +// the ability to pass a context and additional request options. +// +// See ListSignalCatalogs for details on how to use this API operation. +// +// The context must be non-nil and will be used for request cancellation. If +// the context is nil a panic will occur. In the future the SDK may create +// sub-contexts for http.Requests. See https://golang.org/pkg/context/ +// for more information on using Contexts. +func (c *IoTFleetWise) ListSignalCatalogsWithContext(ctx aws.Context, input *ListSignalCatalogsInput, opts ...request.Option) (*ListSignalCatalogsOutput, error) { + req, out := c.ListSignalCatalogsRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +// ListSignalCatalogsPages iterates over the pages of a ListSignalCatalogs operation, +// calling the "fn" function with the response data for each page. To stop +// iterating, return false from the fn function. +// +// See ListSignalCatalogs method for more information on how to use this operation. +// +// Note: This operation can generate multiple requests to a service. +// +// // Example iterating over at most 3 pages of a ListSignalCatalogs operation. +// pageNum := 0 +// err := client.ListSignalCatalogsPages(params, +// func(page *iotfleetwise.ListSignalCatalogsOutput, lastPage bool) bool { +// pageNum++ +// fmt.Println(page) +// return pageNum <= 3 +// }) +func (c *IoTFleetWise) ListSignalCatalogsPages(input *ListSignalCatalogsInput, fn func(*ListSignalCatalogsOutput, bool) bool) error { + return c.ListSignalCatalogsPagesWithContext(aws.BackgroundContext(), input, fn) +} + +// ListSignalCatalogsPagesWithContext same as ListSignalCatalogsPages except +// it takes a Context and allows setting request options on the pages. +// +// The context must be non-nil and will be used for request cancellation. If +// the context is nil a panic will occur. In the future the SDK may create +// sub-contexts for http.Requests. See https://golang.org/pkg/context/ +// for more information on using Contexts. +func (c *IoTFleetWise) ListSignalCatalogsPagesWithContext(ctx aws.Context, input *ListSignalCatalogsInput, fn func(*ListSignalCatalogsOutput, bool) bool, opts ...request.Option) error { + p := request.Pagination{ + NewRequest: func() (*request.Request, error) { + var inCpy *ListSignalCatalogsInput + if input != nil { + tmp := *input + inCpy = &tmp + } + req, _ := c.ListSignalCatalogsRequest(inCpy) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return req, nil + }, + } + + for p.Next() { + if !fn(p.Page().(*ListSignalCatalogsOutput), !p.HasNextPage()) { + break + } + } + + return p.Err() +} + +const opListTagsForResource = "ListTagsForResource" + +// ListTagsForResourceRequest generates a "aws/request.Request" representing the +// client's request for the ListTagsForResource operation. The "output" return +// value will be populated with the request's response once the request completes +// successfully. +// +// Use "Send" method on the returned Request to send the API call to the service. +// the "output" return value is not valid until after Send returns without error. +// +// See ListTagsForResource for more information on using the ListTagsForResource +// API call, and error handling. +// +// This method is useful when you want to inject custom logic or configuration +// into the SDK's request lifecycle. Such as custom headers, or retry logic. +// +// // Example sending a request using the ListTagsForResourceRequest method. +// req, resp := client.ListTagsForResourceRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/iotfleetwise-2021-06-17/ListTagsForResource +func (c *IoTFleetWise) ListTagsForResourceRequest(input *ListTagsForResourceInput) (req *request.Request, output *ListTagsForResourceOutput) { + op := &request.Operation{ + Name: opListTagsForResource, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &ListTagsForResourceInput{} + } + + output = &ListTagsForResourceOutput{} + req = c.newRequest(op, input, output) + return +} + +// ListTagsForResource API operation for AWS IoT FleetWise. +// +// Lists the tags (metadata) you have assigned to the resource. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS IoT FleetWise's +// API operation ListTagsForResource for usage and error information. +// +// Returned Error Types: +// +// - ResourceNotFoundException +// The resource wasn't found. +// +// - InternalServerException +// The request couldn't be completed because the server temporarily failed. +// +// - ThrottlingException +// The request couldn't be completed due to throttling. +// +// - ValidationException +// The input fails to satisfy the constraints specified by an Amazon Web Services +// service. +// +// - AccessDeniedException +// You don't have sufficient permission to perform this action. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/iotfleetwise-2021-06-17/ListTagsForResource +func (c *IoTFleetWise) ListTagsForResource(input *ListTagsForResourceInput) (*ListTagsForResourceOutput, error) { + req, out := c.ListTagsForResourceRequest(input) + return out, req.Send() +} + +// ListTagsForResourceWithContext is the same as ListTagsForResource with the addition of +// the ability to pass a context and additional request options. +// +// See ListTagsForResource for details on how to use this API operation. +// +// The context must be non-nil and will be used for request cancellation. If +// the context is nil a panic will occur. In the future the SDK may create +// sub-contexts for http.Requests. See https://golang.org/pkg/context/ +// for more information on using Contexts. +func (c *IoTFleetWise) ListTagsForResourceWithContext(ctx aws.Context, input *ListTagsForResourceInput, opts ...request.Option) (*ListTagsForResourceOutput, error) { + req, out := c.ListTagsForResourceRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opListVehicles = "ListVehicles" + +// ListVehiclesRequest generates a "aws/request.Request" representing the +// client's request for the ListVehicles operation. The "output" return +// value will be populated with the request's response once the request completes +// successfully. +// +// Use "Send" method on the returned Request to send the API call to the service. +// the "output" return value is not valid until after Send returns without error. +// +// See ListVehicles for more information on using the ListVehicles +// API call, and error handling. +// +// This method is useful when you want to inject custom logic or configuration +// into the SDK's request lifecycle. Such as custom headers, or retry logic. +// +// // Example sending a request using the ListVehiclesRequest method. +// req, resp := client.ListVehiclesRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/iotfleetwise-2021-06-17/ListVehicles +func (c *IoTFleetWise) ListVehiclesRequest(input *ListVehiclesInput) (req *request.Request, output *ListVehiclesOutput) { + op := &request.Operation{ + Name: opListVehicles, + HTTPMethod: "POST", + HTTPPath: "/", + Paginator: &request.Paginator{ + InputTokens: []string{"nextToken"}, + OutputTokens: []string{"nextToken"}, + LimitToken: "maxResults", + TruncationToken: "", + }, + } + + if input == nil { + input = &ListVehiclesInput{} + } + + output = &ListVehiclesOutput{} + req = c.newRequest(op, input, output) + return +} + +// ListVehicles API operation for AWS IoT FleetWise. +// +// Retrieves a list of summaries of created vehicles. +// +// This API operation uses pagination. Specify the nextToken parameter in the +// request to return more results. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS IoT FleetWise's +// API operation ListVehicles for usage and error information. +// +// Returned Error Types: +// +// - InternalServerException +// The request couldn't be completed because the server temporarily failed. +// +// - ThrottlingException +// The request couldn't be completed due to throttling. +// +// - ValidationException +// The input fails to satisfy the constraints specified by an Amazon Web Services +// service. +// +// - AccessDeniedException +// You don't have sufficient permission to perform this action. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/iotfleetwise-2021-06-17/ListVehicles +func (c *IoTFleetWise) ListVehicles(input *ListVehiclesInput) (*ListVehiclesOutput, error) { + req, out := c.ListVehiclesRequest(input) + return out, req.Send() +} + +// ListVehiclesWithContext is the same as ListVehicles with the addition of +// the ability to pass a context and additional request options. +// +// See ListVehicles for details on how to use this API operation. +// +// The context must be non-nil and will be used for request cancellation. If +// the context is nil a panic will occur. In the future the SDK may create +// sub-contexts for http.Requests. See https://golang.org/pkg/context/ +// for more information on using Contexts. +func (c *IoTFleetWise) ListVehiclesWithContext(ctx aws.Context, input *ListVehiclesInput, opts ...request.Option) (*ListVehiclesOutput, error) { + req, out := c.ListVehiclesRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +// ListVehiclesPages iterates over the pages of a ListVehicles operation, +// calling the "fn" function with the response data for each page. To stop +// iterating, return false from the fn function. +// +// See ListVehicles method for more information on how to use this operation. +// +// Note: This operation can generate multiple requests to a service. +// +// // Example iterating over at most 3 pages of a ListVehicles operation. +// pageNum := 0 +// err := client.ListVehiclesPages(params, +// func(page *iotfleetwise.ListVehiclesOutput, lastPage bool) bool { +// pageNum++ +// fmt.Println(page) +// return pageNum <= 3 +// }) +func (c *IoTFleetWise) ListVehiclesPages(input *ListVehiclesInput, fn func(*ListVehiclesOutput, bool) bool) error { + return c.ListVehiclesPagesWithContext(aws.BackgroundContext(), input, fn) +} + +// ListVehiclesPagesWithContext same as ListVehiclesPages except +// it takes a Context and allows setting request options on the pages. +// +// The context must be non-nil and will be used for request cancellation. If +// the context is nil a panic will occur. In the future the SDK may create +// sub-contexts for http.Requests. See https://golang.org/pkg/context/ +// for more information on using Contexts. +func (c *IoTFleetWise) ListVehiclesPagesWithContext(ctx aws.Context, input *ListVehiclesInput, fn func(*ListVehiclesOutput, bool) bool, opts ...request.Option) error { + p := request.Pagination{ + NewRequest: func() (*request.Request, error) { + var inCpy *ListVehiclesInput + if input != nil { + tmp := *input + inCpy = &tmp + } + req, _ := c.ListVehiclesRequest(inCpy) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return req, nil + }, + } + + for p.Next() { + if !fn(p.Page().(*ListVehiclesOutput), !p.HasNextPage()) { + break + } + } + + return p.Err() +} + +const opListVehiclesInFleet = "ListVehiclesInFleet" + +// ListVehiclesInFleetRequest generates a "aws/request.Request" representing the +// client's request for the ListVehiclesInFleet operation. The "output" return +// value will be populated with the request's response once the request completes +// successfully. +// +// Use "Send" method on the returned Request to send the API call to the service. +// the "output" return value is not valid until after Send returns without error. +// +// See ListVehiclesInFleet for more information on using the ListVehiclesInFleet +// API call, and error handling. +// +// This method is useful when you want to inject custom logic or configuration +// into the SDK's request lifecycle. Such as custom headers, or retry logic. +// +// // Example sending a request using the ListVehiclesInFleetRequest method. +// req, resp := client.ListVehiclesInFleetRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/iotfleetwise-2021-06-17/ListVehiclesInFleet +func (c *IoTFleetWise) ListVehiclesInFleetRequest(input *ListVehiclesInFleetInput) (req *request.Request, output *ListVehiclesInFleetOutput) { + op := &request.Operation{ + Name: opListVehiclesInFleet, + HTTPMethod: "POST", + HTTPPath: "/", + Paginator: &request.Paginator{ + InputTokens: []string{"nextToken"}, + OutputTokens: []string{"nextToken"}, + LimitToken: "maxResults", + TruncationToken: "", + }, + } + + if input == nil { + input = &ListVehiclesInFleetInput{} + } + + output = &ListVehiclesInFleetOutput{} + req = c.newRequest(op, input, output) + return +} + +// ListVehiclesInFleet API operation for AWS IoT FleetWise. +// +// Retrieves a list of summaries of all vehicles associated with a fleet. +// +// This API operation uses pagination. Specify the nextToken parameter in the +// request to return more results. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS IoT FleetWise's +// API operation ListVehiclesInFleet for usage and error information. +// +// Returned Error Types: +// +// - InternalServerException +// The request couldn't be completed because the server temporarily failed. +// +// - ResourceNotFoundException +// The resource wasn't found. +// +// - ThrottlingException +// The request couldn't be completed due to throttling. +// +// - ValidationException +// The input fails to satisfy the constraints specified by an Amazon Web Services +// service. +// +// - AccessDeniedException +// You don't have sufficient permission to perform this action. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/iotfleetwise-2021-06-17/ListVehiclesInFleet +func (c *IoTFleetWise) ListVehiclesInFleet(input *ListVehiclesInFleetInput) (*ListVehiclesInFleetOutput, error) { + req, out := c.ListVehiclesInFleetRequest(input) + return out, req.Send() +} + +// ListVehiclesInFleetWithContext is the same as ListVehiclesInFleet with the addition of +// the ability to pass a context and additional request options. +// +// See ListVehiclesInFleet for details on how to use this API operation. +// +// The context must be non-nil and will be used for request cancellation. If +// the context is nil a panic will occur. In the future the SDK may create +// sub-contexts for http.Requests. See https://golang.org/pkg/context/ +// for more information on using Contexts. +func (c *IoTFleetWise) ListVehiclesInFleetWithContext(ctx aws.Context, input *ListVehiclesInFleetInput, opts ...request.Option) (*ListVehiclesInFleetOutput, error) { + req, out := c.ListVehiclesInFleetRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +// ListVehiclesInFleetPages iterates over the pages of a ListVehiclesInFleet operation, +// calling the "fn" function with the response data for each page. To stop +// iterating, return false from the fn function. +// +// See ListVehiclesInFleet method for more information on how to use this operation. +// +// Note: This operation can generate multiple requests to a service. +// +// // Example iterating over at most 3 pages of a ListVehiclesInFleet operation. +// pageNum := 0 +// err := client.ListVehiclesInFleetPages(params, +// func(page *iotfleetwise.ListVehiclesInFleetOutput, lastPage bool) bool { +// pageNum++ +// fmt.Println(page) +// return pageNum <= 3 +// }) +func (c *IoTFleetWise) ListVehiclesInFleetPages(input *ListVehiclesInFleetInput, fn func(*ListVehiclesInFleetOutput, bool) bool) error { + return c.ListVehiclesInFleetPagesWithContext(aws.BackgroundContext(), input, fn) +} + +// ListVehiclesInFleetPagesWithContext same as ListVehiclesInFleetPages except +// it takes a Context and allows setting request options on the pages. +// +// The context must be non-nil and will be used for request cancellation. If +// the context is nil a panic will occur. In the future the SDK may create +// sub-contexts for http.Requests. See https://golang.org/pkg/context/ +// for more information on using Contexts. +func (c *IoTFleetWise) ListVehiclesInFleetPagesWithContext(ctx aws.Context, input *ListVehiclesInFleetInput, fn func(*ListVehiclesInFleetOutput, bool) bool, opts ...request.Option) error { + p := request.Pagination{ + NewRequest: func() (*request.Request, error) { + var inCpy *ListVehiclesInFleetInput + if input != nil { + tmp := *input + inCpy = &tmp + } + req, _ := c.ListVehiclesInFleetRequest(inCpy) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return req, nil + }, + } + + for p.Next() { + if !fn(p.Page().(*ListVehiclesInFleetOutput), !p.HasNextPage()) { + break + } + } + + return p.Err() +} + +const opPutLoggingOptions = "PutLoggingOptions" + +// PutLoggingOptionsRequest generates a "aws/request.Request" representing the +// client's request for the PutLoggingOptions operation. The "output" return +// value will be populated with the request's response once the request completes +// successfully. +// +// Use "Send" method on the returned Request to send the API call to the service. +// the "output" return value is not valid until after Send returns without error. +// +// See PutLoggingOptions for more information on using the PutLoggingOptions +// API call, and error handling. +// +// This method is useful when you want to inject custom logic or configuration +// into the SDK's request lifecycle. Such as custom headers, or retry logic. +// +// // Example sending a request using the PutLoggingOptionsRequest method. +// req, resp := client.PutLoggingOptionsRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/iotfleetwise-2021-06-17/PutLoggingOptions +func (c *IoTFleetWise) PutLoggingOptionsRequest(input *PutLoggingOptionsInput) (req *request.Request, output *PutLoggingOptionsOutput) { + op := &request.Operation{ + Name: opPutLoggingOptions, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &PutLoggingOptionsInput{} + } + + output = &PutLoggingOptionsOutput{} + req = c.newRequest(op, input, output) + req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) + return +} + +// PutLoggingOptions API operation for AWS IoT FleetWise. +// +// Creates or updates the logging option. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS IoT FleetWise's +// API operation PutLoggingOptions for usage and error information. +// +// Returned Error Types: +// +// - ResourceNotFoundException +// The resource wasn't found. +// +// - InternalServerException +// The request couldn't be completed because the server temporarily failed. +// +// - ConflictException +// The request has conflicting operations. This can occur if you're trying to +// perform more than one operation on the same resource at the same time. +// +// - ThrottlingException +// The request couldn't be completed due to throttling. +// +// - ValidationException +// The input fails to satisfy the constraints specified by an Amazon Web Services +// service. +// +// - AccessDeniedException +// You don't have sufficient permission to perform this action. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/iotfleetwise-2021-06-17/PutLoggingOptions +func (c *IoTFleetWise) PutLoggingOptions(input *PutLoggingOptionsInput) (*PutLoggingOptionsOutput, error) { + req, out := c.PutLoggingOptionsRequest(input) + return out, req.Send() +} + +// PutLoggingOptionsWithContext is the same as PutLoggingOptions with the addition of +// the ability to pass a context and additional request options. +// +// See PutLoggingOptions for details on how to use this API operation. +// +// The context must be non-nil and will be used for request cancellation. If +// the context is nil a panic will occur. In the future the SDK may create +// sub-contexts for http.Requests. See https://golang.org/pkg/context/ +// for more information on using Contexts. +func (c *IoTFleetWise) PutLoggingOptionsWithContext(ctx aws.Context, input *PutLoggingOptionsInput, opts ...request.Option) (*PutLoggingOptionsOutput, error) { + req, out := c.PutLoggingOptionsRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opRegisterAccount = "RegisterAccount" + +// RegisterAccountRequest generates a "aws/request.Request" representing the +// client's request for the RegisterAccount operation. The "output" return +// value will be populated with the request's response once the request completes +// successfully. +// +// Use "Send" method on the returned Request to send the API call to the service. +// the "output" return value is not valid until after Send returns without error. +// +// See RegisterAccount for more information on using the RegisterAccount +// API call, and error handling. +// +// This method is useful when you want to inject custom logic or configuration +// into the SDK's request lifecycle. Such as custom headers, or retry logic. +// +// // Example sending a request using the RegisterAccountRequest method. +// req, resp := client.RegisterAccountRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/iotfleetwise-2021-06-17/RegisterAccount +func (c *IoTFleetWise) RegisterAccountRequest(input *RegisterAccountInput) (req *request.Request, output *RegisterAccountOutput) { + op := &request.Operation{ + Name: opRegisterAccount, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &RegisterAccountInput{} + } + + output = &RegisterAccountOutput{} + req = c.newRequest(op, input, output) + return +} + +// RegisterAccount API operation for AWS IoT FleetWise. +// +// Registers your Amazon Web Services account, IAM, and Amazon Timestream resources +// so Amazon Web Services IoT FleetWise can transfer your vehicle data to the +// Amazon Web Services Cloud. For more information, including step-by-step procedures, +// see Setting up Amazon Web Services IoT FleetWise (https://docs.aws.amazon.com/iot-fleetwise/latest/developerguide/setting-up.html). +// +// An Amazon Web Services account is not the same thing as a "user account". +// An Amazon Web Services user (https://docs.aws.amazon.com/IAM/latest/UserGuide/introduction_identity-management.html#intro-identity-users) +// is an identity that you create using Identity and Access Management (IAM) +// and takes the form of either an IAM user (https://docs.aws.amazon.com/IAM/latest/UserGuide/id_users.html) +// or an IAM role, both with credentials (https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles.html). +// A single Amazon Web Services account can, and typically does, contain many +// users and roles. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS IoT FleetWise's +// API operation RegisterAccount for usage and error information. +// +// Returned Error Types: +// +// - ResourceNotFoundException +// The resource wasn't found. +// +// - InternalServerException +// The request couldn't be completed because the server temporarily failed. +// +// - ConflictException +// The request has conflicting operations. This can occur if you're trying to +// perform more than one operation on the same resource at the same time. +// +// - ThrottlingException +// The request couldn't be completed due to throttling. +// +// - ValidationException +// The input fails to satisfy the constraints specified by an Amazon Web Services +// service. +// +// - AccessDeniedException +// You don't have sufficient permission to perform this action. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/iotfleetwise-2021-06-17/RegisterAccount +func (c *IoTFleetWise) RegisterAccount(input *RegisterAccountInput) (*RegisterAccountOutput, error) { + req, out := c.RegisterAccountRequest(input) + return out, req.Send() +} + +// RegisterAccountWithContext is the same as RegisterAccount with the addition of +// the ability to pass a context and additional request options. +// +// See RegisterAccount for details on how to use this API operation. +// +// The context must be non-nil and will be used for request cancellation. If +// the context is nil a panic will occur. In the future the SDK may create +// sub-contexts for http.Requests. See https://golang.org/pkg/context/ +// for more information on using Contexts. +func (c *IoTFleetWise) RegisterAccountWithContext(ctx aws.Context, input *RegisterAccountInput, opts ...request.Option) (*RegisterAccountOutput, error) { + req, out := c.RegisterAccountRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opTagResource = "TagResource" + +// TagResourceRequest generates a "aws/request.Request" representing the +// client's request for the TagResource operation. The "output" return +// value will be populated with the request's response once the request completes +// successfully. +// +// Use "Send" method on the returned Request to send the API call to the service. +// the "output" return value is not valid until after Send returns without error. +// +// See TagResource for more information on using the TagResource +// API call, and error handling. +// +// This method is useful when you want to inject custom logic or configuration +// into the SDK's request lifecycle. Such as custom headers, or retry logic. +// +// // Example sending a request using the TagResourceRequest method. +// req, resp := client.TagResourceRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/iotfleetwise-2021-06-17/TagResource +func (c *IoTFleetWise) TagResourceRequest(input *TagResourceInput) (req *request.Request, output *TagResourceOutput) { + op := &request.Operation{ + Name: opTagResource, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &TagResourceInput{} + } + + output = &TagResourceOutput{} + req = c.newRequest(op, input, output) + req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) + return +} + +// TagResource API operation for AWS IoT FleetWise. +// +// Adds to or modifies the tags of the given resource. Tags are metadata which +// can be used to manage a resource. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS IoT FleetWise's +// API operation TagResource for usage and error information. +// +// Returned Error Types: +// +// - ResourceNotFoundException +// The resource wasn't found. +// +// - InternalServerException +// The request couldn't be completed because the server temporarily failed. +// +// - ThrottlingException +// The request couldn't be completed due to throttling. +// +// - ValidationException +// The input fails to satisfy the constraints specified by an Amazon Web Services +// service. +// +// - AccessDeniedException +// You don't have sufficient permission to perform this action. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/iotfleetwise-2021-06-17/TagResource +func (c *IoTFleetWise) TagResource(input *TagResourceInput) (*TagResourceOutput, error) { + req, out := c.TagResourceRequest(input) + return out, req.Send() +} + +// TagResourceWithContext is the same as TagResource with the addition of +// the ability to pass a context and additional request options. +// +// See TagResource for details on how to use this API operation. +// +// The context must be non-nil and will be used for request cancellation. If +// the context is nil a panic will occur. In the future the SDK may create +// sub-contexts for http.Requests. See https://golang.org/pkg/context/ +// for more information on using Contexts. +func (c *IoTFleetWise) TagResourceWithContext(ctx aws.Context, input *TagResourceInput, opts ...request.Option) (*TagResourceOutput, error) { + req, out := c.TagResourceRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opUntagResource = "UntagResource" + +// UntagResourceRequest generates a "aws/request.Request" representing the +// client's request for the UntagResource operation. The "output" return +// value will be populated with the request's response once the request completes +// successfully. +// +// Use "Send" method on the returned Request to send the API call to the service. +// the "output" return value is not valid until after Send returns without error. +// +// See UntagResource for more information on using the UntagResource +// API call, and error handling. +// +// This method is useful when you want to inject custom logic or configuration +// into the SDK's request lifecycle. Such as custom headers, or retry logic. +// +// // Example sending a request using the UntagResourceRequest method. +// req, resp := client.UntagResourceRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/iotfleetwise-2021-06-17/UntagResource +func (c *IoTFleetWise) UntagResourceRequest(input *UntagResourceInput) (req *request.Request, output *UntagResourceOutput) { + op := &request.Operation{ + Name: opUntagResource, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &UntagResourceInput{} + } + + output = &UntagResourceOutput{} + req = c.newRequest(op, input, output) + req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) + return +} + +// UntagResource API operation for AWS IoT FleetWise. +// +// Removes the given tags (metadata) from the resource. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS IoT FleetWise's +// API operation UntagResource for usage and error information. +// +// Returned Error Types: +// +// - ResourceNotFoundException +// The resource wasn't found. +// +// - InternalServerException +// The request couldn't be completed because the server temporarily failed. +// +// - ThrottlingException +// The request couldn't be completed due to throttling. +// +// - ValidationException +// The input fails to satisfy the constraints specified by an Amazon Web Services +// service. +// +// - AccessDeniedException +// You don't have sufficient permission to perform this action. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/iotfleetwise-2021-06-17/UntagResource +func (c *IoTFleetWise) UntagResource(input *UntagResourceInput) (*UntagResourceOutput, error) { + req, out := c.UntagResourceRequest(input) + return out, req.Send() +} + +// UntagResourceWithContext is the same as UntagResource with the addition of +// the ability to pass a context and additional request options. +// +// See UntagResource for details on how to use this API operation. +// +// The context must be non-nil and will be used for request cancellation. If +// the context is nil a panic will occur. In the future the SDK may create +// sub-contexts for http.Requests. See https://golang.org/pkg/context/ +// for more information on using Contexts. +func (c *IoTFleetWise) UntagResourceWithContext(ctx aws.Context, input *UntagResourceInput, opts ...request.Option) (*UntagResourceOutput, error) { + req, out := c.UntagResourceRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opUpdateCampaign = "UpdateCampaign" + +// UpdateCampaignRequest generates a "aws/request.Request" representing the +// client's request for the UpdateCampaign operation. The "output" return +// value will be populated with the request's response once the request completes +// successfully. +// +// Use "Send" method on the returned Request to send the API call to the service. +// the "output" return value is not valid until after Send returns without error. +// +// See UpdateCampaign for more information on using the UpdateCampaign +// API call, and error handling. +// +// This method is useful when you want to inject custom logic or configuration +// into the SDK's request lifecycle. Such as custom headers, or retry logic. +// +// // Example sending a request using the UpdateCampaignRequest method. +// req, resp := client.UpdateCampaignRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/iotfleetwise-2021-06-17/UpdateCampaign +func (c *IoTFleetWise) UpdateCampaignRequest(input *UpdateCampaignInput) (req *request.Request, output *UpdateCampaignOutput) { + op := &request.Operation{ + Name: opUpdateCampaign, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &UpdateCampaignInput{} + } + + output = &UpdateCampaignOutput{} + req = c.newRequest(op, input, output) + return +} + +// UpdateCampaign API operation for AWS IoT FleetWise. +// +// Updates a campaign. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS IoT FleetWise's +// API operation UpdateCampaign for usage and error information. +// +// Returned Error Types: +// +// - ResourceNotFoundException +// The resource wasn't found. +// +// - InternalServerException +// The request couldn't be completed because the server temporarily failed. +// +// - ConflictException +// The request has conflicting operations. This can occur if you're trying to +// perform more than one operation on the same resource at the same time. +// +// - ThrottlingException +// The request couldn't be completed due to throttling. +// +// - ValidationException +// The input fails to satisfy the constraints specified by an Amazon Web Services +// service. +// +// - AccessDeniedException +// You don't have sufficient permission to perform this action. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/iotfleetwise-2021-06-17/UpdateCampaign +func (c *IoTFleetWise) UpdateCampaign(input *UpdateCampaignInput) (*UpdateCampaignOutput, error) { + req, out := c.UpdateCampaignRequest(input) + return out, req.Send() +} + +// UpdateCampaignWithContext is the same as UpdateCampaign with the addition of +// the ability to pass a context and additional request options. +// +// See UpdateCampaign for details on how to use this API operation. +// +// The context must be non-nil and will be used for request cancellation. If +// the context is nil a panic will occur. In the future the SDK may create +// sub-contexts for http.Requests. See https://golang.org/pkg/context/ +// for more information on using Contexts. +func (c *IoTFleetWise) UpdateCampaignWithContext(ctx aws.Context, input *UpdateCampaignInput, opts ...request.Option) (*UpdateCampaignOutput, error) { + req, out := c.UpdateCampaignRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opUpdateDecoderManifest = "UpdateDecoderManifest" + +// UpdateDecoderManifestRequest generates a "aws/request.Request" representing the +// client's request for the UpdateDecoderManifest operation. The "output" return +// value will be populated with the request's response once the request completes +// successfully. +// +// Use "Send" method on the returned Request to send the API call to the service. +// the "output" return value is not valid until after Send returns without error. +// +// See UpdateDecoderManifest for more information on using the UpdateDecoderManifest +// API call, and error handling. +// +// This method is useful when you want to inject custom logic or configuration +// into the SDK's request lifecycle. Such as custom headers, or retry logic. +// +// // Example sending a request using the UpdateDecoderManifestRequest method. +// req, resp := client.UpdateDecoderManifestRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/iotfleetwise-2021-06-17/UpdateDecoderManifest +func (c *IoTFleetWise) UpdateDecoderManifestRequest(input *UpdateDecoderManifestInput) (req *request.Request, output *UpdateDecoderManifestOutput) { + op := &request.Operation{ + Name: opUpdateDecoderManifest, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &UpdateDecoderManifestInput{} + } + + output = &UpdateDecoderManifestOutput{} + req = c.newRequest(op, input, output) + return +} + +// UpdateDecoderManifest API operation for AWS IoT FleetWise. +// +// Updates a decoder manifest. +// +// A decoder manifest can only be updated when the status is DRAFT. Only ACTIVE +// decoder manifests can be associated with vehicles. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS IoT FleetWise's +// API operation UpdateDecoderManifest for usage and error information. +// +// Returned Error Types: +// +// - ResourceNotFoundException +// The resource wasn't found. +// +// - InternalServerException +// The request couldn't be completed because the server temporarily failed. +// +// - ConflictException +// The request has conflicting operations. This can occur if you're trying to +// perform more than one operation on the same resource at the same time. +// +// - LimitExceededException +// A service quota was exceeded. +// +// - DecoderManifestValidationException +// The request couldn't be completed because it contains signal decoders with +// one or more validation errors. +// +// - ThrottlingException +// The request couldn't be completed due to throttling. +// +// - ValidationException +// The input fails to satisfy the constraints specified by an Amazon Web Services +// service. +// +// - AccessDeniedException +// You don't have sufficient permission to perform this action. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/iotfleetwise-2021-06-17/UpdateDecoderManifest +func (c *IoTFleetWise) UpdateDecoderManifest(input *UpdateDecoderManifestInput) (*UpdateDecoderManifestOutput, error) { + req, out := c.UpdateDecoderManifestRequest(input) + return out, req.Send() +} + +// UpdateDecoderManifestWithContext is the same as UpdateDecoderManifest with the addition of +// the ability to pass a context and additional request options. +// +// See UpdateDecoderManifest for details on how to use this API operation. +// +// The context must be non-nil and will be used for request cancellation. If +// the context is nil a panic will occur. In the future the SDK may create +// sub-contexts for http.Requests. See https://golang.org/pkg/context/ +// for more information on using Contexts. +func (c *IoTFleetWise) UpdateDecoderManifestWithContext(ctx aws.Context, input *UpdateDecoderManifestInput, opts ...request.Option) (*UpdateDecoderManifestOutput, error) { + req, out := c.UpdateDecoderManifestRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opUpdateFleet = "UpdateFleet" + +// UpdateFleetRequest generates a "aws/request.Request" representing the +// client's request for the UpdateFleet operation. The "output" return +// value will be populated with the request's response once the request completes +// successfully. +// +// Use "Send" method on the returned Request to send the API call to the service. +// the "output" return value is not valid until after Send returns without error. +// +// See UpdateFleet for more information on using the UpdateFleet +// API call, and error handling. +// +// This method is useful when you want to inject custom logic or configuration +// into the SDK's request lifecycle. Such as custom headers, or retry logic. +// +// // Example sending a request using the UpdateFleetRequest method. +// req, resp := client.UpdateFleetRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/iotfleetwise-2021-06-17/UpdateFleet +func (c *IoTFleetWise) UpdateFleetRequest(input *UpdateFleetInput) (req *request.Request, output *UpdateFleetOutput) { + op := &request.Operation{ + Name: opUpdateFleet, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &UpdateFleetInput{} + } + + output = &UpdateFleetOutput{} + req = c.newRequest(op, input, output) + return +} + +// UpdateFleet API operation for AWS IoT FleetWise. +// +// Updates the description of an existing fleet. +// +// If the fleet is successfully updated, Amazon Web Services IoT FleetWise sends +// back an HTTP 200 response with an empty HTTP body. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS IoT FleetWise's +// API operation UpdateFleet for usage and error information. +// +// Returned Error Types: +// +// - InternalServerException +// The request couldn't be completed because the server temporarily failed. +// +// - ResourceNotFoundException +// The resource wasn't found. +// +// - ConflictException +// The request has conflicting operations. This can occur if you're trying to +// perform more than one operation on the same resource at the same time. +// +// - ThrottlingException +// The request couldn't be completed due to throttling. +// +// - ValidationException +// The input fails to satisfy the constraints specified by an Amazon Web Services +// service. +// +// - AccessDeniedException +// You don't have sufficient permission to perform this action. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/iotfleetwise-2021-06-17/UpdateFleet +func (c *IoTFleetWise) UpdateFleet(input *UpdateFleetInput) (*UpdateFleetOutput, error) { + req, out := c.UpdateFleetRequest(input) + return out, req.Send() +} + +// UpdateFleetWithContext is the same as UpdateFleet with the addition of +// the ability to pass a context and additional request options. +// +// See UpdateFleet for details on how to use this API operation. +// +// The context must be non-nil and will be used for request cancellation. If +// the context is nil a panic will occur. In the future the SDK may create +// sub-contexts for http.Requests. See https://golang.org/pkg/context/ +// for more information on using Contexts. +func (c *IoTFleetWise) UpdateFleetWithContext(ctx aws.Context, input *UpdateFleetInput, opts ...request.Option) (*UpdateFleetOutput, error) { + req, out := c.UpdateFleetRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opUpdateModelManifest = "UpdateModelManifest" + +// UpdateModelManifestRequest generates a "aws/request.Request" representing the +// client's request for the UpdateModelManifest operation. The "output" return +// value will be populated with the request's response once the request completes +// successfully. +// +// Use "Send" method on the returned Request to send the API call to the service. +// the "output" return value is not valid until after Send returns without error. +// +// See UpdateModelManifest for more information on using the UpdateModelManifest +// API call, and error handling. +// +// This method is useful when you want to inject custom logic or configuration +// into the SDK's request lifecycle. Such as custom headers, or retry logic. +// +// // Example sending a request using the UpdateModelManifestRequest method. +// req, resp := client.UpdateModelManifestRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/iotfleetwise-2021-06-17/UpdateModelManifest +func (c *IoTFleetWise) UpdateModelManifestRequest(input *UpdateModelManifestInput) (req *request.Request, output *UpdateModelManifestOutput) { + op := &request.Operation{ + Name: opUpdateModelManifest, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &UpdateModelManifestInput{} + } + + output = &UpdateModelManifestOutput{} + req = c.newRequest(op, input, output) + return +} + +// UpdateModelManifest API operation for AWS IoT FleetWise. +// +// Updates a vehicle model (model manifest). If created vehicles are associated +// with a vehicle model, it can't be updated. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS IoT FleetWise's +// API operation UpdateModelManifest for usage and error information. +// +// Returned Error Types: +// +// - InternalServerException +// The request couldn't be completed because the server temporarily failed. +// +// - ResourceNotFoundException +// The resource wasn't found. +// +// - ConflictException +// The request has conflicting operations. This can occur if you're trying to +// perform more than one operation on the same resource at the same time. +// +// - ThrottlingException +// The request couldn't be completed due to throttling. +// +// - ValidationException +// The input fails to satisfy the constraints specified by an Amazon Web Services +// service. +// +// - InvalidSignalsException +// The request couldn't be completed because it contains signals that aren't +// valid. +// +// - AccessDeniedException +// You don't have sufficient permission to perform this action. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/iotfleetwise-2021-06-17/UpdateModelManifest +func (c *IoTFleetWise) UpdateModelManifest(input *UpdateModelManifestInput) (*UpdateModelManifestOutput, error) { + req, out := c.UpdateModelManifestRequest(input) + return out, req.Send() +} + +// UpdateModelManifestWithContext is the same as UpdateModelManifest with the addition of +// the ability to pass a context and additional request options. +// +// See UpdateModelManifest for details on how to use this API operation. +// +// The context must be non-nil and will be used for request cancellation. If +// the context is nil a panic will occur. In the future the SDK may create +// sub-contexts for http.Requests. See https://golang.org/pkg/context/ +// for more information on using Contexts. +func (c *IoTFleetWise) UpdateModelManifestWithContext(ctx aws.Context, input *UpdateModelManifestInput, opts ...request.Option) (*UpdateModelManifestOutput, error) { + req, out := c.UpdateModelManifestRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opUpdateSignalCatalog = "UpdateSignalCatalog" + +// UpdateSignalCatalogRequest generates a "aws/request.Request" representing the +// client's request for the UpdateSignalCatalog operation. The "output" return +// value will be populated with the request's response once the request completes +// successfully. +// +// Use "Send" method on the returned Request to send the API call to the service. +// the "output" return value is not valid until after Send returns without error. +// +// See UpdateSignalCatalog for more information on using the UpdateSignalCatalog +// API call, and error handling. +// +// This method is useful when you want to inject custom logic or configuration +// into the SDK's request lifecycle. Such as custom headers, or retry logic. +// +// // Example sending a request using the UpdateSignalCatalogRequest method. +// req, resp := client.UpdateSignalCatalogRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/iotfleetwise-2021-06-17/UpdateSignalCatalog +func (c *IoTFleetWise) UpdateSignalCatalogRequest(input *UpdateSignalCatalogInput) (req *request.Request, output *UpdateSignalCatalogOutput) { + op := &request.Operation{ + Name: opUpdateSignalCatalog, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &UpdateSignalCatalogInput{} + } + + output = &UpdateSignalCatalogOutput{} + req = c.newRequest(op, input, output) + return +} + +// UpdateSignalCatalog API operation for AWS IoT FleetWise. +// +// Updates a signal catalog. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS IoT FleetWise's +// API operation UpdateSignalCatalog for usage and error information. +// +// Returned Error Types: +// +// - ResourceNotFoundException +// The resource wasn't found. +// +// - InternalServerException +// The request couldn't be completed because the server temporarily failed. +// +// - ConflictException +// The request has conflicting operations. This can occur if you're trying to +// perform more than one operation on the same resource at the same time. +// +// - LimitExceededException +// A service quota was exceeded. +// +// - InvalidNodeException +// The specified node type doesn't match the expected node type for a node. +// You can specify the node type as branch, sensor, actuator, or attribute. +// +// - ThrottlingException +// The request couldn't be completed due to throttling. +// +// - InvalidSignalsException +// The request couldn't be completed because it contains signals that aren't +// valid. +// +// - AccessDeniedException +// You don't have sufficient permission to perform this action. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/iotfleetwise-2021-06-17/UpdateSignalCatalog +func (c *IoTFleetWise) UpdateSignalCatalog(input *UpdateSignalCatalogInput) (*UpdateSignalCatalogOutput, error) { + req, out := c.UpdateSignalCatalogRequest(input) + return out, req.Send() +} + +// UpdateSignalCatalogWithContext is the same as UpdateSignalCatalog with the addition of +// the ability to pass a context and additional request options. +// +// See UpdateSignalCatalog for details on how to use this API operation. +// +// The context must be non-nil and will be used for request cancellation. If +// the context is nil a panic will occur. In the future the SDK may create +// sub-contexts for http.Requests. See https://golang.org/pkg/context/ +// for more information on using Contexts. +func (c *IoTFleetWise) UpdateSignalCatalogWithContext(ctx aws.Context, input *UpdateSignalCatalogInput, opts ...request.Option) (*UpdateSignalCatalogOutput, error) { + req, out := c.UpdateSignalCatalogRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opUpdateVehicle = "UpdateVehicle" + +// UpdateVehicleRequest generates a "aws/request.Request" representing the +// client's request for the UpdateVehicle operation. The "output" return +// value will be populated with the request's response once the request completes +// successfully. +// +// Use "Send" method on the returned Request to send the API call to the service. +// the "output" return value is not valid until after Send returns without error. +// +// See UpdateVehicle for more information on using the UpdateVehicle +// API call, and error handling. +// +// This method is useful when you want to inject custom logic or configuration +// into the SDK's request lifecycle. Such as custom headers, or retry logic. +// +// // Example sending a request using the UpdateVehicleRequest method. +// req, resp := client.UpdateVehicleRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/iotfleetwise-2021-06-17/UpdateVehicle +func (c *IoTFleetWise) UpdateVehicleRequest(input *UpdateVehicleInput) (req *request.Request, output *UpdateVehicleOutput) { + op := &request.Operation{ + Name: opUpdateVehicle, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &UpdateVehicleInput{} + } + + output = &UpdateVehicleOutput{} + req = c.newRequest(op, input, output) + return +} + +// UpdateVehicle API operation for AWS IoT FleetWise. +// +// Updates a vehicle. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS IoT FleetWise's +// API operation UpdateVehicle for usage and error information. +// +// Returned Error Types: +// +// - InternalServerException +// The request couldn't be completed because the server temporarily failed. +// +// - ResourceNotFoundException +// The resource wasn't found. +// +// - ConflictException +// The request has conflicting operations. This can occur if you're trying to +// perform more than one operation on the same resource at the same time. +// +// - ThrottlingException +// The request couldn't be completed due to throttling. +// +// - ValidationException +// The input fails to satisfy the constraints specified by an Amazon Web Services +// service. +// +// - AccessDeniedException +// You don't have sufficient permission to perform this action. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/iotfleetwise-2021-06-17/UpdateVehicle +func (c *IoTFleetWise) UpdateVehicle(input *UpdateVehicleInput) (*UpdateVehicleOutput, error) { + req, out := c.UpdateVehicleRequest(input) + return out, req.Send() +} + +// UpdateVehicleWithContext is the same as UpdateVehicle with the addition of +// the ability to pass a context and additional request options. +// +// See UpdateVehicle for details on how to use this API operation. +// +// The context must be non-nil and will be used for request cancellation. If +// the context is nil a panic will occur. In the future the SDK may create +// sub-contexts for http.Requests. See https://golang.org/pkg/context/ +// for more information on using Contexts. +func (c *IoTFleetWise) UpdateVehicleWithContext(ctx aws.Context, input *UpdateVehicleInput, opts ...request.Option) (*UpdateVehicleOutput, error) { + req, out := c.UpdateVehicleRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +// You don't have sufficient permission to perform this action. +type AccessDeniedException struct { + _ struct{} `type:"structure"` + RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` + + Message_ *string `locationName:"message" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AccessDeniedException) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AccessDeniedException) GoString() string { + return s.String() +} + +func newErrorAccessDeniedException(v protocol.ResponseMetadata) error { + return &AccessDeniedException{ + RespMetadata: v, + } +} + +// Code returns the exception type name. +func (s *AccessDeniedException) Code() string { + return "AccessDeniedException" +} + +// Message returns the exception's message. +func (s *AccessDeniedException) Message() string { + if s.Message_ != nil { + return *s.Message_ + } + return "" +} + +// OrigErr always returns nil, satisfies awserr.Error interface. +func (s *AccessDeniedException) OrigErr() error { + return nil +} + +func (s *AccessDeniedException) Error() string { + return fmt.Sprintf("%s: %s", s.Code(), s.Message()) +} + +// Status code returns the HTTP status code for the request's response error. +func (s *AccessDeniedException) StatusCode() int { + return s.RespMetadata.StatusCode +} + +// RequestID returns the service's response RequestID for request. +func (s *AccessDeniedException) RequestID() string { + return s.RespMetadata.RequestID +} + +// A signal that represents a vehicle device such as the engine, heater, and +// door locks. Data from an actuator reports the state of a certain vehicle +// device. +// +// Updating actuator data can change the state of a device. For example, you +// can turn on or off the heater by updating its actuator data. +type Actuator struct { + _ struct{} `type:"structure"` + + // A list of possible values an actuator can take. + AllowedValues []*string `locationName:"allowedValues" type:"list"` + + // A specified value for the actuator. + AssignedValue *string `locationName:"assignedValue" type:"string"` + + // The specified data type of the actuator. + // + // DataType is a required field + DataType *string `locationName:"dataType" type:"string" required:"true" enum:"NodeDataType"` + + // A brief description of the actuator. + Description *string `locationName:"description" min:"1" type:"string"` + + // The fully qualified name of the actuator. For example, the fully qualified + // name of an actuator might be Vehicle.Front.Left.Door.Lock. + // + // FullyQualifiedName is a required field + FullyQualifiedName *string `locationName:"fullyQualifiedName" type:"string" required:"true"` + + // The specified possible maximum value of an actuator. + Max *float64 `locationName:"max" type:"double"` + + // The specified possible minimum value of an actuator. + Min *float64 `locationName:"min" type:"double"` + + // The scientific unit for the actuator. + Unit *string `locationName:"unit" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s Actuator) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s Actuator) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *Actuator) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "Actuator"} + if s.DataType == nil { + invalidParams.Add(request.NewErrParamRequired("DataType")) + } + if s.Description != nil && len(*s.Description) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Description", 1)) + } + if s.FullyQualifiedName == nil { + invalidParams.Add(request.NewErrParamRequired("FullyQualifiedName")) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetAllowedValues sets the AllowedValues field's value. +func (s *Actuator) SetAllowedValues(v []*string) *Actuator { + s.AllowedValues = v + return s +} + +// SetAssignedValue sets the AssignedValue field's value. +func (s *Actuator) SetAssignedValue(v string) *Actuator { + s.AssignedValue = &v + return s +} + +// SetDataType sets the DataType field's value. +func (s *Actuator) SetDataType(v string) *Actuator { + s.DataType = &v + return s +} + +// SetDescription sets the Description field's value. +func (s *Actuator) SetDescription(v string) *Actuator { + s.Description = &v + return s +} + +// SetFullyQualifiedName sets the FullyQualifiedName field's value. +func (s *Actuator) SetFullyQualifiedName(v string) *Actuator { + s.FullyQualifiedName = &v + return s +} + +// SetMax sets the Max field's value. +func (s *Actuator) SetMax(v float64) *Actuator { + s.Max = &v + return s +} + +// SetMin sets the Min field's value. +func (s *Actuator) SetMin(v float64) *Actuator { + s.Min = &v + return s +} + +// SetUnit sets the Unit field's value. +func (s *Actuator) SetUnit(v string) *Actuator { + s.Unit = &v + return s +} + +type AssociateVehicleFleetInput struct { + _ struct{} `type:"structure"` + + // The ID of a fleet. + // + // FleetId is a required field + FleetId *string `locationName:"fleetId" min:"1" type:"string" required:"true"` + + // The unique ID of the vehicle to associate with the fleet. + // + // VehicleName is a required field + VehicleName *string `locationName:"vehicleName" min:"1" type:"string" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AssociateVehicleFleetInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AssociateVehicleFleetInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *AssociateVehicleFleetInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "AssociateVehicleFleetInput"} + if s.FleetId == nil { + invalidParams.Add(request.NewErrParamRequired("FleetId")) + } + if s.FleetId != nil && len(*s.FleetId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("FleetId", 1)) + } + if s.VehicleName == nil { + invalidParams.Add(request.NewErrParamRequired("VehicleName")) + } + if s.VehicleName != nil && len(*s.VehicleName) < 1 { + invalidParams.Add(request.NewErrParamMinLen("VehicleName", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetFleetId sets the FleetId field's value. +func (s *AssociateVehicleFleetInput) SetFleetId(v string) *AssociateVehicleFleetInput { + s.FleetId = &v + return s +} + +// SetVehicleName sets the VehicleName field's value. +func (s *AssociateVehicleFleetInput) SetVehicleName(v string) *AssociateVehicleFleetInput { + s.VehicleName = &v + return s +} + +type AssociateVehicleFleetOutput struct { + _ struct{} `type:"structure"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AssociateVehicleFleetOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AssociateVehicleFleetOutput) GoString() string { + return s.String() +} + +// A signal that represents static information about the vehicle, such as engine +// type or manufacturing date. +type Attribute struct { + _ struct{} `type:"structure"` + + // A list of possible values an attribute can be assigned. + AllowedValues []*string `locationName:"allowedValues" type:"list"` + + // A specified value for the attribute. + AssignedValue *string `locationName:"assignedValue" type:"string"` + + // The specified data type of the attribute. + // + // DataType is a required field + DataType *string `locationName:"dataType" type:"string" required:"true" enum:"NodeDataType"` + + // The default value of the attribute. + DefaultValue *string `locationName:"defaultValue" type:"string"` + + // A brief description of the attribute. + Description *string `locationName:"description" min:"1" type:"string"` + + // The fully qualified name of the attribute. For example, the fully qualified + // name of an attribute might be Vehicle.Body.Engine.Type. + // + // FullyQualifiedName is a required field + FullyQualifiedName *string `locationName:"fullyQualifiedName" type:"string" required:"true"` + + // The specified possible maximum value of the attribute. + Max *float64 `locationName:"max" type:"double"` + + // The specified possible minimum value of the attribute. + Min *float64 `locationName:"min" type:"double"` + + // The scientific unit for the attribute. + Unit *string `locationName:"unit" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s Attribute) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s Attribute) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *Attribute) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "Attribute"} + if s.DataType == nil { + invalidParams.Add(request.NewErrParamRequired("DataType")) + } + if s.Description != nil && len(*s.Description) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Description", 1)) + } + if s.FullyQualifiedName == nil { + invalidParams.Add(request.NewErrParamRequired("FullyQualifiedName")) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetAllowedValues sets the AllowedValues field's value. +func (s *Attribute) SetAllowedValues(v []*string) *Attribute { + s.AllowedValues = v + return s +} + +// SetAssignedValue sets the AssignedValue field's value. +func (s *Attribute) SetAssignedValue(v string) *Attribute { + s.AssignedValue = &v + return s +} + +// SetDataType sets the DataType field's value. +func (s *Attribute) SetDataType(v string) *Attribute { + s.DataType = &v + return s +} + +// SetDefaultValue sets the DefaultValue field's value. +func (s *Attribute) SetDefaultValue(v string) *Attribute { + s.DefaultValue = &v + return s +} + +// SetDescription sets the Description field's value. +func (s *Attribute) SetDescription(v string) *Attribute { + s.Description = &v + return s +} + +// SetFullyQualifiedName sets the FullyQualifiedName field's value. +func (s *Attribute) SetFullyQualifiedName(v string) *Attribute { + s.FullyQualifiedName = &v + return s +} + +// SetMax sets the Max field's value. +func (s *Attribute) SetMax(v float64) *Attribute { + s.Max = &v + return s +} + +// SetMin sets the Min field's value. +func (s *Attribute) SetMin(v float64) *Attribute { + s.Min = &v + return s +} + +// SetUnit sets the Unit field's value. +func (s *Attribute) SetUnit(v string) *Attribute { + s.Unit = &v + return s +} + +type BatchCreateVehicleInput struct { + _ struct{} `type:"structure"` + + // A list of information about each vehicle to create. For more information, + // see the API data type. + // + // Vehicles is a required field + Vehicles []*CreateVehicleRequestItem `locationName:"vehicles" type:"list" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s BatchCreateVehicleInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s BatchCreateVehicleInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *BatchCreateVehicleInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "BatchCreateVehicleInput"} + if s.Vehicles == nil { + invalidParams.Add(request.NewErrParamRequired("Vehicles")) + } + if s.Vehicles != nil { + for i, v := range s.Vehicles { + if v == nil { + continue + } + if err := v.Validate(); err != nil { + invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Vehicles", i), err.(request.ErrInvalidParams)) + } + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetVehicles sets the Vehicles field's value. +func (s *BatchCreateVehicleInput) SetVehicles(v []*CreateVehicleRequestItem) *BatchCreateVehicleInput { + s.Vehicles = v + return s +} + +type BatchCreateVehicleOutput struct { + _ struct{} `type:"structure"` + + // A list of information about creation errors, or an empty list if there aren't + // any errors. + Errors []*CreateVehicleError `locationName:"errors" type:"list"` + + // A list of information about a batch of created vehicles. For more information, + // see the API data type. + Vehicles []*CreateVehicleResponseItem `locationName:"vehicles" type:"list"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s BatchCreateVehicleOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s BatchCreateVehicleOutput) GoString() string { + return s.String() +} + +// SetErrors sets the Errors field's value. +func (s *BatchCreateVehicleOutput) SetErrors(v []*CreateVehicleError) *BatchCreateVehicleOutput { + s.Errors = v + return s +} + +// SetVehicles sets the Vehicles field's value. +func (s *BatchCreateVehicleOutput) SetVehicles(v []*CreateVehicleResponseItem) *BatchCreateVehicleOutput { + s.Vehicles = v + return s +} + +type BatchUpdateVehicleInput struct { + _ struct{} `type:"structure"` + + // A list of information about the vehicles to update. For more information, + // see the API data type. + // + // Vehicles is a required field + Vehicles []*UpdateVehicleRequestItem `locationName:"vehicles" type:"list" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s BatchUpdateVehicleInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s BatchUpdateVehicleInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *BatchUpdateVehicleInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "BatchUpdateVehicleInput"} + if s.Vehicles == nil { + invalidParams.Add(request.NewErrParamRequired("Vehicles")) + } + if s.Vehicles != nil { + for i, v := range s.Vehicles { + if v == nil { + continue + } + if err := v.Validate(); err != nil { + invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Vehicles", i), err.(request.ErrInvalidParams)) + } + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetVehicles sets the Vehicles field's value. +func (s *BatchUpdateVehicleInput) SetVehicles(v []*UpdateVehicleRequestItem) *BatchUpdateVehicleInput { + s.Vehicles = v + return s +} + +type BatchUpdateVehicleOutput struct { + _ struct{} `type:"structure"` + + // A list of information about errors returned while updating a batch of vehicles, + // or, if there aren't any errors, an empty list. + Errors []*UpdateVehicleError `locationName:"errors" type:"list"` + + // A list of information about the batch of updated vehicles. + // + // This list contains only unique IDs for the vehicles that were updated. + Vehicles []*UpdateVehicleResponseItem `locationName:"vehicles" type:"list"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s BatchUpdateVehicleOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s BatchUpdateVehicleOutput) GoString() string { + return s.String() +} + +// SetErrors sets the Errors field's value. +func (s *BatchUpdateVehicleOutput) SetErrors(v []*UpdateVehicleError) *BatchUpdateVehicleOutput { + s.Errors = v + return s +} + +// SetVehicles sets the Vehicles field's value. +func (s *BatchUpdateVehicleOutput) SetVehicles(v []*UpdateVehicleResponseItem) *BatchUpdateVehicleOutput { + s.Vehicles = v + return s +} + +// A group of signals that are defined in a hierarchical structure. +type Branch struct { + _ struct{} `type:"structure"` + + // A brief description of the branch. + Description *string `locationName:"description" min:"1" type:"string"` + + // The fully qualified name of the branch. For example, the fully qualified + // name of a branch might be Vehicle.Body.Engine. + // + // FullyQualifiedName is a required field + FullyQualifiedName *string `locationName:"fullyQualifiedName" type:"string" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s Branch) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s Branch) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *Branch) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "Branch"} + if s.Description != nil && len(*s.Description) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Description", 1)) + } + if s.FullyQualifiedName == nil { + invalidParams.Add(request.NewErrParamRequired("FullyQualifiedName")) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetDescription sets the Description field's value. +func (s *Branch) SetDescription(v string) *Branch { + s.Description = &v + return s +} + +// SetFullyQualifiedName sets the FullyQualifiedName field's value. +func (s *Branch) SetFullyQualifiedName(v string) *Branch { + s.FullyQualifiedName = &v + return s +} + +// Information about a campaign. +// +// You can use the API operation to return this information about multiple created +// campaigns. +type CampaignSummary struct { + _ struct{} `type:"structure"` + + // The Amazon Resource Name (ARN) of a campaign. + Arn *string `locationName:"arn" type:"string"` + + // The time the campaign was created. + // + // CreationTime is a required field + CreationTime *time.Time `locationName:"creationTime" type:"timestamp" required:"true"` + + // The description of the campaign. + Description *string `locationName:"description" min:"1" type:"string"` + + // The last time the campaign was modified. + // + // LastModificationTime is a required field + LastModificationTime *time.Time `locationName:"lastModificationTime" type:"timestamp" required:"true"` + + // The name of a campaign. + Name *string `locationName:"name" min:"1" type:"string"` + + // The ARN of the signal catalog associated with the campaign. + SignalCatalogArn *string `locationName:"signalCatalogArn" type:"string"` + + // The state of a campaign. The status can be one of the following: + // + // * CREATING - Amazon Web Services IoT FleetWise is processing your request + // to create the campaign. + // + // * WAITING_FOR_APPROVAL - After a campaign is created, it enters the WAITING_FOR_APPROVAL + // state. To allow Amazon Web Services IoT FleetWise to deploy the campaign + // to the target vehicle or fleet, use the API operation to approve the campaign. + // + // * RUNNING - The campaign is active. + // + // * SUSPENDED - The campaign is suspended. To resume the campaign, use the + // API operation. + Status *string `locationName:"status" type:"string" enum:"CampaignStatus"` + + // The ARN of a vehicle or fleet to which the campaign is deployed. + TargetArn *string `locationName:"targetArn" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CampaignSummary) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CampaignSummary) GoString() string { + return s.String() +} + +// SetArn sets the Arn field's value. +func (s *CampaignSummary) SetArn(v string) *CampaignSummary { + s.Arn = &v + return s +} + +// SetCreationTime sets the CreationTime field's value. +func (s *CampaignSummary) SetCreationTime(v time.Time) *CampaignSummary { + s.CreationTime = &v + return s +} + +// SetDescription sets the Description field's value. +func (s *CampaignSummary) SetDescription(v string) *CampaignSummary { + s.Description = &v + return s +} + +// SetLastModificationTime sets the LastModificationTime field's value. +func (s *CampaignSummary) SetLastModificationTime(v time.Time) *CampaignSummary { + s.LastModificationTime = &v + return s +} + +// SetName sets the Name field's value. +func (s *CampaignSummary) SetName(v string) *CampaignSummary { + s.Name = &v + return s +} + +// SetSignalCatalogArn sets the SignalCatalogArn field's value. +func (s *CampaignSummary) SetSignalCatalogArn(v string) *CampaignSummary { + s.SignalCatalogArn = &v + return s +} + +// SetStatus sets the Status field's value. +func (s *CampaignSummary) SetStatus(v string) *CampaignSummary { + s.Status = &v + return s +} + +// SetTargetArn sets the TargetArn field's value. +func (s *CampaignSummary) SetTargetArn(v string) *CampaignSummary { + s.TargetArn = &v + return s +} + +// Configurations used to create a decoder manifest. +type CanDbcDefinition struct { + _ struct{} `type:"structure"` + + // A list of DBC files. You can upload only one DBC file for each network interface + // and specify up to five (inclusive) files in the list. + // + // CanDbcFiles is a required field + CanDbcFiles [][]byte `locationName:"canDbcFiles" min:"1" type:"list" required:"true"` + + // Contains information about a network interface. + // + // NetworkInterface is a required field + NetworkInterface *string `locationName:"networkInterface" min:"1" type:"string" required:"true"` + + // Pairs every signal specified in your vehicle model with a signal decoder. + SignalsMap map[string]*string `locationName:"signalsMap" type:"map"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CanDbcDefinition) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CanDbcDefinition) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *CanDbcDefinition) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "CanDbcDefinition"} + if s.CanDbcFiles == nil { + invalidParams.Add(request.NewErrParamRequired("CanDbcFiles")) + } + if s.CanDbcFiles != nil && len(s.CanDbcFiles) < 1 { + invalidParams.Add(request.NewErrParamMinLen("CanDbcFiles", 1)) + } + if s.NetworkInterface == nil { + invalidParams.Add(request.NewErrParamRequired("NetworkInterface")) + } + if s.NetworkInterface != nil && len(*s.NetworkInterface) < 1 { + invalidParams.Add(request.NewErrParamMinLen("NetworkInterface", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetCanDbcFiles sets the CanDbcFiles field's value. +func (s *CanDbcDefinition) SetCanDbcFiles(v [][]byte) *CanDbcDefinition { + s.CanDbcFiles = v + return s +} + +// SetNetworkInterface sets the NetworkInterface field's value. +func (s *CanDbcDefinition) SetNetworkInterface(v string) *CanDbcDefinition { + s.NetworkInterface = &v + return s +} + +// SetSignalsMap sets the SignalsMap field's value. +func (s *CanDbcDefinition) SetSignalsMap(v map[string]*string) *CanDbcDefinition { + s.SignalsMap = v + return s +} + +// A single controller area network (CAN) device interface. +type CanInterface struct { + _ struct{} `type:"structure"` + + // The unique name of the interface. + // + // Name is a required field + Name *string `locationName:"name" min:"1" type:"string" required:"true"` + + // The name of the communication protocol for the interface. + ProtocolName *string `locationName:"protocolName" min:"1" type:"string"` + + // The version of the communication protocol for the interface. + ProtocolVersion *string `locationName:"protocolVersion" min:"1" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CanInterface) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CanInterface) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *CanInterface) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "CanInterface"} + if s.Name == nil { + invalidParams.Add(request.NewErrParamRequired("Name")) + } + if s.Name != nil && len(*s.Name) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Name", 1)) + } + if s.ProtocolName != nil && len(*s.ProtocolName) < 1 { + invalidParams.Add(request.NewErrParamMinLen("ProtocolName", 1)) + } + if s.ProtocolVersion != nil && len(*s.ProtocolVersion) < 1 { + invalidParams.Add(request.NewErrParamMinLen("ProtocolVersion", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetName sets the Name field's value. +func (s *CanInterface) SetName(v string) *CanInterface { + s.Name = &v + return s +} + +// SetProtocolName sets the ProtocolName field's value. +func (s *CanInterface) SetProtocolName(v string) *CanInterface { + s.ProtocolName = &v + return s +} + +// SetProtocolVersion sets the ProtocolVersion field's value. +func (s *CanInterface) SetProtocolVersion(v string) *CanInterface { + s.ProtocolVersion = &v + return s +} + +// Information about a single controller area network (CAN) signal and the messages +// it receives and transmits. +type CanSignal struct { + _ struct{} `type:"structure"` + + // A multiplier used to decode the CAN message. + // + // Factor is a required field + Factor *float64 `locationName:"factor" type:"double" required:"true"` + + // Whether the byte ordering of a CAN message is big-endian. + // + // IsBigEndian is a required field + IsBigEndian *bool `locationName:"isBigEndian" type:"boolean" required:"true"` + + // Whether the message data is specified as a signed value. + // + // IsSigned is a required field + IsSigned *bool `locationName:"isSigned" type:"boolean" required:"true"` + + // How many bytes of data are in the message. + // + // Length is a required field + Length *int64 `locationName:"length" type:"integer" required:"true"` + + // The ID of the message. + // + // MessageId is a required field + MessageId *int64 `locationName:"messageId" type:"integer" required:"true"` + + // The name of the signal. + Name *string `locationName:"name" min:"1" type:"string"` + + // Indicates where data appears in the CAN message. + // + // Offset is a required field + Offset *float64 `locationName:"offset" type:"double" required:"true"` + + // Indicates the beginning of the CAN message. + // + // StartBit is a required field + StartBit *int64 `locationName:"startBit" type:"integer" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CanSignal) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CanSignal) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *CanSignal) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "CanSignal"} + if s.Factor == nil { + invalidParams.Add(request.NewErrParamRequired("Factor")) + } + if s.IsBigEndian == nil { + invalidParams.Add(request.NewErrParamRequired("IsBigEndian")) + } + if s.IsSigned == nil { + invalidParams.Add(request.NewErrParamRequired("IsSigned")) + } + if s.Length == nil { + invalidParams.Add(request.NewErrParamRequired("Length")) + } + if s.MessageId == nil { + invalidParams.Add(request.NewErrParamRequired("MessageId")) + } + if s.Name != nil && len(*s.Name) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Name", 1)) + } + if s.Offset == nil { + invalidParams.Add(request.NewErrParamRequired("Offset")) + } + if s.StartBit == nil { + invalidParams.Add(request.NewErrParamRequired("StartBit")) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetFactor sets the Factor field's value. +func (s *CanSignal) SetFactor(v float64) *CanSignal { + s.Factor = &v + return s +} + +// SetIsBigEndian sets the IsBigEndian field's value. +func (s *CanSignal) SetIsBigEndian(v bool) *CanSignal { + s.IsBigEndian = &v + return s +} + +// SetIsSigned sets the IsSigned field's value. +func (s *CanSignal) SetIsSigned(v bool) *CanSignal { + s.IsSigned = &v + return s +} + +// SetLength sets the Length field's value. +func (s *CanSignal) SetLength(v int64) *CanSignal { + s.Length = &v + return s +} + +// SetMessageId sets the MessageId field's value. +func (s *CanSignal) SetMessageId(v int64) *CanSignal { + s.MessageId = &v + return s +} + +// SetName sets the Name field's value. +func (s *CanSignal) SetName(v string) *CanSignal { + s.Name = &v + return s +} + +// SetOffset sets the Offset field's value. +func (s *CanSignal) SetOffset(v float64) *CanSignal { + s.Offset = &v + return s +} + +// SetStartBit sets the StartBit field's value. +func (s *CanSignal) SetStartBit(v int64) *CanSignal { + s.StartBit = &v + return s +} + +// The log delivery option to send data to Amazon CloudWatch Logs. +type CloudWatchLogDeliveryOptions struct { + _ struct{} `type:"structure"` + + // The Amazon CloudWatch Logs group the operation sends data to. + LogGroupName *string `locationName:"logGroupName" min:"1" type:"string"` + + // The type of log to send data to Amazon CloudWatch Logs. + // + // LogType is a required field + LogType *string `locationName:"logType" type:"string" required:"true" enum:"LogType"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CloudWatchLogDeliveryOptions) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CloudWatchLogDeliveryOptions) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *CloudWatchLogDeliveryOptions) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "CloudWatchLogDeliveryOptions"} + if s.LogGroupName != nil && len(*s.LogGroupName) < 1 { + invalidParams.Add(request.NewErrParamMinLen("LogGroupName", 1)) + } + if s.LogType == nil { + invalidParams.Add(request.NewErrParamRequired("LogType")) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetLogGroupName sets the LogGroupName field's value. +func (s *CloudWatchLogDeliveryOptions) SetLogGroupName(v string) *CloudWatchLogDeliveryOptions { + s.LogGroupName = &v + return s +} + +// SetLogType sets the LogType field's value. +func (s *CloudWatchLogDeliveryOptions) SetLogType(v string) *CloudWatchLogDeliveryOptions { + s.LogType = &v + return s +} + +// Specifies what data to collect and how often or when to collect it. +type CollectionScheme struct { + _ struct{} `type:"structure"` + + // Information about a collection scheme that uses a simple logical expression + // to recognize what data to collect. + ConditionBasedCollectionScheme *ConditionBasedCollectionScheme `locationName:"conditionBasedCollectionScheme" type:"structure"` + + // Information about a collection scheme that uses a time period to decide how + // often to collect data. + TimeBasedCollectionScheme *TimeBasedCollectionScheme `locationName:"timeBasedCollectionScheme" type:"structure"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CollectionScheme) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CollectionScheme) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *CollectionScheme) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "CollectionScheme"} + if s.ConditionBasedCollectionScheme != nil { + if err := s.ConditionBasedCollectionScheme.Validate(); err != nil { + invalidParams.AddNested("ConditionBasedCollectionScheme", err.(request.ErrInvalidParams)) + } + } + if s.TimeBasedCollectionScheme != nil { + if err := s.TimeBasedCollectionScheme.Validate(); err != nil { + invalidParams.AddNested("TimeBasedCollectionScheme", err.(request.ErrInvalidParams)) + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetConditionBasedCollectionScheme sets the ConditionBasedCollectionScheme field's value. +func (s *CollectionScheme) SetConditionBasedCollectionScheme(v *ConditionBasedCollectionScheme) *CollectionScheme { + s.ConditionBasedCollectionScheme = v + return s +} + +// SetTimeBasedCollectionScheme sets the TimeBasedCollectionScheme field's value. +func (s *CollectionScheme) SetTimeBasedCollectionScheme(v *TimeBasedCollectionScheme) *CollectionScheme { + s.TimeBasedCollectionScheme = v + return s +} + +// Information about a collection scheme that uses a simple logical expression +// to recognize what data to collect. +type ConditionBasedCollectionScheme struct { + _ struct{} `type:"structure"` + + // Specifies the version of the conditional expression language. + ConditionLanguageVersion *int64 `locationName:"conditionLanguageVersion" min:"1" type:"integer"` + + // The logical expression used to recognize what data to collect. For example, + // $variable.Vehicle.OutsideAirTemperature >= 105.0. + // + // Expression is a required field + Expression *string `locationName:"expression" min:"1" type:"string" required:"true"` + + // The minimum duration of time between two triggering events to collect data, + // in milliseconds. + // + // If a signal changes often, you might want to collect data at a slower rate. + MinimumTriggerIntervalMs *int64 `locationName:"minimumTriggerIntervalMs" type:"long"` + + // Whether to collect data for all triggering events (ALWAYS). Specify (RISING_EDGE), + // or specify only when the condition first evaluates to false. For example, + // triggering on "AirbagDeployed"; Users aren't interested on triggering when + // the airbag is already exploded; they only care about the change from not + // deployed => deployed. + TriggerMode *string `locationName:"triggerMode" type:"string" enum:"TriggerMode"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ConditionBasedCollectionScheme) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ConditionBasedCollectionScheme) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *ConditionBasedCollectionScheme) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ConditionBasedCollectionScheme"} + if s.ConditionLanguageVersion != nil && *s.ConditionLanguageVersion < 1 { + invalidParams.Add(request.NewErrParamMinValue("ConditionLanguageVersion", 1)) + } + if s.Expression == nil { + invalidParams.Add(request.NewErrParamRequired("Expression")) + } + if s.Expression != nil && len(*s.Expression) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Expression", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetConditionLanguageVersion sets the ConditionLanguageVersion field's value. +func (s *ConditionBasedCollectionScheme) SetConditionLanguageVersion(v int64) *ConditionBasedCollectionScheme { + s.ConditionLanguageVersion = &v + return s +} + +// SetExpression sets the Expression field's value. +func (s *ConditionBasedCollectionScheme) SetExpression(v string) *ConditionBasedCollectionScheme { + s.Expression = &v + return s +} + +// SetMinimumTriggerIntervalMs sets the MinimumTriggerIntervalMs field's value. +func (s *ConditionBasedCollectionScheme) SetMinimumTriggerIntervalMs(v int64) *ConditionBasedCollectionScheme { + s.MinimumTriggerIntervalMs = &v + return s +} + +// SetTriggerMode sets the TriggerMode field's value. +func (s *ConditionBasedCollectionScheme) SetTriggerMode(v string) *ConditionBasedCollectionScheme { + s.TriggerMode = &v + return s +} + +// The request has conflicting operations. This can occur if you're trying to +// perform more than one operation on the same resource at the same time. +type ConflictException struct { + _ struct{} `type:"structure"` + RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` + + Message_ *string `locationName:"message" type:"string"` + + // The resource on which there are conflicting operations. + // + // Resource is a required field + Resource *string `locationName:"resource" type:"string" required:"true"` + + // The type of resource on which there are conflicting operations.. + // + // ResourceType is a required field + ResourceType *string `locationName:"resourceType" type:"string" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ConflictException) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ConflictException) GoString() string { + return s.String() +} + +func newErrorConflictException(v protocol.ResponseMetadata) error { + return &ConflictException{ + RespMetadata: v, + } +} + +// Code returns the exception type name. +func (s *ConflictException) Code() string { + return "ConflictException" +} + +// Message returns the exception's message. +func (s *ConflictException) Message() string { + if s.Message_ != nil { + return *s.Message_ + } + return "" +} + +// OrigErr always returns nil, satisfies awserr.Error interface. +func (s *ConflictException) OrigErr() error { + return nil +} + +func (s *ConflictException) Error() string { + return fmt.Sprintf("%s: %s\n%s", s.Code(), s.Message(), s.String()) +} + +// Status code returns the HTTP status code for the request's response error. +func (s *ConflictException) StatusCode() int { + return s.RespMetadata.StatusCode +} + +// RequestID returns the service's response RequestID for request. +func (s *ConflictException) RequestID() string { + return s.RespMetadata.RequestID +} + +type CreateCampaignInput struct { + _ struct{} `type:"structure"` + + // The data collection scheme associated with the campaign. You can specify + // a scheme that collects data based on time or an event. + // + // CollectionScheme is a required field + CollectionScheme *CollectionScheme `locationName:"collectionScheme" type:"structure" required:"true"` + + // (Optional) Whether to compress signals before transmitting data to Amazon + // Web Services IoT FleetWise. If you don't want to compress the signals, use + // OFF. If it's not specified, SNAPPY is used. + // + // Default: SNAPPY + Compression *string `locationName:"compression" type:"string" enum:"Compression"` + + // (Optional) A list of vehicle attributes to associate with a campaign. + // + // Default: An empty array + DataExtraDimensions []*string `locationName:"dataExtraDimensions" type:"list"` + + // An optional description of the campaign to help identify its purpose. + Description *string `locationName:"description" min:"1" type:"string"` + + // (Optional) Option for a vehicle to send diagnostic trouble codes to Amazon + // Web Services IoT FleetWise. If you want to send diagnostic trouble codes, + // use SEND_ACTIVE_DTCS. If it's not specified, OFF is used. + // + // Default: OFF + DiagnosticsMode *string `locationName:"diagnosticsMode" type:"string" enum:"DiagnosticsMode"` + + // (Optional) The time the campaign expires, in seconds since epoch (January + // 1, 1970 at midnight UTC time). Vehicle data won't be collected after the + // campaign expires. + // + // Default: 253402243200 (December 31, 9999, 00:00:00 UTC) + ExpiryTime *time.Time `locationName:"expiryTime" type:"timestamp"` + + // The name of the campaign to create. + // + // Name is a required field + Name *string `locationName:"name" min:"1" type:"string" required:"true"` + + // (Optional) How long (in milliseconds) to collect raw data after a triggering + // event initiates the collection. If it's not specified, 0 is used. + // + // Default: 0 + PostTriggerCollectionDuration *int64 `locationName:"postTriggerCollectionDuration" type:"long"` + + // (Optional) A number indicating the priority of one campaign over another + // campaign for a certain vehicle or fleet. A campaign with the lowest value + // is deployed to vehicles before any other campaigns. If it's not specified, + // 0 is used. + // + // Default: 0 + Priority *int64 `locationName:"priority" type:"integer"` + + // (Optional) The Amazon Resource Name (ARN) of the signal catalog to associate + // with the campaign. + // + // SignalCatalogArn is a required field + SignalCatalogArn *string `locationName:"signalCatalogArn" type:"string" required:"true"` + + // (Optional) A list of information about signals to collect. + SignalsToCollect []*SignalInformation `locationName:"signalsToCollect" type:"list"` + + // (Optional) Whether to store collected data after a vehicle lost a connection + // with the cloud. After a connection is re-established, the data is automatically + // forwarded to Amazon Web Services IoT FleetWise. If you want to store collected + // data when a vehicle loses connection with the cloud, use TO_DISK. If it's + // not specified, OFF is used. + // + // Default: OFF + SpoolingMode *string `locationName:"spoolingMode" type:"string" enum:"SpoolingMode"` + + // (Optional) The time, in milliseconds, to deliver a campaign after it was + // approved. If it's not specified, 0 is used. + // + // Default: 0 + StartTime *time.Time `locationName:"startTime" type:"timestamp"` + + // Metadata that can be used to manage the campaign. + Tags []*Tag `locationName:"tags" type:"list"` + + // The ARN of the vehicle or fleet to deploy a campaign to. + // + // TargetArn is a required field + TargetArn *string `locationName:"targetArn" type:"string" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreateCampaignInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreateCampaignInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *CreateCampaignInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "CreateCampaignInput"} + if s.CollectionScheme == nil { + invalidParams.Add(request.NewErrParamRequired("CollectionScheme")) + } + if s.Description != nil && len(*s.Description) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Description", 1)) + } + if s.Name == nil { + invalidParams.Add(request.NewErrParamRequired("Name")) + } + if s.Name != nil && len(*s.Name) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Name", 1)) + } + if s.SignalCatalogArn == nil { + invalidParams.Add(request.NewErrParamRequired("SignalCatalogArn")) + } + if s.TargetArn == nil { + invalidParams.Add(request.NewErrParamRequired("TargetArn")) + } + if s.CollectionScheme != nil { + if err := s.CollectionScheme.Validate(); err != nil { + invalidParams.AddNested("CollectionScheme", err.(request.ErrInvalidParams)) + } + } + if s.SignalsToCollect != nil { + for i, v := range s.SignalsToCollect { + if v == nil { + continue + } + if err := v.Validate(); err != nil { + invalidParams.AddNested(fmt.Sprintf("%s[%v]", "SignalsToCollect", i), err.(request.ErrInvalidParams)) + } + } + } + if s.Tags != nil { + for i, v := range s.Tags { + if v == nil { + continue + } + if err := v.Validate(); err != nil { + invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Tags", i), err.(request.ErrInvalidParams)) + } + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetCollectionScheme sets the CollectionScheme field's value. +func (s *CreateCampaignInput) SetCollectionScheme(v *CollectionScheme) *CreateCampaignInput { + s.CollectionScheme = v + return s +} + +// SetCompression sets the Compression field's value. +func (s *CreateCampaignInput) SetCompression(v string) *CreateCampaignInput { + s.Compression = &v + return s +} + +// SetDataExtraDimensions sets the DataExtraDimensions field's value. +func (s *CreateCampaignInput) SetDataExtraDimensions(v []*string) *CreateCampaignInput { + s.DataExtraDimensions = v + return s +} + +// SetDescription sets the Description field's value. +func (s *CreateCampaignInput) SetDescription(v string) *CreateCampaignInput { + s.Description = &v + return s +} + +// SetDiagnosticsMode sets the DiagnosticsMode field's value. +func (s *CreateCampaignInput) SetDiagnosticsMode(v string) *CreateCampaignInput { + s.DiagnosticsMode = &v + return s +} + +// SetExpiryTime sets the ExpiryTime field's value. +func (s *CreateCampaignInput) SetExpiryTime(v time.Time) *CreateCampaignInput { + s.ExpiryTime = &v + return s +} + +// SetName sets the Name field's value. +func (s *CreateCampaignInput) SetName(v string) *CreateCampaignInput { + s.Name = &v + return s +} + +// SetPostTriggerCollectionDuration sets the PostTriggerCollectionDuration field's value. +func (s *CreateCampaignInput) SetPostTriggerCollectionDuration(v int64) *CreateCampaignInput { + s.PostTriggerCollectionDuration = &v + return s +} + +// SetPriority sets the Priority field's value. +func (s *CreateCampaignInput) SetPriority(v int64) *CreateCampaignInput { + s.Priority = &v + return s +} + +// SetSignalCatalogArn sets the SignalCatalogArn field's value. +func (s *CreateCampaignInput) SetSignalCatalogArn(v string) *CreateCampaignInput { + s.SignalCatalogArn = &v + return s +} + +// SetSignalsToCollect sets the SignalsToCollect field's value. +func (s *CreateCampaignInput) SetSignalsToCollect(v []*SignalInformation) *CreateCampaignInput { + s.SignalsToCollect = v + return s +} + +// SetSpoolingMode sets the SpoolingMode field's value. +func (s *CreateCampaignInput) SetSpoolingMode(v string) *CreateCampaignInput { + s.SpoolingMode = &v + return s +} + +// SetStartTime sets the StartTime field's value. +func (s *CreateCampaignInput) SetStartTime(v time.Time) *CreateCampaignInput { + s.StartTime = &v + return s +} + +// SetTags sets the Tags field's value. +func (s *CreateCampaignInput) SetTags(v []*Tag) *CreateCampaignInput { + s.Tags = v + return s +} + +// SetTargetArn sets the TargetArn field's value. +func (s *CreateCampaignInput) SetTargetArn(v string) *CreateCampaignInput { + s.TargetArn = &v + return s +} + +type CreateCampaignOutput struct { + _ struct{} `type:"structure"` + + // The ARN of the created campaign. + Arn *string `locationName:"arn" type:"string"` + + // The name of the created campaign. + Name *string `locationName:"name" min:"1" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreateCampaignOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreateCampaignOutput) GoString() string { + return s.String() +} + +// SetArn sets the Arn field's value. +func (s *CreateCampaignOutput) SetArn(v string) *CreateCampaignOutput { + s.Arn = &v + return s +} + +// SetName sets the Name field's value. +func (s *CreateCampaignOutput) SetName(v string) *CreateCampaignOutput { + s.Name = &v + return s +} + +type CreateDecoderManifestInput struct { + _ struct{} `type:"structure"` + + // A brief description of the decoder manifest. + Description *string `locationName:"description" min:"1" type:"string"` + + // The Amazon Resource Name (ARN) of the vehicle model (model manifest). + // + // ModelManifestArn is a required field + ModelManifestArn *string `locationName:"modelManifestArn" type:"string" required:"true"` + + // The unique name of the decoder manifest to create. + // + // Name is a required field + Name *string `locationName:"name" min:"1" type:"string" required:"true"` + + // A list of information about available network interfaces. + NetworkInterfaces []*NetworkInterface `locationName:"networkInterfaces" min:"1" type:"list"` + + // A list of information about signal decoders. + SignalDecoders []*SignalDecoder `locationName:"signalDecoders" min:"1" type:"list"` + + // Metadata that can be used to manage the decoder manifest. + Tags []*Tag `locationName:"tags" type:"list"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreateDecoderManifestInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreateDecoderManifestInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *CreateDecoderManifestInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "CreateDecoderManifestInput"} + if s.Description != nil && len(*s.Description) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Description", 1)) + } + if s.ModelManifestArn == nil { + invalidParams.Add(request.NewErrParamRequired("ModelManifestArn")) + } + if s.Name == nil { + invalidParams.Add(request.NewErrParamRequired("Name")) + } + if s.Name != nil && len(*s.Name) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Name", 1)) + } + if s.NetworkInterfaces != nil && len(s.NetworkInterfaces) < 1 { + invalidParams.Add(request.NewErrParamMinLen("NetworkInterfaces", 1)) + } + if s.SignalDecoders != nil && len(s.SignalDecoders) < 1 { + invalidParams.Add(request.NewErrParamMinLen("SignalDecoders", 1)) + } + if s.NetworkInterfaces != nil { + for i, v := range s.NetworkInterfaces { + if v == nil { + continue + } + if err := v.Validate(); err != nil { + invalidParams.AddNested(fmt.Sprintf("%s[%v]", "NetworkInterfaces", i), err.(request.ErrInvalidParams)) + } + } + } + if s.SignalDecoders != nil { + for i, v := range s.SignalDecoders { + if v == nil { + continue + } + if err := v.Validate(); err != nil { + invalidParams.AddNested(fmt.Sprintf("%s[%v]", "SignalDecoders", i), err.(request.ErrInvalidParams)) + } + } + } + if s.Tags != nil { + for i, v := range s.Tags { + if v == nil { + continue + } + if err := v.Validate(); err != nil { + invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Tags", i), err.(request.ErrInvalidParams)) + } + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetDescription sets the Description field's value. +func (s *CreateDecoderManifestInput) SetDescription(v string) *CreateDecoderManifestInput { + s.Description = &v + return s +} + +// SetModelManifestArn sets the ModelManifestArn field's value. +func (s *CreateDecoderManifestInput) SetModelManifestArn(v string) *CreateDecoderManifestInput { + s.ModelManifestArn = &v + return s +} + +// SetName sets the Name field's value. +func (s *CreateDecoderManifestInput) SetName(v string) *CreateDecoderManifestInput { + s.Name = &v + return s +} + +// SetNetworkInterfaces sets the NetworkInterfaces field's value. +func (s *CreateDecoderManifestInput) SetNetworkInterfaces(v []*NetworkInterface) *CreateDecoderManifestInput { + s.NetworkInterfaces = v + return s +} + +// SetSignalDecoders sets the SignalDecoders field's value. +func (s *CreateDecoderManifestInput) SetSignalDecoders(v []*SignalDecoder) *CreateDecoderManifestInput { + s.SignalDecoders = v + return s +} + +// SetTags sets the Tags field's value. +func (s *CreateDecoderManifestInput) SetTags(v []*Tag) *CreateDecoderManifestInput { + s.Tags = v + return s +} + +type CreateDecoderManifestOutput struct { + _ struct{} `type:"structure"` + + // The ARN of the created decoder manifest. + // + // Arn is a required field + Arn *string `locationName:"arn" type:"string" required:"true"` + + // The name of the created decoder manifest. + // + // Name is a required field + Name *string `locationName:"name" min:"1" type:"string" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreateDecoderManifestOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreateDecoderManifestOutput) GoString() string { + return s.String() +} + +// SetArn sets the Arn field's value. +func (s *CreateDecoderManifestOutput) SetArn(v string) *CreateDecoderManifestOutput { + s.Arn = &v + return s +} + +// SetName sets the Name field's value. +func (s *CreateDecoderManifestOutput) SetName(v string) *CreateDecoderManifestOutput { + s.Name = &v + return s +} + +type CreateFleetInput struct { + _ struct{} `type:"structure"` + + // A brief description of the fleet to create. + Description *string `locationName:"description" min:"1" type:"string"` + + // The unique ID of the fleet to create. + // + // FleetId is a required field + FleetId *string `locationName:"fleetId" min:"1" type:"string" required:"true"` + + // The Amazon Resource Name (ARN) of a signal catalog. + // + // SignalCatalogArn is a required field + SignalCatalogArn *string `locationName:"signalCatalogArn" type:"string" required:"true"` + + // Metadata that can be used to manage the fleet. + Tags []*Tag `locationName:"tags" type:"list"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreateFleetInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreateFleetInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *CreateFleetInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "CreateFleetInput"} + if s.Description != nil && len(*s.Description) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Description", 1)) + } + if s.FleetId == nil { + invalidParams.Add(request.NewErrParamRequired("FleetId")) + } + if s.FleetId != nil && len(*s.FleetId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("FleetId", 1)) + } + if s.SignalCatalogArn == nil { + invalidParams.Add(request.NewErrParamRequired("SignalCatalogArn")) + } + if s.Tags != nil { + for i, v := range s.Tags { + if v == nil { + continue + } + if err := v.Validate(); err != nil { + invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Tags", i), err.(request.ErrInvalidParams)) + } + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetDescription sets the Description field's value. +func (s *CreateFleetInput) SetDescription(v string) *CreateFleetInput { + s.Description = &v + return s +} + +// SetFleetId sets the FleetId field's value. +func (s *CreateFleetInput) SetFleetId(v string) *CreateFleetInput { + s.FleetId = &v + return s +} + +// SetSignalCatalogArn sets the SignalCatalogArn field's value. +func (s *CreateFleetInput) SetSignalCatalogArn(v string) *CreateFleetInput { + s.SignalCatalogArn = &v + return s +} + +// SetTags sets the Tags field's value. +func (s *CreateFleetInput) SetTags(v []*Tag) *CreateFleetInput { + s.Tags = v + return s +} + +type CreateFleetOutput struct { + _ struct{} `type:"structure"` + + // The ARN of the created fleet. + // + // Arn is a required field + Arn *string `locationName:"arn" type:"string" required:"true"` + + // The ID of the created fleet. + // + // Id is a required field + Id *string `locationName:"id" min:"1" type:"string" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreateFleetOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreateFleetOutput) GoString() string { + return s.String() +} + +// SetArn sets the Arn field's value. +func (s *CreateFleetOutput) SetArn(v string) *CreateFleetOutput { + s.Arn = &v + return s +} + +// SetId sets the Id field's value. +func (s *CreateFleetOutput) SetId(v string) *CreateFleetOutput { + s.Id = &v + return s +} + +type CreateModelManifestInput struct { + _ struct{} `type:"structure"` + + // A brief description of the vehicle model. + Description *string `locationName:"description" min:"1" type:"string"` + + // The name of the vehicle model to create. + // + // Name is a required field + Name *string `locationName:"name" min:"1" type:"string" required:"true"` + + // A list of nodes, which are a general abstraction of signals. + // + // Nodes is a required field + Nodes []*string `locationName:"nodes" type:"list" required:"true"` + + // The Amazon Resource Name (ARN) of a signal catalog. + // + // SignalCatalogArn is a required field + SignalCatalogArn *string `locationName:"signalCatalogArn" type:"string" required:"true"` + + // Metadata that can be used to manage the vehicle model. + Tags []*Tag `locationName:"tags" type:"list"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreateModelManifestInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreateModelManifestInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *CreateModelManifestInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "CreateModelManifestInput"} + if s.Description != nil && len(*s.Description) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Description", 1)) + } + if s.Name == nil { + invalidParams.Add(request.NewErrParamRequired("Name")) + } + if s.Name != nil && len(*s.Name) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Name", 1)) + } + if s.Nodes == nil { + invalidParams.Add(request.NewErrParamRequired("Nodes")) + } + if s.SignalCatalogArn == nil { + invalidParams.Add(request.NewErrParamRequired("SignalCatalogArn")) + } + if s.Tags != nil { + for i, v := range s.Tags { + if v == nil { + continue + } + if err := v.Validate(); err != nil { + invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Tags", i), err.(request.ErrInvalidParams)) + } + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetDescription sets the Description field's value. +func (s *CreateModelManifestInput) SetDescription(v string) *CreateModelManifestInput { + s.Description = &v + return s +} + +// SetName sets the Name field's value. +func (s *CreateModelManifestInput) SetName(v string) *CreateModelManifestInput { + s.Name = &v + return s +} + +// SetNodes sets the Nodes field's value. +func (s *CreateModelManifestInput) SetNodes(v []*string) *CreateModelManifestInput { + s.Nodes = v + return s +} + +// SetSignalCatalogArn sets the SignalCatalogArn field's value. +func (s *CreateModelManifestInput) SetSignalCatalogArn(v string) *CreateModelManifestInput { + s.SignalCatalogArn = &v + return s +} + +// SetTags sets the Tags field's value. +func (s *CreateModelManifestInput) SetTags(v []*Tag) *CreateModelManifestInput { + s.Tags = v + return s +} + +type CreateModelManifestOutput struct { + _ struct{} `type:"structure"` + + // The ARN of the created vehicle model. + // + // Arn is a required field + Arn *string `locationName:"arn" type:"string" required:"true"` + + // The name of the created vehicle model. + // + // Name is a required field + Name *string `locationName:"name" min:"1" type:"string" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreateModelManifestOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreateModelManifestOutput) GoString() string { + return s.String() +} + +// SetArn sets the Arn field's value. +func (s *CreateModelManifestOutput) SetArn(v string) *CreateModelManifestOutput { + s.Arn = &v + return s +} + +// SetName sets the Name field's value. +func (s *CreateModelManifestOutput) SetName(v string) *CreateModelManifestOutput { + s.Name = &v + return s +} + +type CreateSignalCatalogInput struct { + _ struct{} `type:"structure"` + + // A brief description of the signal catalog. + Description *string `locationName:"description" min:"1" type:"string"` + + // The name of the signal catalog to create. + // + // Name is a required field + Name *string `locationName:"name" min:"1" type:"string" required:"true"` + + // A list of information about nodes, which are a general abstraction of signals. + // For more information, see the API data type. + Nodes []*Node `locationName:"nodes" type:"list"` + + // Metadata that can be used to manage the signal catalog. + Tags []*Tag `locationName:"tags" type:"list"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreateSignalCatalogInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreateSignalCatalogInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *CreateSignalCatalogInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "CreateSignalCatalogInput"} + if s.Description != nil && len(*s.Description) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Description", 1)) + } + if s.Name == nil { + invalidParams.Add(request.NewErrParamRequired("Name")) + } + if s.Name != nil && len(*s.Name) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Name", 1)) + } + if s.Nodes != nil { + for i, v := range s.Nodes { + if v == nil { + continue + } + if err := v.Validate(); err != nil { + invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Nodes", i), err.(request.ErrInvalidParams)) + } + } + } + if s.Tags != nil { + for i, v := range s.Tags { + if v == nil { + continue + } + if err := v.Validate(); err != nil { + invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Tags", i), err.(request.ErrInvalidParams)) + } + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetDescription sets the Description field's value. +func (s *CreateSignalCatalogInput) SetDescription(v string) *CreateSignalCatalogInput { + s.Description = &v + return s +} + +// SetName sets the Name field's value. +func (s *CreateSignalCatalogInput) SetName(v string) *CreateSignalCatalogInput { + s.Name = &v + return s +} + +// SetNodes sets the Nodes field's value. +func (s *CreateSignalCatalogInput) SetNodes(v []*Node) *CreateSignalCatalogInput { + s.Nodes = v + return s +} + +// SetTags sets the Tags field's value. +func (s *CreateSignalCatalogInput) SetTags(v []*Tag) *CreateSignalCatalogInput { + s.Tags = v + return s +} + +type CreateSignalCatalogOutput struct { + _ struct{} `type:"structure"` + + // The ARN of the created signal catalog. + // + // Arn is a required field + Arn *string `locationName:"arn" type:"string" required:"true"` + + // The name of the created signal catalog. + // + // Name is a required field + Name *string `locationName:"name" min:"1" type:"string" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreateSignalCatalogOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreateSignalCatalogOutput) GoString() string { + return s.String() +} + +// SetArn sets the Arn field's value. +func (s *CreateSignalCatalogOutput) SetArn(v string) *CreateSignalCatalogOutput { + s.Arn = &v + return s +} + +// SetName sets the Name field's value. +func (s *CreateSignalCatalogOutput) SetName(v string) *CreateSignalCatalogOutput { + s.Name = &v + return s +} + +// An HTTP error resulting from creating a vehicle. +type CreateVehicleError struct { + _ struct{} `type:"structure"` + + // An HTTP error code. + Code *string `locationName:"code" type:"string"` + + // A description of the HTTP error. + Message *string `locationName:"message" type:"string"` + + // The ID of the vehicle with the error. + VehicleName *string `locationName:"vehicleName" min:"1" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreateVehicleError) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreateVehicleError) GoString() string { + return s.String() +} + +// SetCode sets the Code field's value. +func (s *CreateVehicleError) SetCode(v string) *CreateVehicleError { + s.Code = &v + return s +} + +// SetMessage sets the Message field's value. +func (s *CreateVehicleError) SetMessage(v string) *CreateVehicleError { + s.Message = &v + return s +} + +// SetVehicleName sets the VehicleName field's value. +func (s *CreateVehicleError) SetVehicleName(v string) *CreateVehicleError { + s.VehicleName = &v + return s +} + +type CreateVehicleInput struct { + _ struct{} `type:"structure"` + + // An option to create a new Amazon Web Services IoT thing when creating a vehicle, + // or to validate an existing Amazon Web Services IoT thing as a vehicle. + // + // Default: + AssociationBehavior *string `locationName:"associationBehavior" type:"string" enum:"VehicleAssociationBehavior"` + + // Static information about a vehicle in a key-value pair. For example: "engineType" + // : "1.3 L R2" + Attributes map[string]*string `locationName:"attributes" type:"map"` + + // The ARN of a decoder manifest. + // + // DecoderManifestArn is a required field + DecoderManifestArn *string `locationName:"decoderManifestArn" type:"string" required:"true"` + + // The Amazon Resource Name ARN of a vehicle model. + // + // ModelManifestArn is a required field + ModelManifestArn *string `locationName:"modelManifestArn" type:"string" required:"true"` + + // Metadata that can be used to manage the vehicle. + Tags []*Tag `locationName:"tags" type:"list"` + + // The unique ID of the vehicle to create. + // + // VehicleName is a required field + VehicleName *string `locationName:"vehicleName" min:"1" type:"string" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreateVehicleInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreateVehicleInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *CreateVehicleInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "CreateVehicleInput"} + if s.DecoderManifestArn == nil { + invalidParams.Add(request.NewErrParamRequired("DecoderManifestArn")) + } + if s.ModelManifestArn == nil { + invalidParams.Add(request.NewErrParamRequired("ModelManifestArn")) + } + if s.VehicleName == nil { + invalidParams.Add(request.NewErrParamRequired("VehicleName")) + } + if s.VehicleName != nil && len(*s.VehicleName) < 1 { + invalidParams.Add(request.NewErrParamMinLen("VehicleName", 1)) + } + if s.Tags != nil { + for i, v := range s.Tags { + if v == nil { + continue + } + if err := v.Validate(); err != nil { + invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Tags", i), err.(request.ErrInvalidParams)) + } + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetAssociationBehavior sets the AssociationBehavior field's value. +func (s *CreateVehicleInput) SetAssociationBehavior(v string) *CreateVehicleInput { + s.AssociationBehavior = &v + return s +} + +// SetAttributes sets the Attributes field's value. +func (s *CreateVehicleInput) SetAttributes(v map[string]*string) *CreateVehicleInput { + s.Attributes = v + return s +} + +// SetDecoderManifestArn sets the DecoderManifestArn field's value. +func (s *CreateVehicleInput) SetDecoderManifestArn(v string) *CreateVehicleInput { + s.DecoderManifestArn = &v + return s +} + +// SetModelManifestArn sets the ModelManifestArn field's value. +func (s *CreateVehicleInput) SetModelManifestArn(v string) *CreateVehicleInput { + s.ModelManifestArn = &v + return s +} + +// SetTags sets the Tags field's value. +func (s *CreateVehicleInput) SetTags(v []*Tag) *CreateVehicleInput { + s.Tags = v + return s +} + +// SetVehicleName sets the VehicleName field's value. +func (s *CreateVehicleInput) SetVehicleName(v string) *CreateVehicleInput { + s.VehicleName = &v + return s +} + +type CreateVehicleOutput struct { + _ struct{} `type:"structure"` + + // The ARN of the created vehicle. + Arn *string `locationName:"arn" type:"string"` + + // The ARN of a created or validated Amazon Web Services IoT thing. + ThingArn *string `locationName:"thingArn" type:"string"` + + // The unique ID of the created vehicle. + VehicleName *string `locationName:"vehicleName" min:"1" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreateVehicleOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreateVehicleOutput) GoString() string { + return s.String() +} + +// SetArn sets the Arn field's value. +func (s *CreateVehicleOutput) SetArn(v string) *CreateVehicleOutput { + s.Arn = &v + return s +} + +// SetThingArn sets the ThingArn field's value. +func (s *CreateVehicleOutput) SetThingArn(v string) *CreateVehicleOutput { + s.ThingArn = &v + return s +} + +// SetVehicleName sets the VehicleName field's value. +func (s *CreateVehicleOutput) SetVehicleName(v string) *CreateVehicleOutput { + s.VehicleName = &v + return s +} + +// Information about the vehicle to create. +type CreateVehicleRequestItem struct { + _ struct{} `type:"structure"` + + // An option to create a new Amazon Web Services IoT thing when creating a vehicle, + // or to validate an existing thing as a vehicle. + AssociationBehavior *string `locationName:"associationBehavior" type:"string" enum:"VehicleAssociationBehavior"` + + // Static information about a vehicle in a key-value pair. For example: "engine + // Type" : "v6" + Attributes map[string]*string `locationName:"attributes" type:"map"` + + // The Amazon Resource Name (ARN) of a decoder manifest associated with the + // vehicle to create. + // + // DecoderManifestArn is a required field + DecoderManifestArn *string `locationName:"decoderManifestArn" type:"string" required:"true"` + + // The ARN of the vehicle model (model manifest) to create the vehicle from. + // + // ModelManifestArn is a required field + ModelManifestArn *string `locationName:"modelManifestArn" type:"string" required:"true"` + + // Metadata which can be used to manage the vehicle. + Tags []*Tag `locationName:"tags" type:"list"` + + // The unique ID of the vehicle to create. + // + // VehicleName is a required field + VehicleName *string `locationName:"vehicleName" min:"1" type:"string" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreateVehicleRequestItem) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreateVehicleRequestItem) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *CreateVehicleRequestItem) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "CreateVehicleRequestItem"} + if s.DecoderManifestArn == nil { + invalidParams.Add(request.NewErrParamRequired("DecoderManifestArn")) + } + if s.ModelManifestArn == nil { + invalidParams.Add(request.NewErrParamRequired("ModelManifestArn")) + } + if s.VehicleName == nil { + invalidParams.Add(request.NewErrParamRequired("VehicleName")) + } + if s.VehicleName != nil && len(*s.VehicleName) < 1 { + invalidParams.Add(request.NewErrParamMinLen("VehicleName", 1)) + } + if s.Tags != nil { + for i, v := range s.Tags { + if v == nil { + continue + } + if err := v.Validate(); err != nil { + invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Tags", i), err.(request.ErrInvalidParams)) + } + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetAssociationBehavior sets the AssociationBehavior field's value. +func (s *CreateVehicleRequestItem) SetAssociationBehavior(v string) *CreateVehicleRequestItem { + s.AssociationBehavior = &v + return s +} + +// SetAttributes sets the Attributes field's value. +func (s *CreateVehicleRequestItem) SetAttributes(v map[string]*string) *CreateVehicleRequestItem { + s.Attributes = v + return s +} + +// SetDecoderManifestArn sets the DecoderManifestArn field's value. +func (s *CreateVehicleRequestItem) SetDecoderManifestArn(v string) *CreateVehicleRequestItem { + s.DecoderManifestArn = &v + return s +} + +// SetModelManifestArn sets the ModelManifestArn field's value. +func (s *CreateVehicleRequestItem) SetModelManifestArn(v string) *CreateVehicleRequestItem { + s.ModelManifestArn = &v + return s +} + +// SetTags sets the Tags field's value. +func (s *CreateVehicleRequestItem) SetTags(v []*Tag) *CreateVehicleRequestItem { + s.Tags = v + return s +} + +// SetVehicleName sets the VehicleName field's value. +func (s *CreateVehicleRequestItem) SetVehicleName(v string) *CreateVehicleRequestItem { + s.VehicleName = &v + return s +} + +// Information about a created vehicle. +type CreateVehicleResponseItem struct { + _ struct{} `type:"structure"` + + // The ARN of the created vehicle. + Arn *string `locationName:"arn" type:"string"` + + // The ARN of a created or validated Amazon Web Services IoT thing. + ThingArn *string `locationName:"thingArn" type:"string"` + + // The unique ID of the vehicle to create. + VehicleName *string `locationName:"vehicleName" min:"1" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreateVehicleResponseItem) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreateVehicleResponseItem) GoString() string { + return s.String() +} + +// SetArn sets the Arn field's value. +func (s *CreateVehicleResponseItem) SetArn(v string) *CreateVehicleResponseItem { + s.Arn = &v + return s +} + +// SetThingArn sets the ThingArn field's value. +func (s *CreateVehicleResponseItem) SetThingArn(v string) *CreateVehicleResponseItem { + s.ThingArn = &v + return s +} + +// SetVehicleName sets the VehicleName field's value. +func (s *CreateVehicleResponseItem) SetVehicleName(v string) *CreateVehicleResponseItem { + s.VehicleName = &v + return s +} + +// Information about a created decoder manifest. You can use the API operation +// to return this information about multiple decoder manifests. +type DecoderManifestSummary struct { + _ struct{} `type:"structure"` + + // The ARN of a vehicle model (model manifest) associated with the decoder manifest. + Arn *string `locationName:"arn" type:"string"` + + // The time the decoder manifest was created in seconds since epoch (January + // 1, 1970 at midnight UTC time). + // + // CreationTime is a required field + CreationTime *time.Time `locationName:"creationTime" type:"timestamp" required:"true"` + + // A brief description of the decoder manifest. + Description *string `locationName:"description" min:"1" type:"string"` + + // The time the decoder manifest was last updated in seconds since epoch (January + // 1, 1970 at midnight UTC time). + // + // LastModificationTime is a required field + LastModificationTime *time.Time `locationName:"lastModificationTime" type:"timestamp" required:"true"` + + // The ARN of a vehicle model (model manifest) associated with the decoder manifest. + ModelManifestArn *string `locationName:"modelManifestArn" type:"string"` + + // The name of the decoder manifest. + Name *string `locationName:"name" type:"string"` + + // The state of the decoder manifest. If the status is ACTIVE, the decoder manifest + // can't be edited. If the status is marked DRAFT, you can edit the decoder + // manifest. + Status *string `locationName:"status" type:"string" enum:"ManifestStatus"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DecoderManifestSummary) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DecoderManifestSummary) GoString() string { + return s.String() +} + +// SetArn sets the Arn field's value. +func (s *DecoderManifestSummary) SetArn(v string) *DecoderManifestSummary { + s.Arn = &v + return s +} + +// SetCreationTime sets the CreationTime field's value. +func (s *DecoderManifestSummary) SetCreationTime(v time.Time) *DecoderManifestSummary { + s.CreationTime = &v + return s +} + +// SetDescription sets the Description field's value. +func (s *DecoderManifestSummary) SetDescription(v string) *DecoderManifestSummary { + s.Description = &v + return s +} + +// SetLastModificationTime sets the LastModificationTime field's value. +func (s *DecoderManifestSummary) SetLastModificationTime(v time.Time) *DecoderManifestSummary { + s.LastModificationTime = &v + return s +} + +// SetModelManifestArn sets the ModelManifestArn field's value. +func (s *DecoderManifestSummary) SetModelManifestArn(v string) *DecoderManifestSummary { + s.ModelManifestArn = &v + return s +} + +// SetName sets the Name field's value. +func (s *DecoderManifestSummary) SetName(v string) *DecoderManifestSummary { + s.Name = &v + return s +} + +// SetStatus sets the Status field's value. +func (s *DecoderManifestSummary) SetStatus(v string) *DecoderManifestSummary { + s.Status = &v + return s +} + +// The request couldn't be completed because it contains signal decoders with +// one or more validation errors. +type DecoderManifestValidationException struct { + _ struct{} `type:"structure"` + RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` + + // The request couldn't be completed because of invalid network interfaces in + // the request. + InvalidNetworkInterfaces []*InvalidNetworkInterface `locationName:"invalidNetworkInterfaces" type:"list"` + + // The request couldn't be completed because of invalid signals in the request. + InvalidSignals []*InvalidSignalDecoder `locationName:"invalidSignals" type:"list"` + + Message_ *string `locationName:"message" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DecoderManifestValidationException) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DecoderManifestValidationException) GoString() string { + return s.String() +} + +func newErrorDecoderManifestValidationException(v protocol.ResponseMetadata) error { + return &DecoderManifestValidationException{ + RespMetadata: v, + } +} + +// Code returns the exception type name. +func (s *DecoderManifestValidationException) Code() string { + return "DecoderManifestValidationException" +} + +// Message returns the exception's message. +func (s *DecoderManifestValidationException) Message() string { + if s.Message_ != nil { + return *s.Message_ + } + return "" +} + +// OrigErr always returns nil, satisfies awserr.Error interface. +func (s *DecoderManifestValidationException) OrigErr() error { + return nil +} + +func (s *DecoderManifestValidationException) Error() string { + return fmt.Sprintf("%s: %s\n%s", s.Code(), s.Message(), s.String()) +} + +// Status code returns the HTTP status code for the request's response error. +func (s *DecoderManifestValidationException) StatusCode() int { + return s.RespMetadata.StatusCode +} + +// RequestID returns the service's response RequestID for request. +func (s *DecoderManifestValidationException) RequestID() string { + return s.RespMetadata.RequestID +} + +type DeleteCampaignInput struct { + _ struct{} `type:"structure"` + + // The name of the campaign to delete. + // + // Name is a required field + Name *string `locationName:"name" min:"1" type:"string" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeleteCampaignInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeleteCampaignInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *DeleteCampaignInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "DeleteCampaignInput"} + if s.Name == nil { + invalidParams.Add(request.NewErrParamRequired("Name")) + } + if s.Name != nil && len(*s.Name) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Name", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetName sets the Name field's value. +func (s *DeleteCampaignInput) SetName(v string) *DeleteCampaignInput { + s.Name = &v + return s +} + +type DeleteCampaignOutput struct { + _ struct{} `type:"structure"` + + // The Amazon Resource Name (ARN) of the deleted campaign. + // + // The ARN isn’t returned if a campaign doesn’t exist. + Arn *string `locationName:"arn" type:"string"` + + // The name of the deleted campaign. + Name *string `locationName:"name" min:"1" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeleteCampaignOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeleteCampaignOutput) GoString() string { + return s.String() +} + +// SetArn sets the Arn field's value. +func (s *DeleteCampaignOutput) SetArn(v string) *DeleteCampaignOutput { + s.Arn = &v + return s +} + +// SetName sets the Name field's value. +func (s *DeleteCampaignOutput) SetName(v string) *DeleteCampaignOutput { + s.Name = &v + return s +} + +type DeleteDecoderManifestInput struct { + _ struct{} `type:"structure"` + + // The name of the decoder manifest to delete. + // + // Name is a required field + Name *string `locationName:"name" min:"1" type:"string" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeleteDecoderManifestInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeleteDecoderManifestInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *DeleteDecoderManifestInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "DeleteDecoderManifestInput"} + if s.Name == nil { + invalidParams.Add(request.NewErrParamRequired("Name")) + } + if s.Name != nil && len(*s.Name) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Name", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetName sets the Name field's value. +func (s *DeleteDecoderManifestInput) SetName(v string) *DeleteDecoderManifestInput { + s.Name = &v + return s +} + +type DeleteDecoderManifestOutput struct { + _ struct{} `type:"structure"` + + // The Amazon Resource Name (ARN) of the deleted decoder manifest. + // + // Arn is a required field + Arn *string `locationName:"arn" type:"string" required:"true"` + + // The name of the deleted decoder manifest. + // + // Name is a required field + Name *string `locationName:"name" min:"1" type:"string" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeleteDecoderManifestOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeleteDecoderManifestOutput) GoString() string { + return s.String() +} + +// SetArn sets the Arn field's value. +func (s *DeleteDecoderManifestOutput) SetArn(v string) *DeleteDecoderManifestOutput { + s.Arn = &v + return s +} + +// SetName sets the Name field's value. +func (s *DeleteDecoderManifestOutput) SetName(v string) *DeleteDecoderManifestOutput { + s.Name = &v + return s +} + +type DeleteFleetInput struct { + _ struct{} `type:"structure"` + + // The ID of the fleet to delete. + // + // FleetId is a required field + FleetId *string `locationName:"fleetId" min:"1" type:"string" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeleteFleetInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeleteFleetInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *DeleteFleetInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "DeleteFleetInput"} + if s.FleetId == nil { + invalidParams.Add(request.NewErrParamRequired("FleetId")) + } + if s.FleetId != nil && len(*s.FleetId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("FleetId", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetFleetId sets the FleetId field's value. +func (s *DeleteFleetInput) SetFleetId(v string) *DeleteFleetInput { + s.FleetId = &v + return s +} + +type DeleteFleetOutput struct { + _ struct{} `type:"structure"` + + // The Amazon Resource Name (ARN) of the deleted fleet. + Arn *string `locationName:"arn" type:"string"` + + // The ID of the deleted fleet. + Id *string `locationName:"id" min:"1" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeleteFleetOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeleteFleetOutput) GoString() string { + return s.String() +} + +// SetArn sets the Arn field's value. +func (s *DeleteFleetOutput) SetArn(v string) *DeleteFleetOutput { + s.Arn = &v + return s +} + +// SetId sets the Id field's value. +func (s *DeleteFleetOutput) SetId(v string) *DeleteFleetOutput { + s.Id = &v + return s +} + +type DeleteModelManifestInput struct { + _ struct{} `type:"structure"` + + // The name of the model manifest to delete. + // + // Name is a required field + Name *string `locationName:"name" min:"1" type:"string" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeleteModelManifestInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeleteModelManifestInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *DeleteModelManifestInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "DeleteModelManifestInput"} + if s.Name == nil { + invalidParams.Add(request.NewErrParamRequired("Name")) + } + if s.Name != nil && len(*s.Name) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Name", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetName sets the Name field's value. +func (s *DeleteModelManifestInput) SetName(v string) *DeleteModelManifestInput { + s.Name = &v + return s +} + +type DeleteModelManifestOutput struct { + _ struct{} `type:"structure"` + + // The Amazon Resource Name (ARN) of the deleted model manifest. + // + // Arn is a required field + Arn *string `locationName:"arn" type:"string" required:"true"` + + // The name of the deleted model manifest. + // + // Name is a required field + Name *string `locationName:"name" min:"1" type:"string" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeleteModelManifestOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeleteModelManifestOutput) GoString() string { + return s.String() +} + +// SetArn sets the Arn field's value. +func (s *DeleteModelManifestOutput) SetArn(v string) *DeleteModelManifestOutput { + s.Arn = &v + return s +} + +// SetName sets the Name field's value. +func (s *DeleteModelManifestOutput) SetName(v string) *DeleteModelManifestOutput { + s.Name = &v + return s +} + +type DeleteSignalCatalogInput struct { + _ struct{} `type:"structure"` + + // The name of the signal catalog to delete. + // + // Name is a required field + Name *string `locationName:"name" min:"1" type:"string" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeleteSignalCatalogInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeleteSignalCatalogInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *DeleteSignalCatalogInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "DeleteSignalCatalogInput"} + if s.Name == nil { + invalidParams.Add(request.NewErrParamRequired("Name")) + } + if s.Name != nil && len(*s.Name) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Name", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetName sets the Name field's value. +func (s *DeleteSignalCatalogInput) SetName(v string) *DeleteSignalCatalogInput { + s.Name = &v + return s +} + +type DeleteSignalCatalogOutput struct { + _ struct{} `type:"structure"` + + // The Amazon Resource Name (ARN) of the deleted signal catalog. + // + // Arn is a required field + Arn *string `locationName:"arn" type:"string" required:"true"` + + // The name of the deleted signal catalog. + // + // Name is a required field + Name *string `locationName:"name" min:"1" type:"string" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeleteSignalCatalogOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeleteSignalCatalogOutput) GoString() string { + return s.String() +} + +// SetArn sets the Arn field's value. +func (s *DeleteSignalCatalogOutput) SetArn(v string) *DeleteSignalCatalogOutput { + s.Arn = &v + return s +} + +// SetName sets the Name field's value. +func (s *DeleteSignalCatalogOutput) SetName(v string) *DeleteSignalCatalogOutput { + s.Name = &v + return s +} + +type DeleteVehicleInput struct { + _ struct{} `type:"structure"` + + // The ID of the vehicle to delete. + // + // VehicleName is a required field + VehicleName *string `locationName:"vehicleName" min:"1" type:"string" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeleteVehicleInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeleteVehicleInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *DeleteVehicleInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "DeleteVehicleInput"} + if s.VehicleName == nil { + invalidParams.Add(request.NewErrParamRequired("VehicleName")) + } + if s.VehicleName != nil && len(*s.VehicleName) < 1 { + invalidParams.Add(request.NewErrParamMinLen("VehicleName", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetVehicleName sets the VehicleName field's value. +func (s *DeleteVehicleInput) SetVehicleName(v string) *DeleteVehicleInput { + s.VehicleName = &v + return s +} + +type DeleteVehicleOutput struct { + _ struct{} `type:"structure"` + + // The Amazon Resource Name (ARN) of the deleted vehicle. + // + // Arn is a required field + Arn *string `locationName:"arn" type:"string" required:"true"` + + // The ID of the deleted vehicle. + // + // VehicleName is a required field + VehicleName *string `locationName:"vehicleName" min:"1" type:"string" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeleteVehicleOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeleteVehicleOutput) GoString() string { + return s.String() +} + +// SetArn sets the Arn field's value. +func (s *DeleteVehicleOutput) SetArn(v string) *DeleteVehicleOutput { + s.Arn = &v + return s +} + +// SetVehicleName sets the VehicleName field's value. +func (s *DeleteVehicleOutput) SetVehicleName(v string) *DeleteVehicleOutput { + s.VehicleName = &v + return s +} + +type DisassociateVehicleFleetInput struct { + _ struct{} `type:"structure"` + + // The unique ID of a fleet. + // + // FleetId is a required field + FleetId *string `locationName:"fleetId" min:"1" type:"string" required:"true"` + + // The unique ID of the vehicle to disassociate from the fleet. + // + // VehicleName is a required field + VehicleName *string `locationName:"vehicleName" min:"1" type:"string" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DisassociateVehicleFleetInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DisassociateVehicleFleetInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *DisassociateVehicleFleetInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "DisassociateVehicleFleetInput"} + if s.FleetId == nil { + invalidParams.Add(request.NewErrParamRequired("FleetId")) + } + if s.FleetId != nil && len(*s.FleetId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("FleetId", 1)) + } + if s.VehicleName == nil { + invalidParams.Add(request.NewErrParamRequired("VehicleName")) + } + if s.VehicleName != nil && len(*s.VehicleName) < 1 { + invalidParams.Add(request.NewErrParamMinLen("VehicleName", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetFleetId sets the FleetId field's value. +func (s *DisassociateVehicleFleetInput) SetFleetId(v string) *DisassociateVehicleFleetInput { + s.FleetId = &v + return s +} + +// SetVehicleName sets the VehicleName field's value. +func (s *DisassociateVehicleFleetInput) SetVehicleName(v string) *DisassociateVehicleFleetInput { + s.VehicleName = &v + return s +} + +type DisassociateVehicleFleetOutput struct { + _ struct{} `type:"structure"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DisassociateVehicleFleetOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DisassociateVehicleFleetOutput) GoString() string { + return s.String() +} + +// Information about a fleet. +// +// You can use the API operation to return this information about multiple fleets. +type FleetSummary struct { + _ struct{} `type:"structure"` + + // The Amazon Resource Name (ARN) of the fleet. + // + // Arn is a required field + Arn *string `locationName:"arn" type:"string" required:"true"` + + // The time the fleet was created, in seconds since epoch (January 1, 1970 at + // midnight UTC time). + // + // CreationTime is a required field + CreationTime *time.Time `locationName:"creationTime" type:"timestamp" required:"true"` + + // A brief description of the fleet. + Description *string `locationName:"description" min:"1" type:"string"` + + // The unique ID of the fleet. + // + // Id is a required field + Id *string `locationName:"id" min:"1" type:"string" required:"true"` + + // The time the fleet was last updated in seconds since epoch (January 1, 1970 + // at midnight UTC time). + LastModificationTime *time.Time `locationName:"lastModificationTime" type:"timestamp"` + + // The ARN of the signal catalog associated with the fleet. + // + // SignalCatalogArn is a required field + SignalCatalogArn *string `locationName:"signalCatalogArn" type:"string" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s FleetSummary) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s FleetSummary) GoString() string { + return s.String() +} + +// SetArn sets the Arn field's value. +func (s *FleetSummary) SetArn(v string) *FleetSummary { + s.Arn = &v + return s +} + +// SetCreationTime sets the CreationTime field's value. +func (s *FleetSummary) SetCreationTime(v time.Time) *FleetSummary { + s.CreationTime = &v + return s +} + +// SetDescription sets the Description field's value. +func (s *FleetSummary) SetDescription(v string) *FleetSummary { + s.Description = &v + return s +} + +// SetId sets the Id field's value. +func (s *FleetSummary) SetId(v string) *FleetSummary { + s.Id = &v + return s +} + +// SetLastModificationTime sets the LastModificationTime field's value. +func (s *FleetSummary) SetLastModificationTime(v time.Time) *FleetSummary { + s.LastModificationTime = &v + return s +} + +// SetSignalCatalogArn sets the SignalCatalogArn field's value. +func (s *FleetSummary) SetSignalCatalogArn(v string) *FleetSummary { + s.SignalCatalogArn = &v + return s +} + +// Vehicle Signal Specification (VSS) is a precise language used to describe +// and model signals in vehicle networks. The JSON file collects signal specificiations +// in a VSS format. +type FormattedVss struct { + _ struct{} `type:"structure"` + + // Provides the VSS in JSON format. + VssJson *string `locationName:"vssJson" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s FormattedVss) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s FormattedVss) GoString() string { + return s.String() +} + +// SetVssJson sets the VssJson field's value. +func (s *FormattedVss) SetVssJson(v string) *FormattedVss { + s.VssJson = &v + return s +} + +type GetCampaignInput struct { + _ struct{} `type:"structure"` + + // The name of the campaign to retrieve information about. + // + // Name is a required field + Name *string `locationName:"name" min:"1" type:"string" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetCampaignInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetCampaignInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *GetCampaignInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "GetCampaignInput"} + if s.Name == nil { + invalidParams.Add(request.NewErrParamRequired("Name")) + } + if s.Name != nil && len(*s.Name) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Name", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetName sets the Name field's value. +func (s *GetCampaignInput) SetName(v string) *GetCampaignInput { + s.Name = &v + return s +} + +type GetCampaignOutput struct { + _ struct{} `type:"structure"` + + // The Amazon Resource Name (ARN) of the campaign. + Arn *string `locationName:"arn" type:"string"` + + // Information about the data collection scheme associated with the campaign. + CollectionScheme *CollectionScheme `locationName:"collectionScheme" type:"structure"` + + // Whether to compress signals before transmitting data to Amazon Web Services + // IoT FleetWise. If OFF is specified, the signals aren't compressed. If it's + // not specified, SNAPPY is used. + Compression *string `locationName:"compression" type:"string" enum:"Compression"` + + // The time the campaign was created in seconds since epoch (January 1, 1970 + // at midnight UTC time). + CreationTime *time.Time `locationName:"creationTime" type:"timestamp"` + + // A list of vehicle attributes associated with the campaign. + DataExtraDimensions []*string `locationName:"dataExtraDimensions" type:"list"` + + // The description of the campaign. + Description *string `locationName:"description" min:"1" type:"string"` + + // Option for a vehicle to send diagnostic trouble codes to Amazon Web Services + // IoT FleetWise. + DiagnosticsMode *string `locationName:"diagnosticsMode" type:"string" enum:"DiagnosticsMode"` + + // The time the campaign expires, in seconds since epoch (January 1, 1970 at + // midnight UTC time). Vehicle data won't be collected after the campaign expires. + ExpiryTime *time.Time `locationName:"expiryTime" type:"timestamp"` + + // The last time the campaign was modified. + LastModificationTime *time.Time `locationName:"lastModificationTime" type:"timestamp"` + + // The name of the campaign. + Name *string `locationName:"name" min:"1" type:"string"` + + // How long (in seconds) to collect raw data after a triggering event initiates + // the collection. + PostTriggerCollectionDuration *int64 `locationName:"postTriggerCollectionDuration" type:"long"` + + // A number indicating the priority of one campaign over another campaign for + // a certain vehicle or fleet. A campaign with the lowest value is deployed + // to vehicles before any other campaigns. + Priority *int64 `locationName:"priority" type:"integer"` + + // The ARN of a signal catalog. + SignalCatalogArn *string `locationName:"signalCatalogArn" type:"string"` + + // Information about a list of signals to collect data on. + SignalsToCollect []*SignalInformation `locationName:"signalsToCollect" type:"list"` + + // Whether to store collected data after a vehicle lost a connection with the + // cloud. After a connection is re-established, the data is automatically forwarded + // to Amazon Web Services IoT FleetWise. + SpoolingMode *string `locationName:"spoolingMode" type:"string" enum:"SpoolingMode"` + + // The time, in milliseconds, to deliver a campaign after it was approved. + StartTime *time.Time `locationName:"startTime" type:"timestamp"` + + // The state of the campaign. The status can be one of: CREATING, WAITING_FOR_APPROVAL, + // RUNNING, and SUSPENDED. + Status *string `locationName:"status" type:"string" enum:"CampaignStatus"` + + // The ARN of the vehicle or the fleet targeted by the campaign. + TargetArn *string `locationName:"targetArn" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetCampaignOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetCampaignOutput) GoString() string { + return s.String() +} + +// SetArn sets the Arn field's value. +func (s *GetCampaignOutput) SetArn(v string) *GetCampaignOutput { + s.Arn = &v + return s +} + +// SetCollectionScheme sets the CollectionScheme field's value. +func (s *GetCampaignOutput) SetCollectionScheme(v *CollectionScheme) *GetCampaignOutput { + s.CollectionScheme = v + return s +} + +// SetCompression sets the Compression field's value. +func (s *GetCampaignOutput) SetCompression(v string) *GetCampaignOutput { + s.Compression = &v + return s +} + +// SetCreationTime sets the CreationTime field's value. +func (s *GetCampaignOutput) SetCreationTime(v time.Time) *GetCampaignOutput { + s.CreationTime = &v + return s +} + +// SetDataExtraDimensions sets the DataExtraDimensions field's value. +func (s *GetCampaignOutput) SetDataExtraDimensions(v []*string) *GetCampaignOutput { + s.DataExtraDimensions = v + return s +} + +// SetDescription sets the Description field's value. +func (s *GetCampaignOutput) SetDescription(v string) *GetCampaignOutput { + s.Description = &v + return s +} + +// SetDiagnosticsMode sets the DiagnosticsMode field's value. +func (s *GetCampaignOutput) SetDiagnosticsMode(v string) *GetCampaignOutput { + s.DiagnosticsMode = &v + return s +} + +// SetExpiryTime sets the ExpiryTime field's value. +func (s *GetCampaignOutput) SetExpiryTime(v time.Time) *GetCampaignOutput { + s.ExpiryTime = &v + return s +} + +// SetLastModificationTime sets the LastModificationTime field's value. +func (s *GetCampaignOutput) SetLastModificationTime(v time.Time) *GetCampaignOutput { + s.LastModificationTime = &v + return s +} + +// SetName sets the Name field's value. +func (s *GetCampaignOutput) SetName(v string) *GetCampaignOutput { + s.Name = &v + return s +} + +// SetPostTriggerCollectionDuration sets the PostTriggerCollectionDuration field's value. +func (s *GetCampaignOutput) SetPostTriggerCollectionDuration(v int64) *GetCampaignOutput { + s.PostTriggerCollectionDuration = &v + return s +} + +// SetPriority sets the Priority field's value. +func (s *GetCampaignOutput) SetPriority(v int64) *GetCampaignOutput { + s.Priority = &v + return s +} + +// SetSignalCatalogArn sets the SignalCatalogArn field's value. +func (s *GetCampaignOutput) SetSignalCatalogArn(v string) *GetCampaignOutput { + s.SignalCatalogArn = &v + return s +} + +// SetSignalsToCollect sets the SignalsToCollect field's value. +func (s *GetCampaignOutput) SetSignalsToCollect(v []*SignalInformation) *GetCampaignOutput { + s.SignalsToCollect = v + return s +} + +// SetSpoolingMode sets the SpoolingMode field's value. +func (s *GetCampaignOutput) SetSpoolingMode(v string) *GetCampaignOutput { + s.SpoolingMode = &v + return s +} + +// SetStartTime sets the StartTime field's value. +func (s *GetCampaignOutput) SetStartTime(v time.Time) *GetCampaignOutput { + s.StartTime = &v + return s +} + +// SetStatus sets the Status field's value. +func (s *GetCampaignOutput) SetStatus(v string) *GetCampaignOutput { + s.Status = &v + return s +} + +// SetTargetArn sets the TargetArn field's value. +func (s *GetCampaignOutput) SetTargetArn(v string) *GetCampaignOutput { + s.TargetArn = &v + return s +} + +type GetDecoderManifestInput struct { + _ struct{} `type:"structure"` + + // The name of the decoder manifest to retrieve information about. + // + // Name is a required field + Name *string `locationName:"name" min:"1" type:"string" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetDecoderManifestInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetDecoderManifestInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *GetDecoderManifestInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "GetDecoderManifestInput"} + if s.Name == nil { + invalidParams.Add(request.NewErrParamRequired("Name")) + } + if s.Name != nil && len(*s.Name) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Name", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetName sets the Name field's value. +func (s *GetDecoderManifestInput) SetName(v string) *GetDecoderManifestInput { + s.Name = &v + return s +} + +type GetDecoderManifestOutput struct { + _ struct{} `type:"structure"` + + // The Amazon Resource Name (ARN) of the decoder manifest. + // + // Arn is a required field + Arn *string `locationName:"arn" type:"string" required:"true"` + + // The time the decoder manifest was created in seconds since epoch (January + // 1, 1970 at midnight UTC time). + // + // CreationTime is a required field + CreationTime *time.Time `locationName:"creationTime" type:"timestamp" required:"true"` + + // A brief description of the decoder manifest. + Description *string `locationName:"description" min:"1" type:"string"` + + // The time the decoder manifest was last updated in seconds since epoch (January + // 1, 1970 at midnight UTC time). + // + // LastModificationTime is a required field + LastModificationTime *time.Time `locationName:"lastModificationTime" type:"timestamp" required:"true"` + + // The ARN of a vehicle model (model manifest) associated with the decoder manifest. + ModelManifestArn *string `locationName:"modelManifestArn" type:"string"` + + // The name of the decoder manifest. + // + // Name is a required field + Name *string `locationName:"name" type:"string" required:"true"` + + // The state of the decoder manifest. If the status is ACTIVE, the decoder manifest + // can't be edited. If the status is marked DRAFT, you can edit the decoder + // manifest. + Status *string `locationName:"status" type:"string" enum:"ManifestStatus"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetDecoderManifestOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetDecoderManifestOutput) GoString() string { + return s.String() +} + +// SetArn sets the Arn field's value. +func (s *GetDecoderManifestOutput) SetArn(v string) *GetDecoderManifestOutput { + s.Arn = &v + return s +} + +// SetCreationTime sets the CreationTime field's value. +func (s *GetDecoderManifestOutput) SetCreationTime(v time.Time) *GetDecoderManifestOutput { + s.CreationTime = &v + return s +} + +// SetDescription sets the Description field's value. +func (s *GetDecoderManifestOutput) SetDescription(v string) *GetDecoderManifestOutput { + s.Description = &v + return s +} + +// SetLastModificationTime sets the LastModificationTime field's value. +func (s *GetDecoderManifestOutput) SetLastModificationTime(v time.Time) *GetDecoderManifestOutput { + s.LastModificationTime = &v + return s +} + +// SetModelManifestArn sets the ModelManifestArn field's value. +func (s *GetDecoderManifestOutput) SetModelManifestArn(v string) *GetDecoderManifestOutput { + s.ModelManifestArn = &v + return s +} + +// SetName sets the Name field's value. +func (s *GetDecoderManifestOutput) SetName(v string) *GetDecoderManifestOutput { + s.Name = &v + return s +} + +// SetStatus sets the Status field's value. +func (s *GetDecoderManifestOutput) SetStatus(v string) *GetDecoderManifestOutput { + s.Status = &v + return s +} + +type GetFleetInput struct { + _ struct{} `type:"structure"` + + // The ID of the fleet to retrieve information about. + // + // FleetId is a required field + FleetId *string `locationName:"fleetId" min:"1" type:"string" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetFleetInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetFleetInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *GetFleetInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "GetFleetInput"} + if s.FleetId == nil { + invalidParams.Add(request.NewErrParamRequired("FleetId")) + } + if s.FleetId != nil && len(*s.FleetId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("FleetId", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetFleetId sets the FleetId field's value. +func (s *GetFleetInput) SetFleetId(v string) *GetFleetInput { + s.FleetId = &v + return s +} + +type GetFleetOutput struct { + _ struct{} `type:"structure"` + + // The Amazon Resource Name (ARN) of the fleet. + // + // Arn is a required field + Arn *string `locationName:"arn" type:"string" required:"true"` + + // The time the fleet was created in seconds since epoch (January 1, 1970 at + // midnight UTC time). + // + // CreationTime is a required field + CreationTime *time.Time `locationName:"creationTime" type:"timestamp" required:"true"` + + // A brief description of the fleet. + Description *string `locationName:"description" min:"1" type:"string"` + + // The ID of the fleet. + // + // Id is a required field + Id *string `locationName:"id" min:"1" type:"string" required:"true"` + + // The time the fleet was last updated, in seconds since epoch (January 1, 1970 + // at midnight UTC time). + // + // LastModificationTime is a required field + LastModificationTime *time.Time `locationName:"lastModificationTime" type:"timestamp" required:"true"` + + // The ARN of a signal catalog associated with the fleet. + // + // SignalCatalogArn is a required field + SignalCatalogArn *string `locationName:"signalCatalogArn" type:"string" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetFleetOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetFleetOutput) GoString() string { + return s.String() +} + +// SetArn sets the Arn field's value. +func (s *GetFleetOutput) SetArn(v string) *GetFleetOutput { + s.Arn = &v + return s +} + +// SetCreationTime sets the CreationTime field's value. +func (s *GetFleetOutput) SetCreationTime(v time.Time) *GetFleetOutput { + s.CreationTime = &v + return s +} + +// SetDescription sets the Description field's value. +func (s *GetFleetOutput) SetDescription(v string) *GetFleetOutput { + s.Description = &v + return s +} + +// SetId sets the Id field's value. +func (s *GetFleetOutput) SetId(v string) *GetFleetOutput { + s.Id = &v + return s +} + +// SetLastModificationTime sets the LastModificationTime field's value. +func (s *GetFleetOutput) SetLastModificationTime(v time.Time) *GetFleetOutput { + s.LastModificationTime = &v + return s +} + +// SetSignalCatalogArn sets the SignalCatalogArn field's value. +func (s *GetFleetOutput) SetSignalCatalogArn(v string) *GetFleetOutput { + s.SignalCatalogArn = &v + return s +} + +type GetLoggingOptionsInput struct { + _ struct{} `type:"structure"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetLoggingOptionsInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetLoggingOptionsInput) GoString() string { + return s.String() +} + +type GetLoggingOptionsOutput struct { + _ struct{} `type:"structure"` + + // Returns information about log delivery to Amazon CloudWatch Logs. + // + // CloudWatchLogDelivery is a required field + CloudWatchLogDelivery *CloudWatchLogDeliveryOptions `locationName:"cloudWatchLogDelivery" type:"structure" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetLoggingOptionsOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetLoggingOptionsOutput) GoString() string { + return s.String() +} + +// SetCloudWatchLogDelivery sets the CloudWatchLogDelivery field's value. +func (s *GetLoggingOptionsOutput) SetCloudWatchLogDelivery(v *CloudWatchLogDeliveryOptions) *GetLoggingOptionsOutput { + s.CloudWatchLogDelivery = v + return s +} + +type GetModelManifestInput struct { + _ struct{} `type:"structure"` + + // The name of the vehicle model to retrieve information about. + // + // Name is a required field + Name *string `locationName:"name" min:"1" type:"string" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetModelManifestInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetModelManifestInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *GetModelManifestInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "GetModelManifestInput"} + if s.Name == nil { + invalidParams.Add(request.NewErrParamRequired("Name")) + } + if s.Name != nil && len(*s.Name) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Name", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetName sets the Name field's value. +func (s *GetModelManifestInput) SetName(v string) *GetModelManifestInput { + s.Name = &v + return s +} + +type GetModelManifestOutput struct { + _ struct{} `type:"structure"` + + // The Amazon Resource Name (ARN) of the vehicle model. + // + // Arn is a required field + Arn *string `locationName:"arn" type:"string" required:"true"` + + // The time the vehicle model was created, in seconds since epoch (January 1, + // 1970 at midnight UTC time). + // + // CreationTime is a required field + CreationTime *time.Time `locationName:"creationTime" type:"timestamp" required:"true"` + + // A brief description of the vehicle model. + Description *string `locationName:"description" min:"1" type:"string"` + + // The last time the vehicle model was modified. + // + // LastModificationTime is a required field + LastModificationTime *time.Time `locationName:"lastModificationTime" type:"timestamp" required:"true"` + + // The name of the vehicle model. + // + // Name is a required field + Name *string `locationName:"name" min:"1" type:"string" required:"true"` + + // The ARN of the signal catalog associated with the vehicle model. + SignalCatalogArn *string `locationName:"signalCatalogArn" type:"string"` + + // The state of the vehicle model. If the status is ACTIVE, the vehicle model + // can't be edited. You can edit the vehicle model if the status is marked DRAFT. + Status *string `locationName:"status" type:"string" enum:"ManifestStatus"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetModelManifestOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetModelManifestOutput) GoString() string { + return s.String() +} + +// SetArn sets the Arn field's value. +func (s *GetModelManifestOutput) SetArn(v string) *GetModelManifestOutput { + s.Arn = &v + return s +} + +// SetCreationTime sets the CreationTime field's value. +func (s *GetModelManifestOutput) SetCreationTime(v time.Time) *GetModelManifestOutput { + s.CreationTime = &v + return s +} + +// SetDescription sets the Description field's value. +func (s *GetModelManifestOutput) SetDescription(v string) *GetModelManifestOutput { + s.Description = &v + return s +} + +// SetLastModificationTime sets the LastModificationTime field's value. +func (s *GetModelManifestOutput) SetLastModificationTime(v time.Time) *GetModelManifestOutput { + s.LastModificationTime = &v + return s +} + +// SetName sets the Name field's value. +func (s *GetModelManifestOutput) SetName(v string) *GetModelManifestOutput { + s.Name = &v + return s +} + +// SetSignalCatalogArn sets the SignalCatalogArn field's value. +func (s *GetModelManifestOutput) SetSignalCatalogArn(v string) *GetModelManifestOutput { + s.SignalCatalogArn = &v + return s +} + +// SetStatus sets the Status field's value. +func (s *GetModelManifestOutput) SetStatus(v string) *GetModelManifestOutput { + s.Status = &v + return s +} + +type GetRegisterAccountStatusInput struct { + _ struct{} `type:"structure"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetRegisterAccountStatusInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetRegisterAccountStatusInput) GoString() string { + return s.String() +} + +type GetRegisterAccountStatusOutput struct { + _ struct{} `type:"structure"` + + // The status of registering your account and resources. The status can be one + // of: + // + // * REGISTRATION_SUCCESS - The Amazon Web Services resource is successfully + // registered. + // + // * REGISTRATION_PENDING - Amazon Web Services IoT FleetWise is processing + // the registration request. This process takes approximately five minutes + // to complete. + // + // * REGISTRATION_FAILURE - Amazon Web Services IoT FleetWise can't register + // the AWS resource. Try again later. + // + // AccountStatus is a required field + AccountStatus *string `locationName:"accountStatus" type:"string" required:"true" enum:"RegistrationStatus"` + + // The time the account was registered, in seconds since epoch (January 1, 1970 + // at midnight UTC time). + // + // CreationTime is a required field + CreationTime *time.Time `locationName:"creationTime" type:"timestamp" required:"true"` + + // The unique ID of the Amazon Web Services account, provided at account creation. + // + // CustomerAccountId is a required field + CustomerAccountId *string `locationName:"customerAccountId" type:"string" required:"true"` + + // Information about the registered IAM resources or errors, if any. + // + // IamRegistrationResponse is a required field + IamRegistrationResponse *IamRegistrationResponse `locationName:"iamRegistrationResponse" type:"structure" required:"true"` + + // The time this registration was last updated, in seconds since epoch (January + // 1, 1970 at midnight UTC time). + // + // LastModificationTime is a required field + LastModificationTime *time.Time `locationName:"lastModificationTime" type:"timestamp" required:"true"` + + // Information about the registered Amazon Timestream resources or errors, if + // any. + // + // TimestreamRegistrationResponse is a required field + TimestreamRegistrationResponse *TimestreamRegistrationResponse `locationName:"timestreamRegistrationResponse" type:"structure" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetRegisterAccountStatusOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetRegisterAccountStatusOutput) GoString() string { + return s.String() +} + +// SetAccountStatus sets the AccountStatus field's value. +func (s *GetRegisterAccountStatusOutput) SetAccountStatus(v string) *GetRegisterAccountStatusOutput { + s.AccountStatus = &v + return s +} + +// SetCreationTime sets the CreationTime field's value. +func (s *GetRegisterAccountStatusOutput) SetCreationTime(v time.Time) *GetRegisterAccountStatusOutput { + s.CreationTime = &v + return s +} + +// SetCustomerAccountId sets the CustomerAccountId field's value. +func (s *GetRegisterAccountStatusOutput) SetCustomerAccountId(v string) *GetRegisterAccountStatusOutput { + s.CustomerAccountId = &v + return s +} + +// SetIamRegistrationResponse sets the IamRegistrationResponse field's value. +func (s *GetRegisterAccountStatusOutput) SetIamRegistrationResponse(v *IamRegistrationResponse) *GetRegisterAccountStatusOutput { + s.IamRegistrationResponse = v + return s +} + +// SetLastModificationTime sets the LastModificationTime field's value. +func (s *GetRegisterAccountStatusOutput) SetLastModificationTime(v time.Time) *GetRegisterAccountStatusOutput { + s.LastModificationTime = &v + return s +} + +// SetTimestreamRegistrationResponse sets the TimestreamRegistrationResponse field's value. +func (s *GetRegisterAccountStatusOutput) SetTimestreamRegistrationResponse(v *TimestreamRegistrationResponse) *GetRegisterAccountStatusOutput { + s.TimestreamRegistrationResponse = v + return s +} + +type GetSignalCatalogInput struct { + _ struct{} `type:"structure"` + + // The name of the signal catalog to retrieve information about. + // + // Name is a required field + Name *string `locationName:"name" min:"1" type:"string" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetSignalCatalogInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetSignalCatalogInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *GetSignalCatalogInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "GetSignalCatalogInput"} + if s.Name == nil { + invalidParams.Add(request.NewErrParamRequired("Name")) + } + if s.Name != nil && len(*s.Name) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Name", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetName sets the Name field's value. +func (s *GetSignalCatalogInput) SetName(v string) *GetSignalCatalogInput { + s.Name = &v + return s +} + +type GetSignalCatalogOutput struct { + _ struct{} `type:"structure"` + + // The Amazon Resource Name (ARN) of the signal catalog. + // + // Arn is a required field + Arn *string `locationName:"arn" type:"string" required:"true"` + + // The time the signal catalog was created in seconds since epoch (January 1, + // 1970 at midnight UTC time). + // + // CreationTime is a required field + CreationTime *time.Time `locationName:"creationTime" type:"timestamp" required:"true"` + + // A brief description of the signal catalog. + Description *string `locationName:"description" min:"1" type:"string"` + + // The last time the signal catalog was modified. + // + // LastModificationTime is a required field + LastModificationTime *time.Time `locationName:"lastModificationTime" type:"timestamp" required:"true"` + + // The name of the signal catalog. + // + // Name is a required field + Name *string `locationName:"name" min:"1" type:"string" required:"true"` + + // The total number of network nodes specified in a signal catalog. + NodeCounts *NodeCounts `locationName:"nodeCounts" type:"structure"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetSignalCatalogOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetSignalCatalogOutput) GoString() string { + return s.String() +} + +// SetArn sets the Arn field's value. +func (s *GetSignalCatalogOutput) SetArn(v string) *GetSignalCatalogOutput { + s.Arn = &v + return s +} + +// SetCreationTime sets the CreationTime field's value. +func (s *GetSignalCatalogOutput) SetCreationTime(v time.Time) *GetSignalCatalogOutput { + s.CreationTime = &v + return s +} + +// SetDescription sets the Description field's value. +func (s *GetSignalCatalogOutput) SetDescription(v string) *GetSignalCatalogOutput { + s.Description = &v + return s +} + +// SetLastModificationTime sets the LastModificationTime field's value. +func (s *GetSignalCatalogOutput) SetLastModificationTime(v time.Time) *GetSignalCatalogOutput { + s.LastModificationTime = &v + return s +} + +// SetName sets the Name field's value. +func (s *GetSignalCatalogOutput) SetName(v string) *GetSignalCatalogOutput { + s.Name = &v + return s +} + +// SetNodeCounts sets the NodeCounts field's value. +func (s *GetSignalCatalogOutput) SetNodeCounts(v *NodeCounts) *GetSignalCatalogOutput { + s.NodeCounts = v + return s +} + +type GetVehicleInput struct { + _ struct{} `type:"structure"` + + // The ID of the vehicle to retrieve information about. + // + // VehicleName is a required field + VehicleName *string `locationName:"vehicleName" min:"1" type:"string" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetVehicleInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetVehicleInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *GetVehicleInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "GetVehicleInput"} + if s.VehicleName == nil { + invalidParams.Add(request.NewErrParamRequired("VehicleName")) + } + if s.VehicleName != nil && len(*s.VehicleName) < 1 { + invalidParams.Add(request.NewErrParamMinLen("VehicleName", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetVehicleName sets the VehicleName field's value. +func (s *GetVehicleInput) SetVehicleName(v string) *GetVehicleInput { + s.VehicleName = &v + return s +} + +type GetVehicleOutput struct { + _ struct{} `type:"structure"` + + // The Amazon Resource Name (ARN) of the vehicle to retrieve information about. + Arn *string `locationName:"arn" type:"string"` + + // Static information about a vehicle in a key-value pair. For example: + // + // "engineType" : "1.3 L R2" + Attributes map[string]*string `locationName:"attributes" type:"map"` + + // The time the vehicle was created in seconds since epoch (January 1, 1970 + // at midnight UTC time). + CreationTime *time.Time `locationName:"creationTime" type:"timestamp"` + + // The ARN of a decoder manifest associated with the vehicle. + DecoderManifestArn *string `locationName:"decoderManifestArn" type:"string"` + + // The time the vehicle was last updated in seconds since epoch (January 1, + // 1970 at midnight UTC time). + LastModificationTime *time.Time `locationName:"lastModificationTime" type:"timestamp"` + + // The ARN of a vehicle model (model manifest) associated with the vehicle. + ModelManifestArn *string `locationName:"modelManifestArn" type:"string"` + + // The ID of the vehicle. + VehicleName *string `locationName:"vehicleName" min:"1" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetVehicleOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetVehicleOutput) GoString() string { + return s.String() +} + +// SetArn sets the Arn field's value. +func (s *GetVehicleOutput) SetArn(v string) *GetVehicleOutput { + s.Arn = &v + return s +} + +// SetAttributes sets the Attributes field's value. +func (s *GetVehicleOutput) SetAttributes(v map[string]*string) *GetVehicleOutput { + s.Attributes = v + return s +} + +// SetCreationTime sets the CreationTime field's value. +func (s *GetVehicleOutput) SetCreationTime(v time.Time) *GetVehicleOutput { + s.CreationTime = &v + return s +} + +// SetDecoderManifestArn sets the DecoderManifestArn field's value. +func (s *GetVehicleOutput) SetDecoderManifestArn(v string) *GetVehicleOutput { + s.DecoderManifestArn = &v + return s +} + +// SetLastModificationTime sets the LastModificationTime field's value. +func (s *GetVehicleOutput) SetLastModificationTime(v time.Time) *GetVehicleOutput { + s.LastModificationTime = &v + return s +} + +// SetModelManifestArn sets the ModelManifestArn field's value. +func (s *GetVehicleOutput) SetModelManifestArn(v string) *GetVehicleOutput { + s.ModelManifestArn = &v + return s +} + +// SetVehicleName sets the VehicleName field's value. +func (s *GetVehicleOutput) SetVehicleName(v string) *GetVehicleOutput { + s.VehicleName = &v + return s +} + +type GetVehicleStatusInput struct { + _ struct{} `type:"structure"` + + // The maximum number of items to return, between 1 and 100, inclusive. + MaxResults *int64 `locationName:"maxResults" min:"1" type:"integer"` + + // A pagination token for the next set of results. + // + // If the results of a search are large, only a portion of the results are returned, + // and a nextToken pagination token is returned in the response. To retrieve + // the next set of results, reissue the search request and include the returned + // token. When all results have been returned, the response does not contain + // a pagination token value. + NextToken *string `locationName:"nextToken" min:"1" type:"string"` + + // The ID of the vehicle to retrieve information about. + // + // VehicleName is a required field + VehicleName *string `locationName:"vehicleName" min:"1" type:"string" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetVehicleStatusInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetVehicleStatusInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *GetVehicleStatusInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "GetVehicleStatusInput"} + if s.MaxResults != nil && *s.MaxResults < 1 { + invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1)) + } + if s.NextToken != nil && len(*s.NextToken) < 1 { + invalidParams.Add(request.NewErrParamMinLen("NextToken", 1)) + } + if s.VehicleName == nil { + invalidParams.Add(request.NewErrParamRequired("VehicleName")) + } + if s.VehicleName != nil && len(*s.VehicleName) < 1 { + invalidParams.Add(request.NewErrParamMinLen("VehicleName", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetMaxResults sets the MaxResults field's value. +func (s *GetVehicleStatusInput) SetMaxResults(v int64) *GetVehicleStatusInput { + s.MaxResults = &v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *GetVehicleStatusInput) SetNextToken(v string) *GetVehicleStatusInput { + s.NextToken = &v + return s +} + +// SetVehicleName sets the VehicleName field's value. +func (s *GetVehicleStatusInput) SetVehicleName(v string) *GetVehicleStatusInput { + s.VehicleName = &v + return s +} + +type GetVehicleStatusOutput struct { + _ struct{} `type:"structure"` + + // Lists information about the state of the vehicle with deployed campaigns. + Campaigns []*VehicleStatus `locationName:"campaigns" type:"list"` + + // The token to retrieve the next set of results, or null if there are no more + // results. + NextToken *string `locationName:"nextToken" min:"1" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetVehicleStatusOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetVehicleStatusOutput) GoString() string { + return s.String() +} + +// SetCampaigns sets the Campaigns field's value. +func (s *GetVehicleStatusOutput) SetCampaigns(v []*VehicleStatus) *GetVehicleStatusOutput { + s.Campaigns = v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *GetVehicleStatusOutput) SetNextToken(v string) *GetVehicleStatusOutput { + s.NextToken = &v + return s +} + +// Information about registering an Identity and Access Management (IAM) resource +// so Amazon Web Services IoT FleetWise edge agent software can transfer your +// vehicle data to Amazon Timestream. +type IamRegistrationResponse struct { + _ struct{} `type:"structure"` + + // A message associated with a registration error. + ErrorMessage *string `locationName:"errorMessage" type:"string"` + + // The status of registering your IAM resource. The status can be one of REGISTRATION_SUCCESS, + // REGISTRATION_PENDING, REGISTRATION_FAILURE. + // + // RegistrationStatus is a required field + RegistrationStatus *string `locationName:"registrationStatus" type:"string" required:"true" enum:"RegistrationStatus"` + + // The Amazon Resource Name (ARN) of the IAM role to register. + // + // RoleArn is a required field + RoleArn *string `locationName:"roleArn" type:"string" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s IamRegistrationResponse) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s IamRegistrationResponse) GoString() string { + return s.String() +} + +// SetErrorMessage sets the ErrorMessage field's value. +func (s *IamRegistrationResponse) SetErrorMessage(v string) *IamRegistrationResponse { + s.ErrorMessage = &v + return s +} + +// SetRegistrationStatus sets the RegistrationStatus field's value. +func (s *IamRegistrationResponse) SetRegistrationStatus(v string) *IamRegistrationResponse { + s.RegistrationStatus = &v + return s +} + +// SetRoleArn sets the RoleArn field's value. +func (s *IamRegistrationResponse) SetRoleArn(v string) *IamRegistrationResponse { + s.RoleArn = &v + return s +} + +// The IAM resource that enables Amazon Web Services IoT FleetWise edge agent +// software to send data to Amazon Timestream. +// +// For more information, see IAM roles (https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles.html) +// in the Identity and Access Management User Guide. +type IamResources struct { + _ struct{} `type:"structure"` + + // The Amazon Resource Name (ARN) of the IAM resource that allows Amazon Web + // Services IoT FleetWise to send data to Amazon Timestream. For example, arn:aws:iam::123456789012:role/SERVICE-ROLE-ARN. + // + // RoleArn is a required field + RoleArn *string `locationName:"roleArn" min:"20" type:"string" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s IamResources) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s IamResources) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *IamResources) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "IamResources"} + if s.RoleArn == nil { + invalidParams.Add(request.NewErrParamRequired("RoleArn")) + } + if s.RoleArn != nil && len(*s.RoleArn) < 20 { + invalidParams.Add(request.NewErrParamMinLen("RoleArn", 20)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetRoleArn sets the RoleArn field's value. +func (s *IamResources) SetRoleArn(v string) *IamResources { + s.RoleArn = &v + return s +} + +type ImportDecoderManifestInput struct { + _ struct{} `type:"structure"` + + // The name of the decoder manifest to import. + // + // Name is a required field + Name *string `locationName:"name" min:"1" type:"string" required:"true"` + + // The file to load into an Amazon Web Services account. + // + // NetworkFileDefinitions is a required field + NetworkFileDefinitions []*NetworkFileDefinition `locationName:"networkFileDefinitions" type:"list" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ImportDecoderManifestInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ImportDecoderManifestInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *ImportDecoderManifestInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ImportDecoderManifestInput"} + if s.Name == nil { + invalidParams.Add(request.NewErrParamRequired("Name")) + } + if s.Name != nil && len(*s.Name) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Name", 1)) + } + if s.NetworkFileDefinitions == nil { + invalidParams.Add(request.NewErrParamRequired("NetworkFileDefinitions")) + } + if s.NetworkFileDefinitions != nil { + for i, v := range s.NetworkFileDefinitions { + if v == nil { + continue + } + if err := v.Validate(); err != nil { + invalidParams.AddNested(fmt.Sprintf("%s[%v]", "NetworkFileDefinitions", i), err.(request.ErrInvalidParams)) + } + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetName sets the Name field's value. +func (s *ImportDecoderManifestInput) SetName(v string) *ImportDecoderManifestInput { + s.Name = &v + return s +} + +// SetNetworkFileDefinitions sets the NetworkFileDefinitions field's value. +func (s *ImportDecoderManifestInput) SetNetworkFileDefinitions(v []*NetworkFileDefinition) *ImportDecoderManifestInput { + s.NetworkFileDefinitions = v + return s +} + +type ImportDecoderManifestOutput struct { + _ struct{} `type:"structure"` + + // The Amazon Resource Name (ARN) of the decoder manifest that was imported. + // + // Arn is a required field + Arn *string `locationName:"arn" type:"string" required:"true"` + + // The name of the imported decoder manifest. + // + // Name is a required field + Name *string `locationName:"name" min:"1" type:"string" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ImportDecoderManifestOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ImportDecoderManifestOutput) GoString() string { + return s.String() +} + +// SetArn sets the Arn field's value. +func (s *ImportDecoderManifestOutput) SetArn(v string) *ImportDecoderManifestOutput { + s.Arn = &v + return s +} + +// SetName sets the Name field's value. +func (s *ImportDecoderManifestOutput) SetName(v string) *ImportDecoderManifestOutput { + s.Name = &v + return s +} + +type ImportSignalCatalogInput struct { + _ struct{} `type:"structure"` + + // A brief description of the signal catalog. + Description *string `locationName:"description" min:"1" type:"string"` + + // The name of the signal catalog to import. + // + // Name is a required field + Name *string `locationName:"name" min:"1" type:"string" required:"true"` + + // Metadata that can be used to manage the signal catalog. + Tags []*Tag `locationName:"tags" type:"list"` + + // The contents of the Vehicle Signal Specification (VSS) configuration. VSS + // is a precise language used to describe and model signals in vehicle networks. + Vss *FormattedVss `locationName:"vss" type:"structure"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ImportSignalCatalogInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ImportSignalCatalogInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *ImportSignalCatalogInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ImportSignalCatalogInput"} + if s.Description != nil && len(*s.Description) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Description", 1)) + } + if s.Name == nil { + invalidParams.Add(request.NewErrParamRequired("Name")) + } + if s.Name != nil && len(*s.Name) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Name", 1)) + } + if s.Tags != nil { + for i, v := range s.Tags { + if v == nil { + continue + } + if err := v.Validate(); err != nil { + invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Tags", i), err.(request.ErrInvalidParams)) + } + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetDescription sets the Description field's value. +func (s *ImportSignalCatalogInput) SetDescription(v string) *ImportSignalCatalogInput { + s.Description = &v + return s +} + +// SetName sets the Name field's value. +func (s *ImportSignalCatalogInput) SetName(v string) *ImportSignalCatalogInput { + s.Name = &v + return s +} + +// SetTags sets the Tags field's value. +func (s *ImportSignalCatalogInput) SetTags(v []*Tag) *ImportSignalCatalogInput { + s.Tags = v + return s +} + +// SetVss sets the Vss field's value. +func (s *ImportSignalCatalogInput) SetVss(v *FormattedVss) *ImportSignalCatalogInput { + s.Vss = v + return s +} + +type ImportSignalCatalogOutput struct { + _ struct{} `type:"structure"` + + // The Amazon Resource Name (ARN) of the imported signal catalog. + // + // Arn is a required field + Arn *string `locationName:"arn" type:"string" required:"true"` + + // The name of the imported signal catalog. + // + // Name is a required field + Name *string `locationName:"name" min:"1" type:"string" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ImportSignalCatalogOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ImportSignalCatalogOutput) GoString() string { + return s.String() +} + +// SetArn sets the Arn field's value. +func (s *ImportSignalCatalogOutput) SetArn(v string) *ImportSignalCatalogOutput { + s.Arn = &v + return s +} + +// SetName sets the Name field's value. +func (s *ImportSignalCatalogOutput) SetName(v string) *ImportSignalCatalogOutput { + s.Name = &v + return s +} + +// The request couldn't be completed because the server temporarily failed. +type InternalServerException struct { + _ struct{} `type:"structure"` + RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` + + Message_ *string `locationName:"message" type:"string"` + + // The number of seconds to wait before retrying the command. + RetryAfterSeconds *int64 `locationName:"retryAfterSeconds" type:"integer"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s InternalServerException) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s InternalServerException) GoString() string { + return s.String() +} + +func newErrorInternalServerException(v protocol.ResponseMetadata) error { + return &InternalServerException{ + RespMetadata: v, + } +} + +// Code returns the exception type name. +func (s *InternalServerException) Code() string { + return "InternalServerException" +} + +// Message returns the exception's message. +func (s *InternalServerException) Message() string { + if s.Message_ != nil { + return *s.Message_ + } + return "" +} + +// OrigErr always returns nil, satisfies awserr.Error interface. +func (s *InternalServerException) OrigErr() error { + return nil +} + +func (s *InternalServerException) Error() string { + return fmt.Sprintf("%s: %s\n%s", s.Code(), s.Message(), s.String()) +} + +// Status code returns the HTTP status code for the request's response error. +func (s *InternalServerException) StatusCode() int { + return s.RespMetadata.StatusCode +} + +// RequestID returns the service's response RequestID for request. +func (s *InternalServerException) RequestID() string { + return s.RespMetadata.RequestID +} + +// A reason a vehicle network interface isn't valid. +type InvalidNetworkInterface struct { + _ struct{} `type:"structure"` + + // The ID of the interface that isn't valid. + InterfaceId *string `locationName:"interfaceId" min:"1" type:"string"` + + // A message about why the interface isn't valid. + Reason *string `locationName:"reason" type:"string" enum:"NetworkInterfaceFailureReason"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s InvalidNetworkInterface) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s InvalidNetworkInterface) GoString() string { + return s.String() +} + +// SetInterfaceId sets the InterfaceId field's value. +func (s *InvalidNetworkInterface) SetInterfaceId(v string) *InvalidNetworkInterface { + s.InterfaceId = &v + return s +} + +// SetReason sets the Reason field's value. +func (s *InvalidNetworkInterface) SetReason(v string) *InvalidNetworkInterface { + s.Reason = &v + return s +} + +// The specified node type doesn't match the expected node type for a node. +// You can specify the node type as branch, sensor, actuator, or attribute. +type InvalidNodeException struct { + _ struct{} `type:"structure"` + RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` + + // The specified node type isn't valid. + InvalidNodes []*Node `locationName:"invalidNodes" type:"list"` + + Message_ *string `locationName:"message" type:"string"` + + // The reason the node validation failed. + Reason *string `locationName:"reason" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s InvalidNodeException) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s InvalidNodeException) GoString() string { + return s.String() +} + +func newErrorInvalidNodeException(v protocol.ResponseMetadata) error { + return &InvalidNodeException{ + RespMetadata: v, + } +} + +// Code returns the exception type name. +func (s *InvalidNodeException) Code() string { + return "InvalidNodeException" +} + +// Message returns the exception's message. +func (s *InvalidNodeException) Message() string { + if s.Message_ != nil { + return *s.Message_ + } + return "" +} + +// OrigErr always returns nil, satisfies awserr.Error interface. +func (s *InvalidNodeException) OrigErr() error { + return nil +} + +func (s *InvalidNodeException) Error() string { + return fmt.Sprintf("%s: %s\n%s", s.Code(), s.Message(), s.String()) +} + +// Status code returns the HTTP status code for the request's response error. +func (s *InvalidNodeException) StatusCode() int { + return s.RespMetadata.StatusCode +} + +// RequestID returns the service's response RequestID for request. +func (s *InvalidNodeException) RequestID() string { + return s.RespMetadata.RequestID +} + +// A reason that a signal isn't valid. +type InvalidSignal struct { + _ struct{} `type:"structure"` + + // The name of the signal that isn't valid. + Name *string `locationName:"name" min:"1" type:"string"` + + // A message about why the signal isn't valid. + Reason *string `locationName:"reason" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s InvalidSignal) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s InvalidSignal) GoString() string { + return s.String() +} + +// SetName sets the Name field's value. +func (s *InvalidSignal) SetName(v string) *InvalidSignal { + s.Name = &v + return s +} + +// SetReason sets the Reason field's value. +func (s *InvalidSignal) SetReason(v string) *InvalidSignal { + s.Reason = &v + return s +} + +// A reason that a signal decoder isn't valid. +type InvalidSignalDecoder struct { + _ struct{} `type:"structure"` + + // The name of a signal decoder that isn't valid. + Name *string `locationName:"name" min:"1" type:"string"` + + // A message about why the signal decoder isn't valid. + Reason *string `locationName:"reason" type:"string" enum:"SignalDecoderFailureReason"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s InvalidSignalDecoder) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s InvalidSignalDecoder) GoString() string { + return s.String() +} + +// SetName sets the Name field's value. +func (s *InvalidSignalDecoder) SetName(v string) *InvalidSignalDecoder { + s.Name = &v + return s +} + +// SetReason sets the Reason field's value. +func (s *InvalidSignalDecoder) SetReason(v string) *InvalidSignalDecoder { + s.Reason = &v + return s +} + +// The request couldn't be completed because it contains signals that aren't +// valid. +type InvalidSignalsException struct { + _ struct{} `type:"structure"` + RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` + + // The signals which caused the exception. + InvalidSignals []*InvalidSignal `locationName:"invalidSignals" type:"list"` + + Message_ *string `locationName:"message" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s InvalidSignalsException) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s InvalidSignalsException) GoString() string { + return s.String() +} + +func newErrorInvalidSignalsException(v protocol.ResponseMetadata) error { + return &InvalidSignalsException{ + RespMetadata: v, + } +} + +// Code returns the exception type name. +func (s *InvalidSignalsException) Code() string { + return "InvalidSignalsException" +} + +// Message returns the exception's message. +func (s *InvalidSignalsException) Message() string { + if s.Message_ != nil { + return *s.Message_ + } + return "" +} + +// OrigErr always returns nil, satisfies awserr.Error interface. +func (s *InvalidSignalsException) OrigErr() error { + return nil +} + +func (s *InvalidSignalsException) Error() string { + return fmt.Sprintf("%s: %s\n%s", s.Code(), s.Message(), s.String()) +} + +// Status code returns the HTTP status code for the request's response error. +func (s *InvalidSignalsException) StatusCode() int { + return s.RespMetadata.StatusCode +} + +// RequestID returns the service's response RequestID for request. +func (s *InvalidSignalsException) RequestID() string { + return s.RespMetadata.RequestID +} + +// A service quota was exceeded. +type LimitExceededException struct { + _ struct{} `type:"structure"` + RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` + + Message_ *string `locationName:"message" type:"string"` + + // The identifier of the resource that was exceeded. + // + // ResourceId is a required field + ResourceId *string `locationName:"resourceId" type:"string" required:"true"` + + // The type of resource that was exceeded. + // + // ResourceType is a required field + ResourceType *string `locationName:"resourceType" type:"string" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s LimitExceededException) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s LimitExceededException) GoString() string { + return s.String() +} + +func newErrorLimitExceededException(v protocol.ResponseMetadata) error { + return &LimitExceededException{ + RespMetadata: v, + } +} + +// Code returns the exception type name. +func (s *LimitExceededException) Code() string { + return "LimitExceededException" +} + +// Message returns the exception's message. +func (s *LimitExceededException) Message() string { + if s.Message_ != nil { + return *s.Message_ + } + return "" +} + +// OrigErr always returns nil, satisfies awserr.Error interface. +func (s *LimitExceededException) OrigErr() error { + return nil +} + +func (s *LimitExceededException) Error() string { + return fmt.Sprintf("%s: %s\n%s", s.Code(), s.Message(), s.String()) +} + +// Status code returns the HTTP status code for the request's response error. +func (s *LimitExceededException) StatusCode() int { + return s.RespMetadata.StatusCode +} + +// RequestID returns the service's response RequestID for request. +func (s *LimitExceededException) RequestID() string { + return s.RespMetadata.RequestID +} + +type ListCampaignsInput struct { + _ struct{} `type:"structure"` + + // The maximum number of items to return, between 1 and 100, inclusive. + MaxResults *int64 `locationName:"maxResults" min:"1" type:"integer"` + + // A pagination token for the next set of results. + // + // If the results of a search are large, only a portion of the results are returned, + // and a nextToken pagination token is returned in the response. To retrieve + // the next set of results, reissue the search request and include the returned + // token. When all results have been returned, the response does not contain + // a pagination token value. + NextToken *string `locationName:"nextToken" min:"1" type:"string"` + + // Optional parameter to filter the results by the status of each created campaign + // in your account. The status can be one of: CREATING, WAITING_FOR_APPROVAL, + // RUNNING, or SUSPENDED. + Status *string `locationName:"status" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListCampaignsInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListCampaignsInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *ListCampaignsInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ListCampaignsInput"} + if s.MaxResults != nil && *s.MaxResults < 1 { + invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1)) + } + if s.NextToken != nil && len(*s.NextToken) < 1 { + invalidParams.Add(request.NewErrParamMinLen("NextToken", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetMaxResults sets the MaxResults field's value. +func (s *ListCampaignsInput) SetMaxResults(v int64) *ListCampaignsInput { + s.MaxResults = &v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *ListCampaignsInput) SetNextToken(v string) *ListCampaignsInput { + s.NextToken = &v + return s +} + +// SetStatus sets the Status field's value. +func (s *ListCampaignsInput) SetStatus(v string) *ListCampaignsInput { + s.Status = &v + return s +} + +type ListCampaignsOutput struct { + _ struct{} `type:"structure"` + + // A summary of information about each campaign. + CampaignSummaries []*CampaignSummary `locationName:"campaignSummaries" type:"list"` + + // The token to retrieve the next set of results, or null if there are no more + // results. + NextToken *string `locationName:"nextToken" min:"1" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListCampaignsOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListCampaignsOutput) GoString() string { + return s.String() +} + +// SetCampaignSummaries sets the CampaignSummaries field's value. +func (s *ListCampaignsOutput) SetCampaignSummaries(v []*CampaignSummary) *ListCampaignsOutput { + s.CampaignSummaries = v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *ListCampaignsOutput) SetNextToken(v string) *ListCampaignsOutput { + s.NextToken = &v + return s +} + +type ListDecoderManifestNetworkInterfacesInput struct { + _ struct{} `type:"structure"` + + // The maximum number of items to return, between 1 and 100, inclusive. + MaxResults *int64 `locationName:"maxResults" min:"1" type:"integer"` + + // The name of the decoder manifest to list information about. + // + // Name is a required field + Name *string `locationName:"name" min:"1" type:"string" required:"true"` + + // A pagination token for the next set of results. + // + // If the results of a search are large, only a portion of the results are returned, + // and a nextToken pagination token is returned in the response. To retrieve + // the next set of results, reissue the search request and include the returned + // token. When all results have been returned, the response does not contain + // a pagination token value. + NextToken *string `locationName:"nextToken" min:"1" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListDecoderManifestNetworkInterfacesInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListDecoderManifestNetworkInterfacesInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *ListDecoderManifestNetworkInterfacesInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ListDecoderManifestNetworkInterfacesInput"} + if s.MaxResults != nil && *s.MaxResults < 1 { + invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1)) + } + if s.Name == nil { + invalidParams.Add(request.NewErrParamRequired("Name")) + } + if s.Name != nil && len(*s.Name) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Name", 1)) + } + if s.NextToken != nil && len(*s.NextToken) < 1 { + invalidParams.Add(request.NewErrParamMinLen("NextToken", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetMaxResults sets the MaxResults field's value. +func (s *ListDecoderManifestNetworkInterfacesInput) SetMaxResults(v int64) *ListDecoderManifestNetworkInterfacesInput { + s.MaxResults = &v + return s +} + +// SetName sets the Name field's value. +func (s *ListDecoderManifestNetworkInterfacesInput) SetName(v string) *ListDecoderManifestNetworkInterfacesInput { + s.Name = &v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *ListDecoderManifestNetworkInterfacesInput) SetNextToken(v string) *ListDecoderManifestNetworkInterfacesInput { + s.NextToken = &v + return s +} + +type ListDecoderManifestNetworkInterfacesOutput struct { + _ struct{} `type:"structure"` + + // A list of information about network interfaces. + NetworkInterfaces []*NetworkInterface `locationName:"networkInterfaces" min:"1" type:"list"` + + // The token to retrieve the next set of results, or null if there are no more + // results. + NextToken *string `locationName:"nextToken" min:"1" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListDecoderManifestNetworkInterfacesOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListDecoderManifestNetworkInterfacesOutput) GoString() string { + return s.String() +} + +// SetNetworkInterfaces sets the NetworkInterfaces field's value. +func (s *ListDecoderManifestNetworkInterfacesOutput) SetNetworkInterfaces(v []*NetworkInterface) *ListDecoderManifestNetworkInterfacesOutput { + s.NetworkInterfaces = v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *ListDecoderManifestNetworkInterfacesOutput) SetNextToken(v string) *ListDecoderManifestNetworkInterfacesOutput { + s.NextToken = &v + return s +} + +type ListDecoderManifestSignalsInput struct { + _ struct{} `type:"structure"` + + // The maximum number of items to return, between 1 and 100, inclusive. + MaxResults *int64 `locationName:"maxResults" min:"1" type:"integer"` + + // The name of the decoder manifest to list information about. + // + // Name is a required field + Name *string `locationName:"name" min:"1" type:"string" required:"true"` + + // A pagination token for the next set of results. + // + // If the results of a search are large, only a portion of the results are returned, + // and a nextToken pagination token is returned in the response. To retrieve + // the next set of results, reissue the search request and include the returned + // token. When all results have been returned, the response does not contain + // a pagination token value. + NextToken *string `locationName:"nextToken" min:"1" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListDecoderManifestSignalsInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListDecoderManifestSignalsInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *ListDecoderManifestSignalsInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ListDecoderManifestSignalsInput"} + if s.MaxResults != nil && *s.MaxResults < 1 { + invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1)) + } + if s.Name == nil { + invalidParams.Add(request.NewErrParamRequired("Name")) + } + if s.Name != nil && len(*s.Name) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Name", 1)) + } + if s.NextToken != nil && len(*s.NextToken) < 1 { + invalidParams.Add(request.NewErrParamMinLen("NextToken", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetMaxResults sets the MaxResults field's value. +func (s *ListDecoderManifestSignalsInput) SetMaxResults(v int64) *ListDecoderManifestSignalsInput { + s.MaxResults = &v + return s +} + +// SetName sets the Name field's value. +func (s *ListDecoderManifestSignalsInput) SetName(v string) *ListDecoderManifestSignalsInput { + s.Name = &v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *ListDecoderManifestSignalsInput) SetNextToken(v string) *ListDecoderManifestSignalsInput { + s.NextToken = &v + return s +} + +type ListDecoderManifestSignalsOutput struct { + _ struct{} `type:"structure"` + + // The token to retrieve the next set of results, or null if there are no more + // results. + NextToken *string `locationName:"nextToken" min:"1" type:"string"` + + // Information about a list of signals to decode. + SignalDecoders []*SignalDecoder `locationName:"signalDecoders" min:"1" type:"list"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListDecoderManifestSignalsOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListDecoderManifestSignalsOutput) GoString() string { + return s.String() +} + +// SetNextToken sets the NextToken field's value. +func (s *ListDecoderManifestSignalsOutput) SetNextToken(v string) *ListDecoderManifestSignalsOutput { + s.NextToken = &v + return s +} + +// SetSignalDecoders sets the SignalDecoders field's value. +func (s *ListDecoderManifestSignalsOutput) SetSignalDecoders(v []*SignalDecoder) *ListDecoderManifestSignalsOutput { + s.SignalDecoders = v + return s +} + +type ListDecoderManifestsInput struct { + _ struct{} `type:"structure"` + + // The maximum number of items to return, between 1 and 100, inclusive. + MaxResults *int64 `locationName:"maxResults" min:"1" type:"integer"` + + // The Amazon Resource Name (ARN) of a vehicle model (model manifest) associated + // with the decoder manifest. + ModelManifestArn *string `locationName:"modelManifestArn" type:"string"` + + // A pagination token for the next set of results. + // + // If the results of a search are large, only a portion of the results are returned, + // and a nextToken pagination token is returned in the response. To retrieve + // the next set of results, reissue the search request and include the returned + // token. When all results have been returned, the response does not contain + // a pagination token value. + NextToken *string `locationName:"nextToken" min:"1" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListDecoderManifestsInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListDecoderManifestsInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *ListDecoderManifestsInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ListDecoderManifestsInput"} + if s.MaxResults != nil && *s.MaxResults < 1 { + invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1)) + } + if s.NextToken != nil && len(*s.NextToken) < 1 { + invalidParams.Add(request.NewErrParamMinLen("NextToken", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetMaxResults sets the MaxResults field's value. +func (s *ListDecoderManifestsInput) SetMaxResults(v int64) *ListDecoderManifestsInput { + s.MaxResults = &v + return s +} + +// SetModelManifestArn sets the ModelManifestArn field's value. +func (s *ListDecoderManifestsInput) SetModelManifestArn(v string) *ListDecoderManifestsInput { + s.ModelManifestArn = &v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *ListDecoderManifestsInput) SetNextToken(v string) *ListDecoderManifestsInput { + s.NextToken = &v + return s +} + +type ListDecoderManifestsOutput struct { + _ struct{} `type:"structure"` + + // The token to retrieve the next set of results, or null if there are no more + // results. + NextToken *string `locationName:"nextToken" min:"1" type:"string"` + + // A list of information about each decoder manifest. + Summaries []*DecoderManifestSummary `locationName:"summaries" type:"list"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListDecoderManifestsOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListDecoderManifestsOutput) GoString() string { + return s.String() +} + +// SetNextToken sets the NextToken field's value. +func (s *ListDecoderManifestsOutput) SetNextToken(v string) *ListDecoderManifestsOutput { + s.NextToken = &v + return s +} + +// SetSummaries sets the Summaries field's value. +func (s *ListDecoderManifestsOutput) SetSummaries(v []*DecoderManifestSummary) *ListDecoderManifestsOutput { + s.Summaries = v + return s +} + +type ListFleetsForVehicleInput struct { + _ struct{} `type:"structure"` + + // The maximum number of items to return, between 1 and 100, inclusive. + MaxResults *int64 `locationName:"maxResults" min:"1" type:"integer"` + + // A pagination token for the next set of results. + // + // If the results of a search are large, only a portion of the results are returned, + // and a nextToken pagination token is returned in the response. To retrieve + // the next set of results, reissue the search request and include the returned + // token. When all results have been returned, the response does not contain + // a pagination token value. + NextToken *string `locationName:"nextToken" min:"1" type:"string"` + + // The ID of the vehicle to retrieve information about. + // + // VehicleName is a required field + VehicleName *string `locationName:"vehicleName" min:"1" type:"string" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListFleetsForVehicleInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListFleetsForVehicleInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *ListFleetsForVehicleInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ListFleetsForVehicleInput"} + if s.MaxResults != nil && *s.MaxResults < 1 { + invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1)) + } + if s.NextToken != nil && len(*s.NextToken) < 1 { + invalidParams.Add(request.NewErrParamMinLen("NextToken", 1)) + } + if s.VehicleName == nil { + invalidParams.Add(request.NewErrParamRequired("VehicleName")) + } + if s.VehicleName != nil && len(*s.VehicleName) < 1 { + invalidParams.Add(request.NewErrParamMinLen("VehicleName", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetMaxResults sets the MaxResults field's value. +func (s *ListFleetsForVehicleInput) SetMaxResults(v int64) *ListFleetsForVehicleInput { + s.MaxResults = &v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *ListFleetsForVehicleInput) SetNextToken(v string) *ListFleetsForVehicleInput { + s.NextToken = &v + return s +} + +// SetVehicleName sets the VehicleName field's value. +func (s *ListFleetsForVehicleInput) SetVehicleName(v string) *ListFleetsForVehicleInput { + s.VehicleName = &v + return s +} + +type ListFleetsForVehicleOutput struct { + _ struct{} `type:"structure"` + + // A list of fleet IDs that the vehicle is associated with. + Fleets []*string `locationName:"fleets" type:"list"` + + // The token to retrieve the next set of results, or null if there are no more + // results. + NextToken *string `locationName:"nextToken" min:"1" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListFleetsForVehicleOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListFleetsForVehicleOutput) GoString() string { + return s.String() +} + +// SetFleets sets the Fleets field's value. +func (s *ListFleetsForVehicleOutput) SetFleets(v []*string) *ListFleetsForVehicleOutput { + s.Fleets = v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *ListFleetsForVehicleOutput) SetNextToken(v string) *ListFleetsForVehicleOutput { + s.NextToken = &v + return s +} + +type ListFleetsInput struct { + _ struct{} `type:"structure"` + + // The maximum number of items to return, between 1 and 100, inclusive. + MaxResults *int64 `locationName:"maxResults" min:"1" type:"integer"` + + // A pagination token for the next set of results. + // + // If the results of a search are large, only a portion of the results are returned, + // and a nextToken pagination token is returned in the response. To retrieve + // the next set of results, reissue the search request and include the returned + // token. When all results have been returned, the response does not contain + // a pagination token value. + NextToken *string `locationName:"nextToken" min:"1" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListFleetsInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListFleetsInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *ListFleetsInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ListFleetsInput"} + if s.MaxResults != nil && *s.MaxResults < 1 { + invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1)) + } + if s.NextToken != nil && len(*s.NextToken) < 1 { + invalidParams.Add(request.NewErrParamMinLen("NextToken", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetMaxResults sets the MaxResults field's value. +func (s *ListFleetsInput) SetMaxResults(v int64) *ListFleetsInput { + s.MaxResults = &v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *ListFleetsInput) SetNextToken(v string) *ListFleetsInput { + s.NextToken = &v + return s +} + +type ListFleetsOutput struct { + _ struct{} `type:"structure"` + + // A list of information for each fleet. + FleetSummaries []*FleetSummary `locationName:"fleetSummaries" type:"list"` + + // The token to retrieve the next set of results, or null if there are no more + // results. + NextToken *string `locationName:"nextToken" min:"1" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListFleetsOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListFleetsOutput) GoString() string { + return s.String() +} + +// SetFleetSummaries sets the FleetSummaries field's value. +func (s *ListFleetsOutput) SetFleetSummaries(v []*FleetSummary) *ListFleetsOutput { + s.FleetSummaries = v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *ListFleetsOutput) SetNextToken(v string) *ListFleetsOutput { + s.NextToken = &v + return s +} + +type ListModelManifestNodesInput struct { + _ struct{} `type:"structure"` + + // The maximum number of items to return, between 1 and 100, inclusive. + MaxResults *int64 `locationName:"maxResults" min:"1" type:"integer"` + + // The name of the vehicle model to list information about. + // + // Name is a required field + Name *string `locationName:"name" min:"1" type:"string" required:"true"` + + // A pagination token for the next set of results. + // + // If the results of a search are large, only a portion of the results are returned, + // and a nextToken pagination token is returned in the response. To retrieve + // the next set of results, reissue the search request and include the returned + // token. When all results have been returned, the response does not contain + // a pagination token value. + NextToken *string `locationName:"nextToken" min:"1" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListModelManifestNodesInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListModelManifestNodesInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *ListModelManifestNodesInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ListModelManifestNodesInput"} + if s.MaxResults != nil && *s.MaxResults < 1 { + invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1)) + } + if s.Name == nil { + invalidParams.Add(request.NewErrParamRequired("Name")) + } + if s.Name != nil && len(*s.Name) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Name", 1)) + } + if s.NextToken != nil && len(*s.NextToken) < 1 { + invalidParams.Add(request.NewErrParamMinLen("NextToken", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetMaxResults sets the MaxResults field's value. +func (s *ListModelManifestNodesInput) SetMaxResults(v int64) *ListModelManifestNodesInput { + s.MaxResults = &v + return s +} + +// SetName sets the Name field's value. +func (s *ListModelManifestNodesInput) SetName(v string) *ListModelManifestNodesInput { + s.Name = &v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *ListModelManifestNodesInput) SetNextToken(v string) *ListModelManifestNodesInput { + s.NextToken = &v + return s +} + +type ListModelManifestNodesOutput struct { + _ struct{} `type:"structure"` + + // The token to retrieve the next set of results, or null if there are no more + // results. + NextToken *string `locationName:"nextToken" min:"1" type:"string"` + + // A list of information about nodes. + Nodes []*Node `locationName:"nodes" type:"list"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListModelManifestNodesOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListModelManifestNodesOutput) GoString() string { + return s.String() +} + +// SetNextToken sets the NextToken field's value. +func (s *ListModelManifestNodesOutput) SetNextToken(v string) *ListModelManifestNodesOutput { + s.NextToken = &v + return s +} + +// SetNodes sets the Nodes field's value. +func (s *ListModelManifestNodesOutput) SetNodes(v []*Node) *ListModelManifestNodesOutput { + s.Nodes = v + return s +} + +type ListModelManifestsInput struct { + _ struct{} `type:"structure"` + + // The maximum number of items to return, between 1 and 100, inclusive. + MaxResults *int64 `locationName:"maxResults" min:"1" type:"integer"` + + // A pagination token for the next set of results. + // + // If the results of a search are large, only a portion of the results are returned, + // and a nextToken pagination token is returned in the response. To retrieve + // the next set of results, reissue the search request and include the returned + // token. When all results have been returned, the response does not contain + // a pagination token value. + NextToken *string `locationName:"nextToken" min:"1" type:"string"` + + // The ARN of a signal catalog. If you specify a signal catalog, only the vehicle + // models associated with it are returned. + SignalCatalogArn *string `locationName:"signalCatalogArn" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListModelManifestsInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListModelManifestsInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *ListModelManifestsInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ListModelManifestsInput"} + if s.MaxResults != nil && *s.MaxResults < 1 { + invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1)) + } + if s.NextToken != nil && len(*s.NextToken) < 1 { + invalidParams.Add(request.NewErrParamMinLen("NextToken", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetMaxResults sets the MaxResults field's value. +func (s *ListModelManifestsInput) SetMaxResults(v int64) *ListModelManifestsInput { + s.MaxResults = &v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *ListModelManifestsInput) SetNextToken(v string) *ListModelManifestsInput { + s.NextToken = &v + return s +} + +// SetSignalCatalogArn sets the SignalCatalogArn field's value. +func (s *ListModelManifestsInput) SetSignalCatalogArn(v string) *ListModelManifestsInput { + s.SignalCatalogArn = &v + return s +} + +type ListModelManifestsOutput struct { + _ struct{} `type:"structure"` + + // The token to retrieve the next set of results, or null if there are no more + // results. + NextToken *string `locationName:"nextToken" min:"1" type:"string"` + + // A list of information about vehicle models. + Summaries []*ModelManifestSummary `locationName:"summaries" type:"list"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListModelManifestsOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListModelManifestsOutput) GoString() string { + return s.String() +} + +// SetNextToken sets the NextToken field's value. +func (s *ListModelManifestsOutput) SetNextToken(v string) *ListModelManifestsOutput { + s.NextToken = &v + return s +} + +// SetSummaries sets the Summaries field's value. +func (s *ListModelManifestsOutput) SetSummaries(v []*ModelManifestSummary) *ListModelManifestsOutput { + s.Summaries = v + return s +} + +type ListSignalCatalogNodesInput struct { + _ struct{} `type:"structure"` + + // The maximum number of items to return, between 1 and 100, inclusive. + MaxResults *int64 `locationName:"maxResults" min:"1" type:"integer"` + + // The name of the signal catalog to list information about. + // + // Name is a required field + Name *string `locationName:"name" min:"1" type:"string" required:"true"` + + // A pagination token for the next set of results. + // + // If the results of a search are large, only a portion of the results are returned, + // and a nextToken pagination token is returned in the response. To retrieve + // the next set of results, reissue the search request and include the returned + // token. When all results have been returned, the response does not contain + // a pagination token value. + NextToken *string `locationName:"nextToken" min:"1" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListSignalCatalogNodesInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListSignalCatalogNodesInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *ListSignalCatalogNodesInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ListSignalCatalogNodesInput"} + if s.MaxResults != nil && *s.MaxResults < 1 { + invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1)) + } + if s.Name == nil { + invalidParams.Add(request.NewErrParamRequired("Name")) + } + if s.Name != nil && len(*s.Name) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Name", 1)) + } + if s.NextToken != nil && len(*s.NextToken) < 1 { + invalidParams.Add(request.NewErrParamMinLen("NextToken", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetMaxResults sets the MaxResults field's value. +func (s *ListSignalCatalogNodesInput) SetMaxResults(v int64) *ListSignalCatalogNodesInput { + s.MaxResults = &v + return s +} + +// SetName sets the Name field's value. +func (s *ListSignalCatalogNodesInput) SetName(v string) *ListSignalCatalogNodesInput { + s.Name = &v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *ListSignalCatalogNodesInput) SetNextToken(v string) *ListSignalCatalogNodesInput { + s.NextToken = &v + return s +} + +type ListSignalCatalogNodesOutput struct { + _ struct{} `type:"structure"` + + // The token to retrieve the next set of results, or null if there are no more + // results. + NextToken *string `locationName:"nextToken" min:"1" type:"string"` + + // A list of information about nodes. + Nodes []*Node `locationName:"nodes" type:"list"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListSignalCatalogNodesOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListSignalCatalogNodesOutput) GoString() string { + return s.String() +} + +// SetNextToken sets the NextToken field's value. +func (s *ListSignalCatalogNodesOutput) SetNextToken(v string) *ListSignalCatalogNodesOutput { + s.NextToken = &v + return s +} + +// SetNodes sets the Nodes field's value. +func (s *ListSignalCatalogNodesOutput) SetNodes(v []*Node) *ListSignalCatalogNodesOutput { + s.Nodes = v + return s +} + +type ListSignalCatalogsInput struct { + _ struct{} `type:"structure"` + + // The maximum number of items to return, between 1 and 100, inclusive. + MaxResults *int64 `locationName:"maxResults" min:"1" type:"integer"` + + // A pagination token for the next set of results. + // + // If the results of a search are large, only a portion of the results are returned, + // and a nextToken pagination token is returned in the response. To retrieve + // the next set of results, reissue the search request and include the returned + // token. When all results have been returned, the response does not contain + // a pagination token value. + NextToken *string `locationName:"nextToken" min:"1" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListSignalCatalogsInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListSignalCatalogsInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *ListSignalCatalogsInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ListSignalCatalogsInput"} + if s.MaxResults != nil && *s.MaxResults < 1 { + invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1)) + } + if s.NextToken != nil && len(*s.NextToken) < 1 { + invalidParams.Add(request.NewErrParamMinLen("NextToken", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetMaxResults sets the MaxResults field's value. +func (s *ListSignalCatalogsInput) SetMaxResults(v int64) *ListSignalCatalogsInput { + s.MaxResults = &v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *ListSignalCatalogsInput) SetNextToken(v string) *ListSignalCatalogsInput { + s.NextToken = &v + return s +} + +type ListSignalCatalogsOutput struct { + _ struct{} `type:"structure"` + + // The token to retrieve the next set of results, or null if there are no more + // results. + NextToken *string `locationName:"nextToken" min:"1" type:"string"` + + // A list of information about each signal catalog. + Summaries []*SignalCatalogSummary `locationName:"summaries" type:"list"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListSignalCatalogsOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListSignalCatalogsOutput) GoString() string { + return s.String() +} + +// SetNextToken sets the NextToken field's value. +func (s *ListSignalCatalogsOutput) SetNextToken(v string) *ListSignalCatalogsOutput { + s.NextToken = &v + return s +} + +// SetSummaries sets the Summaries field's value. +func (s *ListSignalCatalogsOutput) SetSummaries(v []*SignalCatalogSummary) *ListSignalCatalogsOutput { + s.Summaries = v + return s +} + +type ListTagsForResourceInput struct { + _ struct{} `type:"structure"` + + // The ARN of the resource. + // + // ResourceARN is a required field + ResourceARN *string `min:"1" type:"string" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListTagsForResourceInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListTagsForResourceInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *ListTagsForResourceInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ListTagsForResourceInput"} + if s.ResourceARN == nil { + invalidParams.Add(request.NewErrParamRequired("ResourceARN")) + } + if s.ResourceARN != nil && len(*s.ResourceARN) < 1 { + invalidParams.Add(request.NewErrParamMinLen("ResourceARN", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetResourceARN sets the ResourceARN field's value. +func (s *ListTagsForResourceInput) SetResourceARN(v string) *ListTagsForResourceInput { + s.ResourceARN = &v + return s +} + +type ListTagsForResourceOutput struct { + _ struct{} `type:"structure"` + + // The list of tags assigned to the resource. + Tags []*Tag `type:"list"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListTagsForResourceOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListTagsForResourceOutput) GoString() string { + return s.String() +} + +// SetTags sets the Tags field's value. +func (s *ListTagsForResourceOutput) SetTags(v []*Tag) *ListTagsForResourceOutput { + s.Tags = v + return s +} + +type ListVehiclesInFleetInput struct { + _ struct{} `type:"structure"` + + // The ID of a fleet. + // + // FleetId is a required field + FleetId *string `locationName:"fleetId" min:"1" type:"string" required:"true"` + + // The maximum number of items to return, between 1 and 100, inclusive. + MaxResults *int64 `locationName:"maxResults" min:"1" type:"integer"` + + // A pagination token for the next set of results. + // + // If the results of a search are large, only a portion of the results are returned, + // and a nextToken pagination token is returned in the response. To retrieve + // the next set of results, reissue the search request and include the returned + // token. When all results have been returned, the response does not contain + // a pagination token value. + NextToken *string `locationName:"nextToken" min:"1" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListVehiclesInFleetInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListVehiclesInFleetInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *ListVehiclesInFleetInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ListVehiclesInFleetInput"} + if s.FleetId == nil { + invalidParams.Add(request.NewErrParamRequired("FleetId")) + } + if s.FleetId != nil && len(*s.FleetId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("FleetId", 1)) + } + if s.MaxResults != nil && *s.MaxResults < 1 { + invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1)) + } + if s.NextToken != nil && len(*s.NextToken) < 1 { + invalidParams.Add(request.NewErrParamMinLen("NextToken", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetFleetId sets the FleetId field's value. +func (s *ListVehiclesInFleetInput) SetFleetId(v string) *ListVehiclesInFleetInput { + s.FleetId = &v + return s +} + +// SetMaxResults sets the MaxResults field's value. +func (s *ListVehiclesInFleetInput) SetMaxResults(v int64) *ListVehiclesInFleetInput { + s.MaxResults = &v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *ListVehiclesInFleetInput) SetNextToken(v string) *ListVehiclesInFleetInput { + s.NextToken = &v + return s +} + +type ListVehiclesInFleetOutput struct { + _ struct{} `type:"structure"` + + // The token to retrieve the next set of results, or null if there are no more + // results. + NextToken *string `locationName:"nextToken" min:"1" type:"string"` + + // A list of vehicles associated with the fleet. + Vehicles []*string `locationName:"vehicles" type:"list"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListVehiclesInFleetOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListVehiclesInFleetOutput) GoString() string { + return s.String() +} + +// SetNextToken sets the NextToken field's value. +func (s *ListVehiclesInFleetOutput) SetNextToken(v string) *ListVehiclesInFleetOutput { + s.NextToken = &v + return s +} + +// SetVehicles sets the Vehicles field's value. +func (s *ListVehiclesInFleetOutput) SetVehicles(v []*string) *ListVehiclesInFleetOutput { + s.Vehicles = v + return s +} + +type ListVehiclesInput struct { + _ struct{} `type:"structure"` + + // The maximum number of items to return, between 1 and 100, inclusive. + MaxResults *int64 `locationName:"maxResults" min:"1" type:"integer"` + + // The Amazon Resource Name (ARN) of a vehicle model (model manifest). You can + // use this optional parameter to list only the vehicles created from a certain + // vehicle model. + ModelManifestArn *string `locationName:"modelManifestArn" type:"string"` + + // A pagination token for the next set of results. + // + // If the results of a search are large, only a portion of the results are returned, + // and a nextToken pagination token is returned in the response. To retrieve + // the next set of results, reissue the search request and include the returned + // token. When all results have been returned, the response does not contain + // a pagination token value. + NextToken *string `locationName:"nextToken" min:"1" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListVehiclesInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListVehiclesInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *ListVehiclesInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ListVehiclesInput"} + if s.MaxResults != nil && *s.MaxResults < 1 { + invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1)) + } + if s.NextToken != nil && len(*s.NextToken) < 1 { + invalidParams.Add(request.NewErrParamMinLen("NextToken", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetMaxResults sets the MaxResults field's value. +func (s *ListVehiclesInput) SetMaxResults(v int64) *ListVehiclesInput { + s.MaxResults = &v + return s +} + +// SetModelManifestArn sets the ModelManifestArn field's value. +func (s *ListVehiclesInput) SetModelManifestArn(v string) *ListVehiclesInput { + s.ModelManifestArn = &v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *ListVehiclesInput) SetNextToken(v string) *ListVehiclesInput { + s.NextToken = &v + return s +} + +type ListVehiclesOutput struct { + _ struct{} `type:"structure"` + + // The token to retrieve the next set of results, or null if there are no more + // results. + NextToken *string `locationName:"nextToken" min:"1" type:"string"` + + // A list of vehicles and information about them. + VehicleSummaries []*VehicleSummary `locationName:"vehicleSummaries" type:"list"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListVehiclesOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListVehiclesOutput) GoString() string { + return s.String() +} + +// SetNextToken sets the NextToken field's value. +func (s *ListVehiclesOutput) SetNextToken(v string) *ListVehiclesOutput { + s.NextToken = &v + return s +} + +// SetVehicleSummaries sets the VehicleSummaries field's value. +func (s *ListVehiclesOutput) SetVehicleSummaries(v []*VehicleSummary) *ListVehiclesOutput { + s.VehicleSummaries = v + return s +} + +// Information about a vehicle model (model manifest). You can use the API operation +// to return this information about multiple vehicle models. +type ModelManifestSummary struct { + _ struct{} `type:"structure"` + + // The Amazon Resource Name (ARN) of the vehicle model. + Arn *string `locationName:"arn" type:"string"` + + // The time the vehicle model was created, in seconds since epoch (January 1, + // 1970 at midnight UTC time). + // + // CreationTime is a required field + CreationTime *time.Time `locationName:"creationTime" type:"timestamp" required:"true"` + + // A brief description of the vehicle model. + Description *string `locationName:"description" min:"1" type:"string"` + + // The time the vehicle model was last updated, in seconds since epoch (January + // 1, 1970 at midnight UTC time). + // + // LastModificationTime is a required field + LastModificationTime *time.Time `locationName:"lastModificationTime" type:"timestamp" required:"true"` + + // The name of the vehicle model. + Name *string `locationName:"name" type:"string"` + + // The ARN of the signal catalog associated with the vehicle model. + SignalCatalogArn *string `locationName:"signalCatalogArn" type:"string"` + + // The state of the vehicle model. If the status is ACTIVE, the vehicle model + // can't be edited. If the status is DRAFT, you can edit the vehicle model. + Status *string `locationName:"status" type:"string" enum:"ManifestStatus"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ModelManifestSummary) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ModelManifestSummary) GoString() string { + return s.String() +} + +// SetArn sets the Arn field's value. +func (s *ModelManifestSummary) SetArn(v string) *ModelManifestSummary { + s.Arn = &v + return s +} + +// SetCreationTime sets the CreationTime field's value. +func (s *ModelManifestSummary) SetCreationTime(v time.Time) *ModelManifestSummary { + s.CreationTime = &v + return s +} + +// SetDescription sets the Description field's value. +func (s *ModelManifestSummary) SetDescription(v string) *ModelManifestSummary { + s.Description = &v + return s +} + +// SetLastModificationTime sets the LastModificationTime field's value. +func (s *ModelManifestSummary) SetLastModificationTime(v time.Time) *ModelManifestSummary { + s.LastModificationTime = &v + return s +} + +// SetName sets the Name field's value. +func (s *ModelManifestSummary) SetName(v string) *ModelManifestSummary { + s.Name = &v + return s +} + +// SetSignalCatalogArn sets the SignalCatalogArn field's value. +func (s *ModelManifestSummary) SetSignalCatalogArn(v string) *ModelManifestSummary { + s.SignalCatalogArn = &v + return s +} + +// SetStatus sets the Status field's value. +func (s *ModelManifestSummary) SetStatus(v string) *ModelManifestSummary { + s.Status = &v + return s +} + +// Specifications for defining a vehicle network. +type NetworkFileDefinition struct { + _ struct{} `type:"structure"` + + // Information, including CAN DBC files, about the configurations used to create + // a decoder manifest. + CanDbc *CanDbcDefinition `locationName:"canDbc" type:"structure"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s NetworkFileDefinition) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s NetworkFileDefinition) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *NetworkFileDefinition) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "NetworkFileDefinition"} + if s.CanDbc != nil { + if err := s.CanDbc.Validate(); err != nil { + invalidParams.AddNested("CanDbc", err.(request.ErrInvalidParams)) + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetCanDbc sets the CanDbc field's value. +func (s *NetworkFileDefinition) SetCanDbc(v *CanDbcDefinition) *NetworkFileDefinition { + s.CanDbc = v + return s +} + +// Represents a node and its specifications in an in-vehicle communication network. +// All signal decoders must be associated with a network node. +// +// To return this information about all the network interfaces specified in +// a decoder manifest, use the API operation. +type NetworkInterface struct { + _ struct{} `type:"structure"` + + // Information about a network interface specified by the Controller Area Network + // (CAN) protocol. + CanInterface *CanInterface `locationName:"canInterface" type:"structure"` + + // The ID of the network interface. + // + // InterfaceId is a required field + InterfaceId *string `locationName:"interfaceId" min:"1" type:"string" required:"true"` + + // Information about a network interface specified by the On-board diagnostic + // (OBD) II protocol. + ObdInterface *ObdInterface `locationName:"obdInterface" type:"structure"` + + // The network protocol for the vehicle. For example, CAN_SIGNAL specifies a + // protocol that defines how data is communicated between electronic control + // units (ECUs). OBD_SIGNAL specifies a protocol that defines how self-diagnostic + // data is communicated between ECUs. + // + // Type is a required field + Type *string `locationName:"type" type:"string" required:"true" enum:"NetworkInterfaceType"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s NetworkInterface) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s NetworkInterface) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *NetworkInterface) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "NetworkInterface"} + if s.InterfaceId == nil { + invalidParams.Add(request.NewErrParamRequired("InterfaceId")) + } + if s.InterfaceId != nil && len(*s.InterfaceId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("InterfaceId", 1)) + } + if s.Type == nil { + invalidParams.Add(request.NewErrParamRequired("Type")) + } + if s.CanInterface != nil { + if err := s.CanInterface.Validate(); err != nil { + invalidParams.AddNested("CanInterface", err.(request.ErrInvalidParams)) + } + } + if s.ObdInterface != nil { + if err := s.ObdInterface.Validate(); err != nil { + invalidParams.AddNested("ObdInterface", err.(request.ErrInvalidParams)) + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetCanInterface sets the CanInterface field's value. +func (s *NetworkInterface) SetCanInterface(v *CanInterface) *NetworkInterface { + s.CanInterface = v + return s +} + +// SetInterfaceId sets the InterfaceId field's value. +func (s *NetworkInterface) SetInterfaceId(v string) *NetworkInterface { + s.InterfaceId = &v + return s +} + +// SetObdInterface sets the ObdInterface field's value. +func (s *NetworkInterface) SetObdInterface(v *ObdInterface) *NetworkInterface { + s.ObdInterface = v + return s +} + +// SetType sets the Type field's value. +func (s *NetworkInterface) SetType(v string) *NetworkInterface { + s.Type = &v + return s +} + +// A general abstraction of a signal. A node can be specified as an actuator, +// attribute, branch, or sensor. +type Node struct { + _ struct{} `type:"structure"` + + // Information about a node specified as an actuator. + // + // An actuator is a digital representation of a vehicle device. + Actuator *Actuator `locationName:"actuator" type:"structure"` + + // Information about a node specified as an attribute. + // + // An attribute represents static information about a vehicle. + Attribute *Attribute `locationName:"attribute" type:"structure"` + + // Information about a node specified as a branch. + // + // A group of signals that are defined in a hierarchical structure. + Branch *Branch `locationName:"branch" type:"structure"` + + // An input component that reports the environmental condition of a vehicle. + // + // You can collect data about fluid levels, temperatures, vibrations, or battery + // voltage from sensors. + Sensor *Sensor `locationName:"sensor" type:"structure"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s Node) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s Node) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *Node) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "Node"} + if s.Actuator != nil { + if err := s.Actuator.Validate(); err != nil { + invalidParams.AddNested("Actuator", err.(request.ErrInvalidParams)) + } + } + if s.Attribute != nil { + if err := s.Attribute.Validate(); err != nil { + invalidParams.AddNested("Attribute", err.(request.ErrInvalidParams)) + } + } + if s.Branch != nil { + if err := s.Branch.Validate(); err != nil { + invalidParams.AddNested("Branch", err.(request.ErrInvalidParams)) + } + } + if s.Sensor != nil { + if err := s.Sensor.Validate(); err != nil { + invalidParams.AddNested("Sensor", err.(request.ErrInvalidParams)) + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetActuator sets the Actuator field's value. +func (s *Node) SetActuator(v *Actuator) *Node { + s.Actuator = v + return s +} + +// SetAttribute sets the Attribute field's value. +func (s *Node) SetAttribute(v *Attribute) *Node { + s.Attribute = v + return s +} + +// SetBranch sets the Branch field's value. +func (s *Node) SetBranch(v *Branch) *Node { + s.Branch = v + return s +} + +// SetSensor sets the Sensor field's value. +func (s *Node) SetSensor(v *Sensor) *Node { + s.Sensor = v + return s +} + +// Information about the number of nodes and node types in a vehicle network. +type NodeCounts struct { + _ struct{} `type:"structure"` + + // The total number of nodes in a vehicle network that represent actuators. + TotalActuators *int64 `locationName:"totalActuators" type:"integer"` + + // The total number of nodes in a vehicle network that represent attributes. + TotalAttributes *int64 `locationName:"totalAttributes" type:"integer"` + + // The total number of nodes in a vehicle network that represent branches. + TotalBranches *int64 `locationName:"totalBranches" type:"integer"` + + // The total number of nodes in a vehicle network. + TotalNodes *int64 `locationName:"totalNodes" type:"integer"` + + // The total number of nodes in a vehicle network that represent sensors. + TotalSensors *int64 `locationName:"totalSensors" type:"integer"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s NodeCounts) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s NodeCounts) GoString() string { + return s.String() +} + +// SetTotalActuators sets the TotalActuators field's value. +func (s *NodeCounts) SetTotalActuators(v int64) *NodeCounts { + s.TotalActuators = &v + return s +} + +// SetTotalAttributes sets the TotalAttributes field's value. +func (s *NodeCounts) SetTotalAttributes(v int64) *NodeCounts { + s.TotalAttributes = &v + return s +} + +// SetTotalBranches sets the TotalBranches field's value. +func (s *NodeCounts) SetTotalBranches(v int64) *NodeCounts { + s.TotalBranches = &v + return s +} + +// SetTotalNodes sets the TotalNodes field's value. +func (s *NodeCounts) SetTotalNodes(v int64) *NodeCounts { + s.TotalNodes = &v + return s +} + +// SetTotalSensors sets the TotalSensors field's value. +func (s *NodeCounts) SetTotalSensors(v int64) *NodeCounts { + s.TotalSensors = &v + return s +} + +// A network interface that specifies the On-board diagnostic (OBD) II network +// protocol. +type ObdInterface struct { + _ struct{} `type:"structure"` + + // The maximum number message requests per diagnostic trouble code per second. + DtcRequestIntervalSeconds *int64 `locationName:"dtcRequestIntervalSeconds" type:"integer"` + + // Whether the vehicle has a transmission control module (TCM). + HasTransmissionEcu *bool `locationName:"hasTransmissionEcu" type:"boolean"` + + // The name of the interface. + // + // Name is a required field + Name *string `locationName:"name" min:"1" type:"string" required:"true"` + + // The standard OBD II PID. + ObdStandard *string `locationName:"obdStandard" min:"1" type:"string"` + + // The maximum number message requests per second. + PidRequestIntervalSeconds *int64 `locationName:"pidRequestIntervalSeconds" type:"integer"` + + // The ID of the message requesting vehicle data. + // + // RequestMessageId is a required field + RequestMessageId *int64 `locationName:"requestMessageId" type:"integer" required:"true"` + + // Whether to use extended IDs in the message. + UseExtendedIds *bool `locationName:"useExtendedIds" type:"boolean"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ObdInterface) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ObdInterface) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *ObdInterface) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ObdInterface"} + if s.Name == nil { + invalidParams.Add(request.NewErrParamRequired("Name")) + } + if s.Name != nil && len(*s.Name) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Name", 1)) + } + if s.ObdStandard != nil && len(*s.ObdStandard) < 1 { + invalidParams.Add(request.NewErrParamMinLen("ObdStandard", 1)) + } + if s.RequestMessageId == nil { + invalidParams.Add(request.NewErrParamRequired("RequestMessageId")) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetDtcRequestIntervalSeconds sets the DtcRequestIntervalSeconds field's value. +func (s *ObdInterface) SetDtcRequestIntervalSeconds(v int64) *ObdInterface { + s.DtcRequestIntervalSeconds = &v + return s +} + +// SetHasTransmissionEcu sets the HasTransmissionEcu field's value. +func (s *ObdInterface) SetHasTransmissionEcu(v bool) *ObdInterface { + s.HasTransmissionEcu = &v + return s +} + +// SetName sets the Name field's value. +func (s *ObdInterface) SetName(v string) *ObdInterface { + s.Name = &v + return s +} + +// SetObdStandard sets the ObdStandard field's value. +func (s *ObdInterface) SetObdStandard(v string) *ObdInterface { + s.ObdStandard = &v + return s +} + +// SetPidRequestIntervalSeconds sets the PidRequestIntervalSeconds field's value. +func (s *ObdInterface) SetPidRequestIntervalSeconds(v int64) *ObdInterface { + s.PidRequestIntervalSeconds = &v + return s +} + +// SetRequestMessageId sets the RequestMessageId field's value. +func (s *ObdInterface) SetRequestMessageId(v int64) *ObdInterface { + s.RequestMessageId = &v + return s +} + +// SetUseExtendedIds sets the UseExtendedIds field's value. +func (s *ObdInterface) SetUseExtendedIds(v bool) *ObdInterface { + s.UseExtendedIds = &v + return s +} + +// Information about signal messages using the on-board diagnostics (OBD) II +// protocol in a vehicle. +type ObdSignal struct { + _ struct{} `type:"structure"` + + // The number of bits to mask in a message. + BitMaskLength *int64 `locationName:"bitMaskLength" min:"1" type:"integer"` + + // The number of positions to shift bits in the message. + BitRightShift *int64 `locationName:"bitRightShift" type:"integer"` + + // The length of a message. + // + // ByteLength is a required field + ByteLength *int64 `locationName:"byteLength" min:"1" type:"integer" required:"true"` + + // Indicates where data appears in the message. + // + // Offset is a required field + Offset *float64 `locationName:"offset" type:"double" required:"true"` + + // The diagnostic code used to request data from a vehicle for this signal. + // + // Pid is a required field + Pid *int64 `locationName:"pid" type:"integer" required:"true"` + + // The length of the requested data. + // + // PidResponseLength is a required field + PidResponseLength *int64 `locationName:"pidResponseLength" min:"1" type:"integer" required:"true"` + + // A multiplier used to decode the message. + // + // Scaling is a required field + Scaling *float64 `locationName:"scaling" type:"double" required:"true"` + + // The mode of operation (diagnostic service) in a message. + // + // ServiceMode is a required field + ServiceMode *int64 `locationName:"serviceMode" type:"integer" required:"true"` + + // Indicates the beginning of the message. + // + // StartByte is a required field + StartByte *int64 `locationName:"startByte" type:"integer" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ObdSignal) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ObdSignal) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *ObdSignal) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ObdSignal"} + if s.BitMaskLength != nil && *s.BitMaskLength < 1 { + invalidParams.Add(request.NewErrParamMinValue("BitMaskLength", 1)) + } + if s.ByteLength == nil { + invalidParams.Add(request.NewErrParamRequired("ByteLength")) + } + if s.ByteLength != nil && *s.ByteLength < 1 { + invalidParams.Add(request.NewErrParamMinValue("ByteLength", 1)) + } + if s.Offset == nil { + invalidParams.Add(request.NewErrParamRequired("Offset")) + } + if s.Pid == nil { + invalidParams.Add(request.NewErrParamRequired("Pid")) + } + if s.PidResponseLength == nil { + invalidParams.Add(request.NewErrParamRequired("PidResponseLength")) + } + if s.PidResponseLength != nil && *s.PidResponseLength < 1 { + invalidParams.Add(request.NewErrParamMinValue("PidResponseLength", 1)) + } + if s.Scaling == nil { + invalidParams.Add(request.NewErrParamRequired("Scaling")) + } + if s.ServiceMode == nil { + invalidParams.Add(request.NewErrParamRequired("ServiceMode")) + } + if s.StartByte == nil { + invalidParams.Add(request.NewErrParamRequired("StartByte")) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetBitMaskLength sets the BitMaskLength field's value. +func (s *ObdSignal) SetBitMaskLength(v int64) *ObdSignal { + s.BitMaskLength = &v + return s +} + +// SetBitRightShift sets the BitRightShift field's value. +func (s *ObdSignal) SetBitRightShift(v int64) *ObdSignal { + s.BitRightShift = &v + return s +} + +// SetByteLength sets the ByteLength field's value. +func (s *ObdSignal) SetByteLength(v int64) *ObdSignal { + s.ByteLength = &v + return s +} + +// SetOffset sets the Offset field's value. +func (s *ObdSignal) SetOffset(v float64) *ObdSignal { + s.Offset = &v + return s +} + +// SetPid sets the Pid field's value. +func (s *ObdSignal) SetPid(v int64) *ObdSignal { + s.Pid = &v + return s +} + +// SetPidResponseLength sets the PidResponseLength field's value. +func (s *ObdSignal) SetPidResponseLength(v int64) *ObdSignal { + s.PidResponseLength = &v + return s +} + +// SetScaling sets the Scaling field's value. +func (s *ObdSignal) SetScaling(v float64) *ObdSignal { + s.Scaling = &v + return s +} + +// SetServiceMode sets the ServiceMode field's value. +func (s *ObdSignal) SetServiceMode(v int64) *ObdSignal { + s.ServiceMode = &v + return s +} + +// SetStartByte sets the StartByte field's value. +func (s *ObdSignal) SetStartByte(v int64) *ObdSignal { + s.StartByte = &v + return s +} + +type PutLoggingOptionsInput struct { + _ struct{} `type:"structure"` + + // Creates or updates the log delivery option to Amazon CloudWatch Logs. + // + // CloudWatchLogDelivery is a required field + CloudWatchLogDelivery *CloudWatchLogDeliveryOptions `locationName:"cloudWatchLogDelivery" type:"structure" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s PutLoggingOptionsInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s PutLoggingOptionsInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *PutLoggingOptionsInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "PutLoggingOptionsInput"} + if s.CloudWatchLogDelivery == nil { + invalidParams.Add(request.NewErrParamRequired("CloudWatchLogDelivery")) + } + if s.CloudWatchLogDelivery != nil { + if err := s.CloudWatchLogDelivery.Validate(); err != nil { + invalidParams.AddNested("CloudWatchLogDelivery", err.(request.ErrInvalidParams)) + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetCloudWatchLogDelivery sets the CloudWatchLogDelivery field's value. +func (s *PutLoggingOptionsInput) SetCloudWatchLogDelivery(v *CloudWatchLogDeliveryOptions) *PutLoggingOptionsInput { + s.CloudWatchLogDelivery = v + return s +} + +type PutLoggingOptionsOutput struct { + _ struct{} `type:"structure"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s PutLoggingOptionsOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s PutLoggingOptionsOutput) GoString() string { + return s.String() +} + +type RegisterAccountInput struct { + _ struct{} `type:"structure"` + + // The IAM resource that allows Amazon Web Services IoT FleetWise to send data + // to Amazon Timestream. + // + // Deprecated: iamResources is no longer used or needed as input + IamResources *IamResources `locationName:"iamResources" deprecated:"true" type:"structure"` + + // The registered Amazon Timestream resources that Amazon Web Services IoT FleetWise + // edge agent software can transfer your vehicle data to. + // + // TimestreamResources is a required field + TimestreamResources *TimestreamResources `locationName:"timestreamResources" type:"structure" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s RegisterAccountInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s RegisterAccountInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *RegisterAccountInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "RegisterAccountInput"} + if s.TimestreamResources == nil { + invalidParams.Add(request.NewErrParamRequired("TimestreamResources")) + } + if s.IamResources != nil { + if err := s.IamResources.Validate(); err != nil { + invalidParams.AddNested("IamResources", err.(request.ErrInvalidParams)) + } + } + if s.TimestreamResources != nil { + if err := s.TimestreamResources.Validate(); err != nil { + invalidParams.AddNested("TimestreamResources", err.(request.ErrInvalidParams)) + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetIamResources sets the IamResources field's value. +func (s *RegisterAccountInput) SetIamResources(v *IamResources) *RegisterAccountInput { + s.IamResources = v + return s +} + +// SetTimestreamResources sets the TimestreamResources field's value. +func (s *RegisterAccountInput) SetTimestreamResources(v *TimestreamResources) *RegisterAccountInput { + s.TimestreamResources = v + return s +} + +type RegisterAccountOutput struct { + _ struct{} `type:"structure"` + + // The time the account was registered, in seconds since epoch (January 1, 1970 + // at midnight UTC time). + // + // CreationTime is a required field + CreationTime *time.Time `locationName:"creationTime" type:"timestamp" required:"true"` + + // The registered IAM resource that allows Amazon Web Services IoT FleetWise + // to send data to Amazon Timestream. + // + // IamResources is a required field + IamResources *IamResources `locationName:"iamResources" type:"structure" required:"true"` + + // The time this registration was last updated, in seconds since epoch (January + // 1, 1970 at midnight UTC time). + // + // LastModificationTime is a required field + LastModificationTime *time.Time `locationName:"lastModificationTime" type:"timestamp" required:"true"` + + // The status of registering your Amazon Web Services account, IAM role, and + // Timestream resources. + // + // RegisterAccountStatus is a required field + RegisterAccountStatus *string `locationName:"registerAccountStatus" type:"string" required:"true" enum:"RegistrationStatus"` + + // The registered Amazon Timestream resources that Amazon Web Services IoT FleetWise + // edge agent software can transfer your vehicle data to. + // + // TimestreamResources is a required field + TimestreamResources *TimestreamResources `locationName:"timestreamResources" type:"structure" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s RegisterAccountOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s RegisterAccountOutput) GoString() string { + return s.String() +} + +// SetCreationTime sets the CreationTime field's value. +func (s *RegisterAccountOutput) SetCreationTime(v time.Time) *RegisterAccountOutput { + s.CreationTime = &v + return s +} + +// SetIamResources sets the IamResources field's value. +func (s *RegisterAccountOutput) SetIamResources(v *IamResources) *RegisterAccountOutput { + s.IamResources = v + return s +} + +// SetLastModificationTime sets the LastModificationTime field's value. +func (s *RegisterAccountOutput) SetLastModificationTime(v time.Time) *RegisterAccountOutput { + s.LastModificationTime = &v + return s +} + +// SetRegisterAccountStatus sets the RegisterAccountStatus field's value. +func (s *RegisterAccountOutput) SetRegisterAccountStatus(v string) *RegisterAccountOutput { + s.RegisterAccountStatus = &v + return s +} + +// SetTimestreamResources sets the TimestreamResources field's value. +func (s *RegisterAccountOutput) SetTimestreamResources(v *TimestreamResources) *RegisterAccountOutput { + s.TimestreamResources = v + return s +} + +// The resource wasn't found. +type ResourceNotFoundException struct { + _ struct{} `type:"structure"` + RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` + + Message_ *string `locationName:"message" type:"string"` + + // The identifier of the resource that wasn't found. + // + // ResourceId is a required field + ResourceId *string `locationName:"resourceId" type:"string" required:"true"` + + // The type of resource that wasn't found. + // + // ResourceType is a required field + ResourceType *string `locationName:"resourceType" type:"string" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ResourceNotFoundException) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ResourceNotFoundException) GoString() string { + return s.String() +} + +func newErrorResourceNotFoundException(v protocol.ResponseMetadata) error { + return &ResourceNotFoundException{ + RespMetadata: v, + } +} + +// Code returns the exception type name. +func (s *ResourceNotFoundException) Code() string { + return "ResourceNotFoundException" +} + +// Message returns the exception's message. +func (s *ResourceNotFoundException) Message() string { + if s.Message_ != nil { + return *s.Message_ + } + return "" +} + +// OrigErr always returns nil, satisfies awserr.Error interface. +func (s *ResourceNotFoundException) OrigErr() error { + return nil +} + +func (s *ResourceNotFoundException) Error() string { + return fmt.Sprintf("%s: %s\n%s", s.Code(), s.Message(), s.String()) +} + +// Status code returns the HTTP status code for the request's response error. +func (s *ResourceNotFoundException) StatusCode() int { + return s.RespMetadata.StatusCode +} + +// RequestID returns the service's response RequestID for request. +func (s *ResourceNotFoundException) RequestID() string { + return s.RespMetadata.RequestID +} + +// An input component that reports the environmental condition of a vehicle. +// +// You can collect data about fluid levels, temperatures, vibrations, or battery +// voltage from sensors. +type Sensor struct { + _ struct{} `type:"structure"` + + // A list of possible values a sensor can take. + AllowedValues []*string `locationName:"allowedValues" type:"list"` + + // The specified data type of the sensor. + // + // DataType is a required field + DataType *string `locationName:"dataType" type:"string" required:"true" enum:"NodeDataType"` + + // A brief description of a sensor. + Description *string `locationName:"description" min:"1" type:"string"` + + // The fully qualified name of the sensor. For example, the fully qualified + // name of a sensor might be Vehicle.Body.Engine.Battery. + // + // FullyQualifiedName is a required field + FullyQualifiedName *string `locationName:"fullyQualifiedName" type:"string" required:"true"` + + // The specified possible maximum value of the sensor. + Max *float64 `locationName:"max" type:"double"` + + // The specified possible minimum value of the sensor. + Min *float64 `locationName:"min" type:"double"` + + // The scientific unit of measurement for data collected by the sensor. + Unit *string `locationName:"unit" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s Sensor) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s Sensor) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *Sensor) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "Sensor"} + if s.DataType == nil { + invalidParams.Add(request.NewErrParamRequired("DataType")) + } + if s.Description != nil && len(*s.Description) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Description", 1)) + } + if s.FullyQualifiedName == nil { + invalidParams.Add(request.NewErrParamRequired("FullyQualifiedName")) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetAllowedValues sets the AllowedValues field's value. +func (s *Sensor) SetAllowedValues(v []*string) *Sensor { + s.AllowedValues = v + return s +} + +// SetDataType sets the DataType field's value. +func (s *Sensor) SetDataType(v string) *Sensor { + s.DataType = &v + return s +} + +// SetDescription sets the Description field's value. +func (s *Sensor) SetDescription(v string) *Sensor { + s.Description = &v + return s +} + +// SetFullyQualifiedName sets the FullyQualifiedName field's value. +func (s *Sensor) SetFullyQualifiedName(v string) *Sensor { + s.FullyQualifiedName = &v + return s +} + +// SetMax sets the Max field's value. +func (s *Sensor) SetMax(v float64) *Sensor { + s.Max = &v + return s +} + +// SetMin sets the Min field's value. +func (s *Sensor) SetMin(v float64) *Sensor { + s.Min = &v + return s +} + +// SetUnit sets the Unit field's value. +func (s *Sensor) SetUnit(v string) *Sensor { + s.Unit = &v + return s +} + +// Information about a collection of standardized signals, which can be attributes, +// branches, sensors, or actuators. +type SignalCatalogSummary struct { + _ struct{} `type:"structure"` + + // The Amazon Resource Name (ARN) of the signal catalog. + Arn *string `locationName:"arn" type:"string"` + + // The time the signal catalog was created in seconds since epoch (January 1, + // 1970 at midnight UTC time). + CreationTime *time.Time `locationName:"creationTime" type:"timestamp"` + + // The time the signal catalog was last updated in seconds since epoch (January + // 1, 1970 at midnight UTC time). + LastModificationTime *time.Time `locationName:"lastModificationTime" type:"timestamp"` + + // The name of the signal catalog. + Name *string `locationName:"name" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s SignalCatalogSummary) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s SignalCatalogSummary) GoString() string { + return s.String() +} + +// SetArn sets the Arn field's value. +func (s *SignalCatalogSummary) SetArn(v string) *SignalCatalogSummary { + s.Arn = &v + return s +} + +// SetCreationTime sets the CreationTime field's value. +func (s *SignalCatalogSummary) SetCreationTime(v time.Time) *SignalCatalogSummary { + s.CreationTime = &v + return s +} + +// SetLastModificationTime sets the LastModificationTime field's value. +func (s *SignalCatalogSummary) SetLastModificationTime(v time.Time) *SignalCatalogSummary { + s.LastModificationTime = &v + return s +} + +// SetName sets the Name field's value. +func (s *SignalCatalogSummary) SetName(v string) *SignalCatalogSummary { + s.Name = &v + return s +} + +// Information about a signal decoder. +type SignalDecoder struct { + _ struct{} `type:"structure"` + + // Information about signal decoder using the Controller Area Network (CAN) + // protocol. + CanSignal *CanSignal `locationName:"canSignal" type:"structure"` + + // The fully qualified name of a signal decoder as defined in a vehicle model. + // + // FullyQualifiedName is a required field + FullyQualifiedName *string `locationName:"fullyQualifiedName" min:"1" type:"string" required:"true"` + + // The ID of a network interface that specifies what network protocol a vehicle + // follows. + // + // InterfaceId is a required field + InterfaceId *string `locationName:"interfaceId" min:"1" type:"string" required:"true"` + + // Information about signal decoder using the On-board diagnostic (OBD) II protocol. + ObdSignal *ObdSignal `locationName:"obdSignal" type:"structure"` + + // The network protocol for the vehicle. For example, CAN_SIGNAL specifies a + // protocol that defines how data is communicated between electronic control + // units (ECUs). OBD_SIGNAL specifies a protocol that defines how self-diagnostic + // data is communicated between ECUs. + // + // Type is a required field + Type *string `locationName:"type" type:"string" required:"true" enum:"SignalDecoderType"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s SignalDecoder) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s SignalDecoder) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *SignalDecoder) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "SignalDecoder"} + if s.FullyQualifiedName == nil { + invalidParams.Add(request.NewErrParamRequired("FullyQualifiedName")) + } + if s.FullyQualifiedName != nil && len(*s.FullyQualifiedName) < 1 { + invalidParams.Add(request.NewErrParamMinLen("FullyQualifiedName", 1)) + } + if s.InterfaceId == nil { + invalidParams.Add(request.NewErrParamRequired("InterfaceId")) + } + if s.InterfaceId != nil && len(*s.InterfaceId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("InterfaceId", 1)) + } + if s.Type == nil { + invalidParams.Add(request.NewErrParamRequired("Type")) + } + if s.CanSignal != nil { + if err := s.CanSignal.Validate(); err != nil { + invalidParams.AddNested("CanSignal", err.(request.ErrInvalidParams)) + } + } + if s.ObdSignal != nil { + if err := s.ObdSignal.Validate(); err != nil { + invalidParams.AddNested("ObdSignal", err.(request.ErrInvalidParams)) + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetCanSignal sets the CanSignal field's value. +func (s *SignalDecoder) SetCanSignal(v *CanSignal) *SignalDecoder { + s.CanSignal = v + return s +} + +// SetFullyQualifiedName sets the FullyQualifiedName field's value. +func (s *SignalDecoder) SetFullyQualifiedName(v string) *SignalDecoder { + s.FullyQualifiedName = &v + return s +} + +// SetInterfaceId sets the InterfaceId field's value. +func (s *SignalDecoder) SetInterfaceId(v string) *SignalDecoder { + s.InterfaceId = &v + return s +} + +// SetObdSignal sets the ObdSignal field's value. +func (s *SignalDecoder) SetObdSignal(v *ObdSignal) *SignalDecoder { + s.ObdSignal = v + return s +} + +// SetType sets the Type field's value. +func (s *SignalDecoder) SetType(v string) *SignalDecoder { + s.Type = &v + return s +} + +// Information about a signal. +type SignalInformation struct { + _ struct{} `type:"structure"` + + // The maximum number of samples to collect. + MaxSampleCount *int64 `locationName:"maxSampleCount" min:"1" type:"long"` + + // The minimum duration of time (in milliseconds) between two triggering events + // to collect data. + // + // If a signal changes often, you might want to collect data at a slower rate. + MinimumSamplingIntervalMs *int64 `locationName:"minimumSamplingIntervalMs" type:"long"` + + // The name of the signal. + // + // Name is a required field + Name *string `locationName:"name" min:"1" type:"string" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s SignalInformation) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s SignalInformation) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *SignalInformation) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "SignalInformation"} + if s.MaxSampleCount != nil && *s.MaxSampleCount < 1 { + invalidParams.Add(request.NewErrParamMinValue("MaxSampleCount", 1)) + } + if s.Name == nil { + invalidParams.Add(request.NewErrParamRequired("Name")) + } + if s.Name != nil && len(*s.Name) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Name", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetMaxSampleCount sets the MaxSampleCount field's value. +func (s *SignalInformation) SetMaxSampleCount(v int64) *SignalInformation { + s.MaxSampleCount = &v + return s +} + +// SetMinimumSamplingIntervalMs sets the MinimumSamplingIntervalMs field's value. +func (s *SignalInformation) SetMinimumSamplingIntervalMs(v int64) *SignalInformation { + s.MinimumSamplingIntervalMs = &v + return s +} + +// SetName sets the Name field's value. +func (s *SignalInformation) SetName(v string) *SignalInformation { + s.Name = &v + return s +} + +// A set of key/value pairs that are used to manage the resource. +type Tag struct { + _ struct{} `type:"structure"` + + // The tag's key. + // + // Key is a required field + Key *string `min:"1" type:"string" required:"true"` + + // The tag's value. + // + // Value is a required field + Value *string `type:"string" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s Tag) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s Tag) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *Tag) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "Tag"} + if s.Key == nil { + invalidParams.Add(request.NewErrParamRequired("Key")) + } + if s.Key != nil && len(*s.Key) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Key", 1)) + } + if s.Value == nil { + invalidParams.Add(request.NewErrParamRequired("Value")) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetKey sets the Key field's value. +func (s *Tag) SetKey(v string) *Tag { + s.Key = &v + return s +} + +// SetValue sets the Value field's value. +func (s *Tag) SetValue(v string) *Tag { + s.Value = &v + return s +} + +type TagResourceInput struct { + _ struct{} `type:"structure"` + + // The ARN of the resource. + // + // ResourceARN is a required field + ResourceARN *string `min:"1" type:"string" required:"true"` + + // The new or modified tags for the resource. + // + // Tags is a required field + Tags []*Tag `type:"list" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s TagResourceInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s TagResourceInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *TagResourceInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "TagResourceInput"} + if s.ResourceARN == nil { + invalidParams.Add(request.NewErrParamRequired("ResourceARN")) + } + if s.ResourceARN != nil && len(*s.ResourceARN) < 1 { + invalidParams.Add(request.NewErrParamMinLen("ResourceARN", 1)) + } + if s.Tags == nil { + invalidParams.Add(request.NewErrParamRequired("Tags")) + } + if s.Tags != nil { + for i, v := range s.Tags { + if v == nil { + continue + } + if err := v.Validate(); err != nil { + invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Tags", i), err.(request.ErrInvalidParams)) + } + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetResourceARN sets the ResourceARN field's value. +func (s *TagResourceInput) SetResourceARN(v string) *TagResourceInput { + s.ResourceARN = &v + return s +} + +// SetTags sets the Tags field's value. +func (s *TagResourceInput) SetTags(v []*Tag) *TagResourceInput { + s.Tags = v + return s +} + +type TagResourceOutput struct { + _ struct{} `type:"structure"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s TagResourceOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s TagResourceOutput) GoString() string { + return s.String() +} + +// The request couldn't be completed due to throttling. +type ThrottlingException struct { + _ struct{} `type:"structure"` + RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` + + Message_ *string `locationName:"message" type:"string"` + + // The quota identifier of the applied throttling rules for this request. + QuotaCode *string `locationName:"quotaCode" type:"string"` + + // The number of seconds to wait before retrying the command. + RetryAfterSeconds *int64 `locationName:"retryAfterSeconds" type:"integer"` + + // The code for the service that couldn't be completed due to throttling. + ServiceCode *string `locationName:"serviceCode" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ThrottlingException) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ThrottlingException) GoString() string { + return s.String() +} + +func newErrorThrottlingException(v protocol.ResponseMetadata) error { + return &ThrottlingException{ + RespMetadata: v, + } +} + +// Code returns the exception type name. +func (s *ThrottlingException) Code() string { + return "ThrottlingException" +} + +// Message returns the exception's message. +func (s *ThrottlingException) Message() string { + if s.Message_ != nil { + return *s.Message_ + } + return "" +} + +// OrigErr always returns nil, satisfies awserr.Error interface. +func (s *ThrottlingException) OrigErr() error { + return nil +} + +func (s *ThrottlingException) Error() string { + return fmt.Sprintf("%s: %s\n%s", s.Code(), s.Message(), s.String()) +} + +// Status code returns the HTTP status code for the request's response error. +func (s *ThrottlingException) StatusCode() int { + return s.RespMetadata.StatusCode +} + +// RequestID returns the service's response RequestID for request. +func (s *ThrottlingException) RequestID() string { + return s.RespMetadata.RequestID +} + +// Information about a collection scheme that uses a time period to decide how +// often to collect data. +type TimeBasedCollectionScheme struct { + _ struct{} `type:"structure"` + + // The time period (in milliseconds) to decide how often to collect data. For + // example, if the time period is 60000, the Edge Agent software collects data + // once every minute. + // + // PeriodMs is a required field + PeriodMs *int64 `locationName:"periodMs" min:"10000" type:"long" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s TimeBasedCollectionScheme) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s TimeBasedCollectionScheme) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *TimeBasedCollectionScheme) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "TimeBasedCollectionScheme"} + if s.PeriodMs == nil { + invalidParams.Add(request.NewErrParamRequired("PeriodMs")) + } + if s.PeriodMs != nil && *s.PeriodMs < 10000 { + invalidParams.Add(request.NewErrParamMinValue("PeriodMs", 10000)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetPeriodMs sets the PeriodMs field's value. +func (s *TimeBasedCollectionScheme) SetPeriodMs(v int64) *TimeBasedCollectionScheme { + s.PeriodMs = &v + return s +} + +// Information about the registered Amazon Timestream resources or errors, if +// any. +type TimestreamRegistrationResponse struct { + _ struct{} `type:"structure"` + + // A message associated with a registration error. + ErrorMessage *string `locationName:"errorMessage" type:"string"` + + // The status of registering your Amazon Timestream resources. The status can + // be one of REGISTRATION_SUCCESS, REGISTRATION_PENDING, REGISTRATION_FAILURE. + // + // RegistrationStatus is a required field + RegistrationStatus *string `locationName:"registrationStatus" type:"string" required:"true" enum:"RegistrationStatus"` + + // The Amazon Resource Name (ARN) of the Timestream database. + TimestreamDatabaseArn *string `locationName:"timestreamDatabaseArn" type:"string"` + + // The name of the Timestream database. + // + // TimestreamDatabaseName is a required field + TimestreamDatabaseName *string `locationName:"timestreamDatabaseName" min:"3" type:"string" required:"true"` + + // The ARN of the Timestream database table. + TimestreamTableArn *string `locationName:"timestreamTableArn" type:"string"` + + // The name of the Timestream database table. + // + // TimestreamTableName is a required field + TimestreamTableName *string `locationName:"timestreamTableName" min:"3" type:"string" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s TimestreamRegistrationResponse) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s TimestreamRegistrationResponse) GoString() string { + return s.String() +} + +// SetErrorMessage sets the ErrorMessage field's value. +func (s *TimestreamRegistrationResponse) SetErrorMessage(v string) *TimestreamRegistrationResponse { + s.ErrorMessage = &v + return s +} + +// SetRegistrationStatus sets the RegistrationStatus field's value. +func (s *TimestreamRegistrationResponse) SetRegistrationStatus(v string) *TimestreamRegistrationResponse { + s.RegistrationStatus = &v + return s +} + +// SetTimestreamDatabaseArn sets the TimestreamDatabaseArn field's value. +func (s *TimestreamRegistrationResponse) SetTimestreamDatabaseArn(v string) *TimestreamRegistrationResponse { + s.TimestreamDatabaseArn = &v + return s +} + +// SetTimestreamDatabaseName sets the TimestreamDatabaseName field's value. +func (s *TimestreamRegistrationResponse) SetTimestreamDatabaseName(v string) *TimestreamRegistrationResponse { + s.TimestreamDatabaseName = &v + return s +} + +// SetTimestreamTableArn sets the TimestreamTableArn field's value. +func (s *TimestreamRegistrationResponse) SetTimestreamTableArn(v string) *TimestreamRegistrationResponse { + s.TimestreamTableArn = &v + return s +} + +// SetTimestreamTableName sets the TimestreamTableName field's value. +func (s *TimestreamRegistrationResponse) SetTimestreamTableName(v string) *TimestreamRegistrationResponse { + s.TimestreamTableName = &v + return s +} + +// The registered Amazon Timestream resources that Amazon Web Services IoT FleetWise +// edge agent software can transfer your vehicle data to. +type TimestreamResources struct { + _ struct{} `type:"structure"` + + // The name of the registered Amazon Timestream database. + // + // TimestreamDatabaseName is a required field + TimestreamDatabaseName *string `locationName:"timestreamDatabaseName" min:"3" type:"string" required:"true"` + + // The name of the registered Amazon Timestream database table. + // + // TimestreamTableName is a required field + TimestreamTableName *string `locationName:"timestreamTableName" min:"3" type:"string" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s TimestreamResources) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s TimestreamResources) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *TimestreamResources) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "TimestreamResources"} + if s.TimestreamDatabaseName == nil { + invalidParams.Add(request.NewErrParamRequired("TimestreamDatabaseName")) + } + if s.TimestreamDatabaseName != nil && len(*s.TimestreamDatabaseName) < 3 { + invalidParams.Add(request.NewErrParamMinLen("TimestreamDatabaseName", 3)) + } + if s.TimestreamTableName == nil { + invalidParams.Add(request.NewErrParamRequired("TimestreamTableName")) + } + if s.TimestreamTableName != nil && len(*s.TimestreamTableName) < 3 { + invalidParams.Add(request.NewErrParamMinLen("TimestreamTableName", 3)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetTimestreamDatabaseName sets the TimestreamDatabaseName field's value. +func (s *TimestreamResources) SetTimestreamDatabaseName(v string) *TimestreamResources { + s.TimestreamDatabaseName = &v + return s +} + +// SetTimestreamTableName sets the TimestreamTableName field's value. +func (s *TimestreamResources) SetTimestreamTableName(v string) *TimestreamResources { + s.TimestreamTableName = &v + return s +} + +type UntagResourceInput struct { + _ struct{} `type:"structure"` + + // The ARN of the resource. + // + // ResourceARN is a required field + ResourceARN *string `min:"1" type:"string" required:"true"` + + // A list of the keys of the tags to be removed from the resource. + // + // TagKeys is a required field + TagKeys []*string `type:"list" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UntagResourceInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UntagResourceInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *UntagResourceInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "UntagResourceInput"} + if s.ResourceARN == nil { + invalidParams.Add(request.NewErrParamRequired("ResourceARN")) + } + if s.ResourceARN != nil && len(*s.ResourceARN) < 1 { + invalidParams.Add(request.NewErrParamMinLen("ResourceARN", 1)) + } + if s.TagKeys == nil { + invalidParams.Add(request.NewErrParamRequired("TagKeys")) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetResourceARN sets the ResourceARN field's value. +func (s *UntagResourceInput) SetResourceARN(v string) *UntagResourceInput { + s.ResourceARN = &v + return s +} + +// SetTagKeys sets the TagKeys field's value. +func (s *UntagResourceInput) SetTagKeys(v []*string) *UntagResourceInput { + s.TagKeys = v + return s +} + +type UntagResourceOutput struct { + _ struct{} `type:"structure"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UntagResourceOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UntagResourceOutput) GoString() string { + return s.String() +} + +type UpdateCampaignInput struct { + _ struct{} `type:"structure"` + + // Specifies how to update a campaign. The action can be one of the following: + // + // * APPROVE - To approve delivering a data collection scheme to vehicles. + // + // * SUSPEND - To suspend collecting signal data. + // + // * RESUME - To resume collecting signal data. + // + // * UPDATE - To update a campaign. + // + // Action is a required field + Action *string `locationName:"action" type:"string" required:"true" enum:"UpdateCampaignAction"` + + // A list of vehicle attributes to associate with a signal. + // + // Default: An empty array + DataExtraDimensions []*string `locationName:"dataExtraDimensions" type:"list"` + + // The description of the campaign. + Description *string `locationName:"description" min:"1" type:"string"` + + // The name of the campaign to update. + // + // Name is a required field + Name *string `locationName:"name" min:"1" type:"string" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UpdateCampaignInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UpdateCampaignInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *UpdateCampaignInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "UpdateCampaignInput"} + if s.Action == nil { + invalidParams.Add(request.NewErrParamRequired("Action")) + } + if s.Description != nil && len(*s.Description) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Description", 1)) + } + if s.Name == nil { + invalidParams.Add(request.NewErrParamRequired("Name")) + } + if s.Name != nil && len(*s.Name) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Name", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetAction sets the Action field's value. +func (s *UpdateCampaignInput) SetAction(v string) *UpdateCampaignInput { + s.Action = &v + return s +} + +// SetDataExtraDimensions sets the DataExtraDimensions field's value. +func (s *UpdateCampaignInput) SetDataExtraDimensions(v []*string) *UpdateCampaignInput { + s.DataExtraDimensions = v + return s +} + +// SetDescription sets the Description field's value. +func (s *UpdateCampaignInput) SetDescription(v string) *UpdateCampaignInput { + s.Description = &v + return s +} + +// SetName sets the Name field's value. +func (s *UpdateCampaignInput) SetName(v string) *UpdateCampaignInput { + s.Name = &v + return s +} + +type UpdateCampaignOutput struct { + _ struct{} `type:"structure"` + + // The Amazon Resource Name (ARN) of the campaign. + Arn *string `locationName:"arn" type:"string"` + + // The name of the updated campaign. + Name *string `locationName:"name" min:"1" type:"string"` + + // The state of a campaign. The status can be one of: + // + // * CREATING - Amazon Web Services IoT FleetWise is processing your request + // to create the campaign. + // + // * WAITING_FOR_APPROVAL - After a campaign is created, it enters the WAITING_FOR_APPROVAL + // state. To allow Amazon Web Services IoT FleetWise to deploy the campaign + // to the target vehicle or fleet, use the API operation to approve the campaign. + // + // * RUNNING - The campaign is active. + // + // * SUSPENDED - The campaign is suspended. To resume the campaign, use the + // API operation. + Status *string `locationName:"status" type:"string" enum:"CampaignStatus"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UpdateCampaignOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UpdateCampaignOutput) GoString() string { + return s.String() +} + +// SetArn sets the Arn field's value. +func (s *UpdateCampaignOutput) SetArn(v string) *UpdateCampaignOutput { + s.Arn = &v + return s +} + +// SetName sets the Name field's value. +func (s *UpdateCampaignOutput) SetName(v string) *UpdateCampaignOutput { + s.Name = &v + return s +} + +// SetStatus sets the Status field's value. +func (s *UpdateCampaignOutput) SetStatus(v string) *UpdateCampaignOutput { + s.Status = &v + return s +} + +type UpdateDecoderManifestInput struct { + _ struct{} `type:"structure"` + + // A brief description of the decoder manifest to update. + Description *string `locationName:"description" min:"1" type:"string"` + + // The name of the decoder manifest to update. + // + // Name is a required field + Name *string `locationName:"name" min:"1" type:"string" required:"true"` + + // A list of information about the network interfaces to add to the decoder + // manifest. + NetworkInterfacesToAdd []*NetworkInterface `locationName:"networkInterfacesToAdd" min:"1" type:"list"` + + // A list of network interfaces to remove from the decoder manifest. + NetworkInterfacesToRemove []*string `locationName:"networkInterfacesToRemove" min:"1" type:"list"` + + // A list of information about the network interfaces to update in the decoder + // manifest. + NetworkInterfacesToUpdate []*NetworkInterface `locationName:"networkInterfacesToUpdate" min:"1" type:"list"` + + // A list of information about decoding additional signals to add to the decoder + // manifest. + SignalDecodersToAdd []*SignalDecoder `locationName:"signalDecodersToAdd" min:"1" type:"list"` + + // A list of signal decoders to remove from the decoder manifest. + SignalDecodersToRemove []*string `locationName:"signalDecodersToRemove" min:"1" type:"list"` + + // A list of updated information about decoding signals to update in the decoder + // manifest. + SignalDecodersToUpdate []*SignalDecoder `locationName:"signalDecodersToUpdate" min:"1" type:"list"` + + // The state of the decoder manifest. If the status is ACTIVE, the decoder manifest + // can't be edited. If the status is DRAFT, you can edit the decoder manifest. + Status *string `locationName:"status" type:"string" enum:"ManifestStatus"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UpdateDecoderManifestInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UpdateDecoderManifestInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *UpdateDecoderManifestInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "UpdateDecoderManifestInput"} + if s.Description != nil && len(*s.Description) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Description", 1)) + } + if s.Name == nil { + invalidParams.Add(request.NewErrParamRequired("Name")) + } + if s.Name != nil && len(*s.Name) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Name", 1)) + } + if s.NetworkInterfacesToAdd != nil && len(s.NetworkInterfacesToAdd) < 1 { + invalidParams.Add(request.NewErrParamMinLen("NetworkInterfacesToAdd", 1)) + } + if s.NetworkInterfacesToRemove != nil && len(s.NetworkInterfacesToRemove) < 1 { + invalidParams.Add(request.NewErrParamMinLen("NetworkInterfacesToRemove", 1)) + } + if s.NetworkInterfacesToUpdate != nil && len(s.NetworkInterfacesToUpdate) < 1 { + invalidParams.Add(request.NewErrParamMinLen("NetworkInterfacesToUpdate", 1)) + } + if s.SignalDecodersToAdd != nil && len(s.SignalDecodersToAdd) < 1 { + invalidParams.Add(request.NewErrParamMinLen("SignalDecodersToAdd", 1)) + } + if s.SignalDecodersToRemove != nil && len(s.SignalDecodersToRemove) < 1 { + invalidParams.Add(request.NewErrParamMinLen("SignalDecodersToRemove", 1)) + } + if s.SignalDecodersToUpdate != nil && len(s.SignalDecodersToUpdate) < 1 { + invalidParams.Add(request.NewErrParamMinLen("SignalDecodersToUpdate", 1)) + } + if s.NetworkInterfacesToAdd != nil { + for i, v := range s.NetworkInterfacesToAdd { + if v == nil { + continue + } + if err := v.Validate(); err != nil { + invalidParams.AddNested(fmt.Sprintf("%s[%v]", "NetworkInterfacesToAdd", i), err.(request.ErrInvalidParams)) + } + } + } + if s.NetworkInterfacesToUpdate != nil { + for i, v := range s.NetworkInterfacesToUpdate { + if v == nil { + continue + } + if err := v.Validate(); err != nil { + invalidParams.AddNested(fmt.Sprintf("%s[%v]", "NetworkInterfacesToUpdate", i), err.(request.ErrInvalidParams)) + } + } + } + if s.SignalDecodersToAdd != nil { + for i, v := range s.SignalDecodersToAdd { + if v == nil { + continue + } + if err := v.Validate(); err != nil { + invalidParams.AddNested(fmt.Sprintf("%s[%v]", "SignalDecodersToAdd", i), err.(request.ErrInvalidParams)) + } + } + } + if s.SignalDecodersToUpdate != nil { + for i, v := range s.SignalDecodersToUpdate { + if v == nil { + continue + } + if err := v.Validate(); err != nil { + invalidParams.AddNested(fmt.Sprintf("%s[%v]", "SignalDecodersToUpdate", i), err.(request.ErrInvalidParams)) + } + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetDescription sets the Description field's value. +func (s *UpdateDecoderManifestInput) SetDescription(v string) *UpdateDecoderManifestInput { + s.Description = &v + return s +} + +// SetName sets the Name field's value. +func (s *UpdateDecoderManifestInput) SetName(v string) *UpdateDecoderManifestInput { + s.Name = &v + return s +} + +// SetNetworkInterfacesToAdd sets the NetworkInterfacesToAdd field's value. +func (s *UpdateDecoderManifestInput) SetNetworkInterfacesToAdd(v []*NetworkInterface) *UpdateDecoderManifestInput { + s.NetworkInterfacesToAdd = v + return s +} + +// SetNetworkInterfacesToRemove sets the NetworkInterfacesToRemove field's value. +func (s *UpdateDecoderManifestInput) SetNetworkInterfacesToRemove(v []*string) *UpdateDecoderManifestInput { + s.NetworkInterfacesToRemove = v + return s +} + +// SetNetworkInterfacesToUpdate sets the NetworkInterfacesToUpdate field's value. +func (s *UpdateDecoderManifestInput) SetNetworkInterfacesToUpdate(v []*NetworkInterface) *UpdateDecoderManifestInput { + s.NetworkInterfacesToUpdate = v + return s +} + +// SetSignalDecodersToAdd sets the SignalDecodersToAdd field's value. +func (s *UpdateDecoderManifestInput) SetSignalDecodersToAdd(v []*SignalDecoder) *UpdateDecoderManifestInput { + s.SignalDecodersToAdd = v + return s +} + +// SetSignalDecodersToRemove sets the SignalDecodersToRemove field's value. +func (s *UpdateDecoderManifestInput) SetSignalDecodersToRemove(v []*string) *UpdateDecoderManifestInput { + s.SignalDecodersToRemove = v + return s +} + +// SetSignalDecodersToUpdate sets the SignalDecodersToUpdate field's value. +func (s *UpdateDecoderManifestInput) SetSignalDecodersToUpdate(v []*SignalDecoder) *UpdateDecoderManifestInput { + s.SignalDecodersToUpdate = v + return s +} + +// SetStatus sets the Status field's value. +func (s *UpdateDecoderManifestInput) SetStatus(v string) *UpdateDecoderManifestInput { + s.Status = &v + return s +} + +type UpdateDecoderManifestOutput struct { + _ struct{} `type:"structure"` + + // The Amazon Resource Name (ARN) of the updated decoder manifest. + // + // Arn is a required field + Arn *string `locationName:"arn" type:"string" required:"true"` + + // The name of the updated decoder manifest. + // + // Name is a required field + Name *string `locationName:"name" min:"1" type:"string" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UpdateDecoderManifestOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UpdateDecoderManifestOutput) GoString() string { + return s.String() +} + +// SetArn sets the Arn field's value. +func (s *UpdateDecoderManifestOutput) SetArn(v string) *UpdateDecoderManifestOutput { + s.Arn = &v + return s +} + +// SetName sets the Name field's value. +func (s *UpdateDecoderManifestOutput) SetName(v string) *UpdateDecoderManifestOutput { + s.Name = &v + return s +} + +type UpdateFleetInput struct { + _ struct{} `type:"structure"` + + // An updated description of the fleet. + Description *string `locationName:"description" min:"1" type:"string"` + + // The ID of the fleet to update. + // + // FleetId is a required field + FleetId *string `locationName:"fleetId" min:"1" type:"string" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UpdateFleetInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UpdateFleetInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *UpdateFleetInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "UpdateFleetInput"} + if s.Description != nil && len(*s.Description) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Description", 1)) + } + if s.FleetId == nil { + invalidParams.Add(request.NewErrParamRequired("FleetId")) + } + if s.FleetId != nil && len(*s.FleetId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("FleetId", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetDescription sets the Description field's value. +func (s *UpdateFleetInput) SetDescription(v string) *UpdateFleetInput { + s.Description = &v + return s +} + +// SetFleetId sets the FleetId field's value. +func (s *UpdateFleetInput) SetFleetId(v string) *UpdateFleetInput { + s.FleetId = &v + return s +} + +type UpdateFleetOutput struct { + _ struct{} `type:"structure"` + + // The Amazon Resource Name (ARN) of the updated fleet. + Arn *string `locationName:"arn" type:"string"` + + // The ID of the updated fleet. + Id *string `locationName:"id" min:"1" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UpdateFleetOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UpdateFleetOutput) GoString() string { + return s.String() +} + +// SetArn sets the Arn field's value. +func (s *UpdateFleetOutput) SetArn(v string) *UpdateFleetOutput { + s.Arn = &v + return s +} + +// SetId sets the Id field's value. +func (s *UpdateFleetOutput) SetId(v string) *UpdateFleetOutput { + s.Id = &v + return s +} + +type UpdateModelManifestInput struct { + _ struct{} `type:"structure"` + + // A brief description of the vehicle model. + Description *string `locationName:"description" min:"1" type:"string"` + + // The name of the vehicle model to update. + // + // Name is a required field + Name *string `locationName:"name" min:"1" type:"string" required:"true"` + + // A list of fullyQualifiedName of nodes, which are a general abstraction of + // signals, to add to the vehicle model. + NodesToAdd []*string `locationName:"nodesToAdd" min:"1" type:"list"` + + // A list of fullyQualifiedName of nodes, which are a general abstraction of + // signals, to remove from the vehicle model. + NodesToRemove []*string `locationName:"nodesToRemove" min:"1" type:"list"` + + // The state of the vehicle model. If the status is ACTIVE, the vehicle model + // can't be edited. If the status is DRAFT, you can edit the vehicle model. + Status *string `locationName:"status" type:"string" enum:"ManifestStatus"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UpdateModelManifestInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UpdateModelManifestInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *UpdateModelManifestInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "UpdateModelManifestInput"} + if s.Description != nil && len(*s.Description) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Description", 1)) + } + if s.Name == nil { + invalidParams.Add(request.NewErrParamRequired("Name")) + } + if s.Name != nil && len(*s.Name) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Name", 1)) + } + if s.NodesToAdd != nil && len(s.NodesToAdd) < 1 { + invalidParams.Add(request.NewErrParamMinLen("NodesToAdd", 1)) + } + if s.NodesToRemove != nil && len(s.NodesToRemove) < 1 { + invalidParams.Add(request.NewErrParamMinLen("NodesToRemove", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetDescription sets the Description field's value. +func (s *UpdateModelManifestInput) SetDescription(v string) *UpdateModelManifestInput { + s.Description = &v + return s +} + +// SetName sets the Name field's value. +func (s *UpdateModelManifestInput) SetName(v string) *UpdateModelManifestInput { + s.Name = &v + return s +} + +// SetNodesToAdd sets the NodesToAdd field's value. +func (s *UpdateModelManifestInput) SetNodesToAdd(v []*string) *UpdateModelManifestInput { + s.NodesToAdd = v + return s +} + +// SetNodesToRemove sets the NodesToRemove field's value. +func (s *UpdateModelManifestInput) SetNodesToRemove(v []*string) *UpdateModelManifestInput { + s.NodesToRemove = v + return s +} + +// SetStatus sets the Status field's value. +func (s *UpdateModelManifestInput) SetStatus(v string) *UpdateModelManifestInput { + s.Status = &v + return s +} + +type UpdateModelManifestOutput struct { + _ struct{} `type:"structure"` + + // The Amazon Resource Name (ARN) of the updated vehicle model. + // + // Arn is a required field + Arn *string `locationName:"arn" type:"string" required:"true"` + + // The name of the updated vehicle model. + // + // Name is a required field + Name *string `locationName:"name" min:"1" type:"string" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UpdateModelManifestOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UpdateModelManifestOutput) GoString() string { + return s.String() +} + +// SetArn sets the Arn field's value. +func (s *UpdateModelManifestOutput) SetArn(v string) *UpdateModelManifestOutput { + s.Arn = &v + return s +} + +// SetName sets the Name field's value. +func (s *UpdateModelManifestOutput) SetName(v string) *UpdateModelManifestOutput { + s.Name = &v + return s +} + +type UpdateSignalCatalogInput struct { + _ struct{} `type:"structure"` + + // A brief description of the signal catalog to update. + Description *string `locationName:"description" min:"1" type:"string"` + + // The name of the signal catalog to update. + // + // Name is a required field + Name *string `locationName:"name" min:"1" type:"string" required:"true"` + + // A list of information about nodes to add to the signal catalog. + NodesToAdd []*Node `locationName:"nodesToAdd" type:"list"` + + // A list of fullyQualifiedName of nodes to remove from the signal catalog. + NodesToRemove []*string `locationName:"nodesToRemove" min:"1" type:"list"` + + // A list of information about nodes to update in the signal catalog. + NodesToUpdate []*Node `locationName:"nodesToUpdate" type:"list"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UpdateSignalCatalogInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UpdateSignalCatalogInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *UpdateSignalCatalogInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "UpdateSignalCatalogInput"} + if s.Description != nil && len(*s.Description) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Description", 1)) + } + if s.Name == nil { + invalidParams.Add(request.NewErrParamRequired("Name")) + } + if s.Name != nil && len(*s.Name) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Name", 1)) + } + if s.NodesToRemove != nil && len(s.NodesToRemove) < 1 { + invalidParams.Add(request.NewErrParamMinLen("NodesToRemove", 1)) + } + if s.NodesToAdd != nil { + for i, v := range s.NodesToAdd { + if v == nil { + continue + } + if err := v.Validate(); err != nil { + invalidParams.AddNested(fmt.Sprintf("%s[%v]", "NodesToAdd", i), err.(request.ErrInvalidParams)) + } + } + } + if s.NodesToUpdate != nil { + for i, v := range s.NodesToUpdate { + if v == nil { + continue + } + if err := v.Validate(); err != nil { + invalidParams.AddNested(fmt.Sprintf("%s[%v]", "NodesToUpdate", i), err.(request.ErrInvalidParams)) + } + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetDescription sets the Description field's value. +func (s *UpdateSignalCatalogInput) SetDescription(v string) *UpdateSignalCatalogInput { + s.Description = &v + return s +} + +// SetName sets the Name field's value. +func (s *UpdateSignalCatalogInput) SetName(v string) *UpdateSignalCatalogInput { + s.Name = &v + return s +} + +// SetNodesToAdd sets the NodesToAdd field's value. +func (s *UpdateSignalCatalogInput) SetNodesToAdd(v []*Node) *UpdateSignalCatalogInput { + s.NodesToAdd = v + return s +} + +// SetNodesToRemove sets the NodesToRemove field's value. +func (s *UpdateSignalCatalogInput) SetNodesToRemove(v []*string) *UpdateSignalCatalogInput { + s.NodesToRemove = v + return s +} + +// SetNodesToUpdate sets the NodesToUpdate field's value. +func (s *UpdateSignalCatalogInput) SetNodesToUpdate(v []*Node) *UpdateSignalCatalogInput { + s.NodesToUpdate = v + return s +} + +type UpdateSignalCatalogOutput struct { + _ struct{} `type:"structure"` + + // The ARN of the updated signal catalog. + // + // Arn is a required field + Arn *string `locationName:"arn" type:"string" required:"true"` + + // The name of the updated signal catalog. + // + // Name is a required field + Name *string `locationName:"name" min:"1" type:"string" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UpdateSignalCatalogOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UpdateSignalCatalogOutput) GoString() string { + return s.String() +} + +// SetArn sets the Arn field's value. +func (s *UpdateSignalCatalogOutput) SetArn(v string) *UpdateSignalCatalogOutput { + s.Arn = &v + return s +} + +// SetName sets the Name field's value. +func (s *UpdateSignalCatalogOutput) SetName(v string) *UpdateSignalCatalogOutput { + s.Name = &v + return s +} + +// An HTTP error resulting from updating the description for a vehicle. +type UpdateVehicleError struct { + _ struct{} `type:"structure"` + + // The relevant HTTP error code (400+). + Code *int64 `locationName:"code" type:"integer"` + + // A message associated with the error. + Message *string `locationName:"message" type:"string"` + + // The ID of the vehicle with the error. + VehicleName *string `locationName:"vehicleName" min:"1" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UpdateVehicleError) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UpdateVehicleError) GoString() string { + return s.String() +} + +// SetCode sets the Code field's value. +func (s *UpdateVehicleError) SetCode(v int64) *UpdateVehicleError { + s.Code = &v + return s +} + +// SetMessage sets the Message field's value. +func (s *UpdateVehicleError) SetMessage(v string) *UpdateVehicleError { + s.Message = &v + return s +} + +// SetVehicleName sets the VehicleName field's value. +func (s *UpdateVehicleError) SetVehicleName(v string) *UpdateVehicleError { + s.VehicleName = &v + return s +} + +type UpdateVehicleInput struct { + _ struct{} `type:"structure"` + + // The method the specified attributes will update the existing attributes on + // the vehicle. UseOverwite to replace the vehicle attributes with the specified + // attributes. Or use Merge to combine all attributes. + // + // This is required if attributes are present in the input. + AttributeUpdateMode *string `locationName:"attributeUpdateMode" type:"string" enum:"UpdateMode"` + + // Static information about a vehicle in a key-value pair. For example: + // + // "engineType" : "1.3 L R2" + Attributes map[string]*string `locationName:"attributes" type:"map"` + + // The ARN of the decoder manifest associated with this vehicle. + DecoderManifestArn *string `locationName:"decoderManifestArn" type:"string"` + + // The ARN of a vehicle model (model manifest) associated with the vehicle. + ModelManifestArn *string `locationName:"modelManifestArn" type:"string"` + + // The unique ID of the vehicle to update. + // + // VehicleName is a required field + VehicleName *string `locationName:"vehicleName" min:"1" type:"string" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UpdateVehicleInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UpdateVehicleInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *UpdateVehicleInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "UpdateVehicleInput"} + if s.VehicleName == nil { + invalidParams.Add(request.NewErrParamRequired("VehicleName")) + } + if s.VehicleName != nil && len(*s.VehicleName) < 1 { + invalidParams.Add(request.NewErrParamMinLen("VehicleName", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetAttributeUpdateMode sets the AttributeUpdateMode field's value. +func (s *UpdateVehicleInput) SetAttributeUpdateMode(v string) *UpdateVehicleInput { + s.AttributeUpdateMode = &v + return s +} + +// SetAttributes sets the Attributes field's value. +func (s *UpdateVehicleInput) SetAttributes(v map[string]*string) *UpdateVehicleInput { + s.Attributes = v + return s +} + +// SetDecoderManifestArn sets the DecoderManifestArn field's value. +func (s *UpdateVehicleInput) SetDecoderManifestArn(v string) *UpdateVehicleInput { + s.DecoderManifestArn = &v + return s +} + +// SetModelManifestArn sets the ModelManifestArn field's value. +func (s *UpdateVehicleInput) SetModelManifestArn(v string) *UpdateVehicleInput { + s.ModelManifestArn = &v + return s +} + +// SetVehicleName sets the VehicleName field's value. +func (s *UpdateVehicleInput) SetVehicleName(v string) *UpdateVehicleInput { + s.VehicleName = &v + return s +} + +type UpdateVehicleOutput struct { + _ struct{} `type:"structure"` + + // The ARN of the updated vehicle. + Arn *string `locationName:"arn" type:"string"` + + // The ID of the updated vehicle. + VehicleName *string `locationName:"vehicleName" min:"1" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UpdateVehicleOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UpdateVehicleOutput) GoString() string { + return s.String() +} + +// SetArn sets the Arn field's value. +func (s *UpdateVehicleOutput) SetArn(v string) *UpdateVehicleOutput { + s.Arn = &v + return s +} + +// SetVehicleName sets the VehicleName field's value. +func (s *UpdateVehicleOutput) SetVehicleName(v string) *UpdateVehicleOutput { + s.VehicleName = &v + return s +} + +// Information about the vehicle to update. +type UpdateVehicleRequestItem struct { + _ struct{} `type:"structure"` + + // The method the specified attributes will update the existing attributes on + // the vehicle. UseOverwite to replace the vehicle attributes with the specified + // attributes. Or use Merge to combine all attributes. + // + // This is required if attributes are present in the input. + AttributeUpdateMode *string `locationName:"attributeUpdateMode" type:"string" enum:"UpdateMode"` + + // Static information about a vehicle in a key-value pair. For example: + // + // "engineType" : "1.3 L R2" + Attributes map[string]*string `locationName:"attributes" type:"map"` + + // The ARN of the signal decoder manifest associated with the vehicle to update. + DecoderManifestArn *string `locationName:"decoderManifestArn" type:"string"` + + // The ARN of the vehicle model (model manifest) associated with the vehicle + // to update. + ModelManifestArn *string `locationName:"modelManifestArn" type:"string"` + + // The unique ID of the vehicle to update. + // + // VehicleName is a required field + VehicleName *string `locationName:"vehicleName" min:"1" type:"string" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UpdateVehicleRequestItem) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UpdateVehicleRequestItem) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *UpdateVehicleRequestItem) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "UpdateVehicleRequestItem"} + if s.VehicleName == nil { + invalidParams.Add(request.NewErrParamRequired("VehicleName")) + } + if s.VehicleName != nil && len(*s.VehicleName) < 1 { + invalidParams.Add(request.NewErrParamMinLen("VehicleName", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetAttributeUpdateMode sets the AttributeUpdateMode field's value. +func (s *UpdateVehicleRequestItem) SetAttributeUpdateMode(v string) *UpdateVehicleRequestItem { + s.AttributeUpdateMode = &v + return s +} + +// SetAttributes sets the Attributes field's value. +func (s *UpdateVehicleRequestItem) SetAttributes(v map[string]*string) *UpdateVehicleRequestItem { + s.Attributes = v + return s +} + +// SetDecoderManifestArn sets the DecoderManifestArn field's value. +func (s *UpdateVehicleRequestItem) SetDecoderManifestArn(v string) *UpdateVehicleRequestItem { + s.DecoderManifestArn = &v + return s +} + +// SetModelManifestArn sets the ModelManifestArn field's value. +func (s *UpdateVehicleRequestItem) SetModelManifestArn(v string) *UpdateVehicleRequestItem { + s.ModelManifestArn = &v + return s +} + +// SetVehicleName sets the VehicleName field's value. +func (s *UpdateVehicleRequestItem) SetVehicleName(v string) *UpdateVehicleRequestItem { + s.VehicleName = &v + return s +} + +// Information about the updated vehicle. +type UpdateVehicleResponseItem struct { + _ struct{} `type:"structure"` + + // The Amazon Resource Name (ARN) of the updated vehicle. + Arn *string `locationName:"arn" type:"string"` + + // The unique ID of the updated vehicle. + VehicleName *string `locationName:"vehicleName" min:"1" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UpdateVehicleResponseItem) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UpdateVehicleResponseItem) GoString() string { + return s.String() +} + +// SetArn sets the Arn field's value. +func (s *UpdateVehicleResponseItem) SetArn(v string) *UpdateVehicleResponseItem { + s.Arn = &v + return s +} + +// SetVehicleName sets the VehicleName field's value. +func (s *UpdateVehicleResponseItem) SetVehicleName(v string) *UpdateVehicleResponseItem { + s.VehicleName = &v + return s +} + +// The input fails to satisfy the constraints specified by an Amazon Web Services +// service. +type ValidationException struct { + _ struct{} `type:"structure"` + RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` + + // The list of fields that fail to satisfy the constraints specified by an Amazon + // Web Services service. + FieldList []*ValidationExceptionField `locationName:"fieldList" type:"list"` + + Message_ *string `locationName:"message" type:"string"` + + // The reason the input failed to satisfy the constraints specified by an Amazon + // Web Services service. + Reason *string `locationName:"reason" type:"string" enum:"ValidationExceptionReason"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ValidationException) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ValidationException) GoString() string { + return s.String() +} + +func newErrorValidationException(v protocol.ResponseMetadata) error { + return &ValidationException{ + RespMetadata: v, + } +} + +// Code returns the exception type name. +func (s *ValidationException) Code() string { + return "ValidationException" +} + +// Message returns the exception's message. +func (s *ValidationException) Message() string { + if s.Message_ != nil { + return *s.Message_ + } + return "" +} + +// OrigErr always returns nil, satisfies awserr.Error interface. +func (s *ValidationException) OrigErr() error { + return nil +} + +func (s *ValidationException) Error() string { + return fmt.Sprintf("%s: %s\n%s", s.Code(), s.Message(), s.String()) +} + +// Status code returns the HTTP status code for the request's response error. +func (s *ValidationException) StatusCode() int { + return s.RespMetadata.StatusCode +} + +// RequestID returns the service's response RequestID for request. +func (s *ValidationException) RequestID() string { + return s.RespMetadata.RequestID +} + +// A validation error due to mismatch between the expected data type, length, +// or pattern of the parameter and the input. +type ValidationExceptionField struct { + _ struct{} `type:"structure"` + + // A message about the validation error. + // + // Message is a required field + Message *string `locationName:"message" type:"string" required:"true"` + + // The name of the parameter field with the validation error. + // + // Name is a required field + Name *string `locationName:"name" type:"string" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ValidationExceptionField) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ValidationExceptionField) GoString() string { + return s.String() +} + +// SetMessage sets the Message field's value. +func (s *ValidationExceptionField) SetMessage(v string) *ValidationExceptionField { + s.Message = &v + return s +} + +// SetName sets the Name field's value. +func (s *ValidationExceptionField) SetName(v string) *ValidationExceptionField { + s.Name = &v + return s +} + +// Information about the state of a vehicle and how it relates to the status +// of a campaign. +type VehicleStatus struct { + _ struct{} `type:"structure"` + + // The name of a campaign. + CampaignName *string `locationName:"campaignName" type:"string"` + + // The state of a vehicle, which can be one of the following: + // + // * CREATED - Amazon Web Services IoT FleetWise sucessfully created the + // vehicle. + // + // * READY - The vehicle is ready to receive a campaign deployment. + // + // * HEALTHY - A campaign deployment was delivered to the vehicle. + // + // * SUSPENDED - A campaign associated with the vehicle was suspended and + // data collection was paused. + // + // * DELETING - Amazon Web Services IoT FleetWise is removing a campaign + // from the vehicle. + Status *string `locationName:"status" type:"string" enum:"VehicleState"` + + // The unique ID of the vehicle. + VehicleName *string `locationName:"vehicleName" min:"1" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s VehicleStatus) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s VehicleStatus) GoString() string { + return s.String() +} + +// SetCampaignName sets the CampaignName field's value. +func (s *VehicleStatus) SetCampaignName(v string) *VehicleStatus { + s.CampaignName = &v + return s +} + +// SetStatus sets the Status field's value. +func (s *VehicleStatus) SetStatus(v string) *VehicleStatus { + s.Status = &v + return s +} + +// SetVehicleName sets the VehicleName field's value. +func (s *VehicleStatus) SetVehicleName(v string) *VehicleStatus { + s.VehicleName = &v + return s +} + +// Information about a vehicle. +// +// To return this information about vehicles in your account, you can use the +// API operation. +type VehicleSummary struct { + _ struct{} `type:"structure"` + + // The Amazon Resource Name (ARN) of the vehicle. + // + // Arn is a required field + Arn *string `locationName:"arn" type:"string" required:"true"` + + // The time the vehicle was created in seconds since epoch (January 1, 1970 + // at midnight UTC time). + // + // CreationTime is a required field + CreationTime *time.Time `locationName:"creationTime" type:"timestamp" required:"true"` + + // The ARN of a decoder manifest associated with the vehicle. + // + // DecoderManifestArn is a required field + DecoderManifestArn *string `locationName:"decoderManifestArn" type:"string" required:"true"` + + // The time the vehicle was last updated in seconds since epoch (January 1, + // 1970 at midnight UTC time). + // + // LastModificationTime is a required field + LastModificationTime *time.Time `locationName:"lastModificationTime" type:"timestamp" required:"true"` + + // The ARN of a vehicle model (model manifest) associated with the vehicle. + // + // ModelManifestArn is a required field + ModelManifestArn *string `locationName:"modelManifestArn" type:"string" required:"true"` + + // The unique ID of the vehicle. + // + // VehicleName is a required field + VehicleName *string `locationName:"vehicleName" min:"1" type:"string" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s VehicleSummary) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s VehicleSummary) GoString() string { + return s.String() +} + +// SetArn sets the Arn field's value. +func (s *VehicleSummary) SetArn(v string) *VehicleSummary { + s.Arn = &v + return s +} + +// SetCreationTime sets the CreationTime field's value. +func (s *VehicleSummary) SetCreationTime(v time.Time) *VehicleSummary { + s.CreationTime = &v + return s +} + +// SetDecoderManifestArn sets the DecoderManifestArn field's value. +func (s *VehicleSummary) SetDecoderManifestArn(v string) *VehicleSummary { + s.DecoderManifestArn = &v + return s +} + +// SetLastModificationTime sets the LastModificationTime field's value. +func (s *VehicleSummary) SetLastModificationTime(v time.Time) *VehicleSummary { + s.LastModificationTime = &v + return s +} + +// SetModelManifestArn sets the ModelManifestArn field's value. +func (s *VehicleSummary) SetModelManifestArn(v string) *VehicleSummary { + s.ModelManifestArn = &v + return s +} + +// SetVehicleName sets the VehicleName field's value. +func (s *VehicleSummary) SetVehicleName(v string) *VehicleSummary { + s.VehicleName = &v + return s +} + +const ( + // CampaignStatusCreating is a CampaignStatus enum value + CampaignStatusCreating = "CREATING" + + // CampaignStatusWaitingForApproval is a CampaignStatus enum value + CampaignStatusWaitingForApproval = "WAITING_FOR_APPROVAL" + + // CampaignStatusRunning is a CampaignStatus enum value + CampaignStatusRunning = "RUNNING" + + // CampaignStatusSuspended is a CampaignStatus enum value + CampaignStatusSuspended = "SUSPENDED" +) + +// CampaignStatus_Values returns all elements of the CampaignStatus enum +func CampaignStatus_Values() []string { + return []string{ + CampaignStatusCreating, + CampaignStatusWaitingForApproval, + CampaignStatusRunning, + CampaignStatusSuspended, + } +} + +const ( + // CompressionOff is a Compression enum value + CompressionOff = "OFF" + + // CompressionSnappy is a Compression enum value + CompressionSnappy = "SNAPPY" +) + +// Compression_Values returns all elements of the Compression enum +func Compression_Values() []string { + return []string{ + CompressionOff, + CompressionSnappy, + } +} + +const ( + // DiagnosticsModeOff is a DiagnosticsMode enum value + DiagnosticsModeOff = "OFF" + + // DiagnosticsModeSendActiveDtcs is a DiagnosticsMode enum value + DiagnosticsModeSendActiveDtcs = "SEND_ACTIVE_DTCS" +) + +// DiagnosticsMode_Values returns all elements of the DiagnosticsMode enum +func DiagnosticsMode_Values() []string { + return []string{ + DiagnosticsModeOff, + DiagnosticsModeSendActiveDtcs, + } +} + +const ( + // LogTypeOff is a LogType enum value + LogTypeOff = "OFF" + + // LogTypeError is a LogType enum value + LogTypeError = "ERROR" +) + +// LogType_Values returns all elements of the LogType enum +func LogType_Values() []string { + return []string{ + LogTypeOff, + LogTypeError, + } +} + +const ( + // ManifestStatusActive is a ManifestStatus enum value + ManifestStatusActive = "ACTIVE" + + // ManifestStatusDraft is a ManifestStatus enum value + ManifestStatusDraft = "DRAFT" +) + +// ManifestStatus_Values returns all elements of the ManifestStatus enum +func ManifestStatus_Values() []string { + return []string{ + ManifestStatusActive, + ManifestStatusDraft, + } +} + +const ( + // NetworkInterfaceFailureReasonDuplicateNetworkInterface is a NetworkInterfaceFailureReason enum value + NetworkInterfaceFailureReasonDuplicateNetworkInterface = "DUPLICATE_NETWORK_INTERFACE" + + // NetworkInterfaceFailureReasonConflictingNetworkInterface is a NetworkInterfaceFailureReason enum value + NetworkInterfaceFailureReasonConflictingNetworkInterface = "CONFLICTING_NETWORK_INTERFACE" + + // NetworkInterfaceFailureReasonNetworkInterfaceToAddAlreadyExists is a NetworkInterfaceFailureReason enum value + NetworkInterfaceFailureReasonNetworkInterfaceToAddAlreadyExists = "NETWORK_INTERFACE_TO_ADD_ALREADY_EXISTS" + + // NetworkInterfaceFailureReasonCanNetworkInterfaceInfoIsNull is a NetworkInterfaceFailureReason enum value + NetworkInterfaceFailureReasonCanNetworkInterfaceInfoIsNull = "CAN_NETWORK_INTERFACE_INFO_IS_NULL" + + // NetworkInterfaceFailureReasonObdNetworkInterfaceInfoIsNull is a NetworkInterfaceFailureReason enum value + NetworkInterfaceFailureReasonObdNetworkInterfaceInfoIsNull = "OBD_NETWORK_INTERFACE_INFO_IS_NULL" + + // NetworkInterfaceFailureReasonNetworkInterfaceToRemoveAssociatedWithSignals is a NetworkInterfaceFailureReason enum value + NetworkInterfaceFailureReasonNetworkInterfaceToRemoveAssociatedWithSignals = "NETWORK_INTERFACE_TO_REMOVE_ASSOCIATED_WITH_SIGNALS" +) + +// NetworkInterfaceFailureReason_Values returns all elements of the NetworkInterfaceFailureReason enum +func NetworkInterfaceFailureReason_Values() []string { + return []string{ + NetworkInterfaceFailureReasonDuplicateNetworkInterface, + NetworkInterfaceFailureReasonConflictingNetworkInterface, + NetworkInterfaceFailureReasonNetworkInterfaceToAddAlreadyExists, + NetworkInterfaceFailureReasonCanNetworkInterfaceInfoIsNull, + NetworkInterfaceFailureReasonObdNetworkInterfaceInfoIsNull, + NetworkInterfaceFailureReasonNetworkInterfaceToRemoveAssociatedWithSignals, + } +} + +const ( + // NetworkInterfaceTypeCanInterface is a NetworkInterfaceType enum value + NetworkInterfaceTypeCanInterface = "CAN_INTERFACE" + + // NetworkInterfaceTypeObdInterface is a NetworkInterfaceType enum value + NetworkInterfaceTypeObdInterface = "OBD_INTERFACE" +) + +// NetworkInterfaceType_Values returns all elements of the NetworkInterfaceType enum +func NetworkInterfaceType_Values() []string { + return []string{ + NetworkInterfaceTypeCanInterface, + NetworkInterfaceTypeObdInterface, + } +} + +const ( + // NodeDataTypeInt8 is a NodeDataType enum value + NodeDataTypeInt8 = "INT8" + + // NodeDataTypeUint8 is a NodeDataType enum value + NodeDataTypeUint8 = "UINT8" + + // NodeDataTypeInt16 is a NodeDataType enum value + NodeDataTypeInt16 = "INT16" + + // NodeDataTypeUint16 is a NodeDataType enum value + NodeDataTypeUint16 = "UINT16" + + // NodeDataTypeInt32 is a NodeDataType enum value + NodeDataTypeInt32 = "INT32" + + // NodeDataTypeUint32 is a NodeDataType enum value + NodeDataTypeUint32 = "UINT32" + + // NodeDataTypeInt64 is a NodeDataType enum value + NodeDataTypeInt64 = "INT64" + + // NodeDataTypeUint64 is a NodeDataType enum value + NodeDataTypeUint64 = "UINT64" + + // NodeDataTypeBoolean is a NodeDataType enum value + NodeDataTypeBoolean = "BOOLEAN" + + // NodeDataTypeFloat is a NodeDataType enum value + NodeDataTypeFloat = "FLOAT" + + // NodeDataTypeDouble is a NodeDataType enum value + NodeDataTypeDouble = "DOUBLE" + + // NodeDataTypeString is a NodeDataType enum value + NodeDataTypeString = "STRING" + + // NodeDataTypeUnixTimestamp is a NodeDataType enum value + NodeDataTypeUnixTimestamp = "UNIX_TIMESTAMP" + + // NodeDataTypeInt8Array is a NodeDataType enum value + NodeDataTypeInt8Array = "INT8_ARRAY" + + // NodeDataTypeUint8Array is a NodeDataType enum value + NodeDataTypeUint8Array = "UINT8_ARRAY" + + // NodeDataTypeInt16Array is a NodeDataType enum value + NodeDataTypeInt16Array = "INT16_ARRAY" + + // NodeDataTypeUint16Array is a NodeDataType enum value + NodeDataTypeUint16Array = "UINT16_ARRAY" + + // NodeDataTypeInt32Array is a NodeDataType enum value + NodeDataTypeInt32Array = "INT32_ARRAY" + + // NodeDataTypeUint32Array is a NodeDataType enum value + NodeDataTypeUint32Array = "UINT32_ARRAY" + + // NodeDataTypeInt64Array is a NodeDataType enum value + NodeDataTypeInt64Array = "INT64_ARRAY" + + // NodeDataTypeUint64Array is a NodeDataType enum value + NodeDataTypeUint64Array = "UINT64_ARRAY" + + // NodeDataTypeBooleanArray is a NodeDataType enum value + NodeDataTypeBooleanArray = "BOOLEAN_ARRAY" + + // NodeDataTypeFloatArray is a NodeDataType enum value + NodeDataTypeFloatArray = "FLOAT_ARRAY" + + // NodeDataTypeDoubleArray is a NodeDataType enum value + NodeDataTypeDoubleArray = "DOUBLE_ARRAY" + + // NodeDataTypeStringArray is a NodeDataType enum value + NodeDataTypeStringArray = "STRING_ARRAY" + + // NodeDataTypeUnixTimestampArray is a NodeDataType enum value + NodeDataTypeUnixTimestampArray = "UNIX_TIMESTAMP_ARRAY" + + // NodeDataTypeUnknown is a NodeDataType enum value + NodeDataTypeUnknown = "UNKNOWN" +) + +// NodeDataType_Values returns all elements of the NodeDataType enum +func NodeDataType_Values() []string { + return []string{ + NodeDataTypeInt8, + NodeDataTypeUint8, + NodeDataTypeInt16, + NodeDataTypeUint16, + NodeDataTypeInt32, + NodeDataTypeUint32, + NodeDataTypeInt64, + NodeDataTypeUint64, + NodeDataTypeBoolean, + NodeDataTypeFloat, + NodeDataTypeDouble, + NodeDataTypeString, + NodeDataTypeUnixTimestamp, + NodeDataTypeInt8Array, + NodeDataTypeUint8Array, + NodeDataTypeInt16Array, + NodeDataTypeUint16Array, + NodeDataTypeInt32Array, + NodeDataTypeUint32Array, + NodeDataTypeInt64Array, + NodeDataTypeUint64Array, + NodeDataTypeBooleanArray, + NodeDataTypeFloatArray, + NodeDataTypeDoubleArray, + NodeDataTypeStringArray, + NodeDataTypeUnixTimestampArray, + NodeDataTypeUnknown, + } +} + +const ( + // RegistrationStatusRegistrationPending is a RegistrationStatus enum value + RegistrationStatusRegistrationPending = "REGISTRATION_PENDING" + + // RegistrationStatusRegistrationSuccess is a RegistrationStatus enum value + RegistrationStatusRegistrationSuccess = "REGISTRATION_SUCCESS" + + // RegistrationStatusRegistrationFailure is a RegistrationStatus enum value + RegistrationStatusRegistrationFailure = "REGISTRATION_FAILURE" +) + +// RegistrationStatus_Values returns all elements of the RegistrationStatus enum +func RegistrationStatus_Values() []string { + return []string{ + RegistrationStatusRegistrationPending, + RegistrationStatusRegistrationSuccess, + RegistrationStatusRegistrationFailure, + } +} + +const ( + // SignalDecoderFailureReasonDuplicateSignal is a SignalDecoderFailureReason enum value + SignalDecoderFailureReasonDuplicateSignal = "DUPLICATE_SIGNAL" + + // SignalDecoderFailureReasonConflictingSignal is a SignalDecoderFailureReason enum value + SignalDecoderFailureReasonConflictingSignal = "CONFLICTING_SIGNAL" + + // SignalDecoderFailureReasonSignalToAddAlreadyExists is a SignalDecoderFailureReason enum value + SignalDecoderFailureReasonSignalToAddAlreadyExists = "SIGNAL_TO_ADD_ALREADY_EXISTS" + + // SignalDecoderFailureReasonSignalNotAssociatedWithNetworkInterface is a SignalDecoderFailureReason enum value + SignalDecoderFailureReasonSignalNotAssociatedWithNetworkInterface = "SIGNAL_NOT_ASSOCIATED_WITH_NETWORK_INTERFACE" + + // SignalDecoderFailureReasonNetworkInterfaceTypeIncompatibleWithSignalDecoderType is a SignalDecoderFailureReason enum value + SignalDecoderFailureReasonNetworkInterfaceTypeIncompatibleWithSignalDecoderType = "NETWORK_INTERFACE_TYPE_INCOMPATIBLE_WITH_SIGNAL_DECODER_TYPE" + + // SignalDecoderFailureReasonSignalNotInModel is a SignalDecoderFailureReason enum value + SignalDecoderFailureReasonSignalNotInModel = "SIGNAL_NOT_IN_MODEL" + + // SignalDecoderFailureReasonCanSignalInfoIsNull is a SignalDecoderFailureReason enum value + SignalDecoderFailureReasonCanSignalInfoIsNull = "CAN_SIGNAL_INFO_IS_NULL" + + // SignalDecoderFailureReasonObdSignalInfoIsNull is a SignalDecoderFailureReason enum value + SignalDecoderFailureReasonObdSignalInfoIsNull = "OBD_SIGNAL_INFO_IS_NULL" + + // SignalDecoderFailureReasonNoDecoderInfoForSignalInModel is a SignalDecoderFailureReason enum value + SignalDecoderFailureReasonNoDecoderInfoForSignalInModel = "NO_DECODER_INFO_FOR_SIGNAL_IN_MODEL" +) + +// SignalDecoderFailureReason_Values returns all elements of the SignalDecoderFailureReason enum +func SignalDecoderFailureReason_Values() []string { + return []string{ + SignalDecoderFailureReasonDuplicateSignal, + SignalDecoderFailureReasonConflictingSignal, + SignalDecoderFailureReasonSignalToAddAlreadyExists, + SignalDecoderFailureReasonSignalNotAssociatedWithNetworkInterface, + SignalDecoderFailureReasonNetworkInterfaceTypeIncompatibleWithSignalDecoderType, + SignalDecoderFailureReasonSignalNotInModel, + SignalDecoderFailureReasonCanSignalInfoIsNull, + SignalDecoderFailureReasonObdSignalInfoIsNull, + SignalDecoderFailureReasonNoDecoderInfoForSignalInModel, + } +} + +const ( + // SignalDecoderTypeCanSignal is a SignalDecoderType enum value + SignalDecoderTypeCanSignal = "CAN_SIGNAL" + + // SignalDecoderTypeObdSignal is a SignalDecoderType enum value + SignalDecoderTypeObdSignal = "OBD_SIGNAL" +) + +// SignalDecoderType_Values returns all elements of the SignalDecoderType enum +func SignalDecoderType_Values() []string { + return []string{ + SignalDecoderTypeCanSignal, + SignalDecoderTypeObdSignal, + } +} + +const ( + // SpoolingModeOff is a SpoolingMode enum value + SpoolingModeOff = "OFF" + + // SpoolingModeToDisk is a SpoolingMode enum value + SpoolingModeToDisk = "TO_DISK" +) + +// SpoolingMode_Values returns all elements of the SpoolingMode enum +func SpoolingMode_Values() []string { + return []string{ + SpoolingModeOff, + SpoolingModeToDisk, + } +} + +const ( + // TriggerModeAlways is a TriggerMode enum value + TriggerModeAlways = "ALWAYS" + + // TriggerModeRisingEdge is a TriggerMode enum value + TriggerModeRisingEdge = "RISING_EDGE" +) + +// TriggerMode_Values returns all elements of the TriggerMode enum +func TriggerMode_Values() []string { + return []string{ + TriggerModeAlways, + TriggerModeRisingEdge, + } +} + +const ( + // UpdateCampaignActionApprove is a UpdateCampaignAction enum value + UpdateCampaignActionApprove = "APPROVE" + + // UpdateCampaignActionSuspend is a UpdateCampaignAction enum value + UpdateCampaignActionSuspend = "SUSPEND" + + // UpdateCampaignActionResume is a UpdateCampaignAction enum value + UpdateCampaignActionResume = "RESUME" + + // UpdateCampaignActionUpdate is a UpdateCampaignAction enum value + UpdateCampaignActionUpdate = "UPDATE" +) + +// UpdateCampaignAction_Values returns all elements of the UpdateCampaignAction enum +func UpdateCampaignAction_Values() []string { + return []string{ + UpdateCampaignActionApprove, + UpdateCampaignActionSuspend, + UpdateCampaignActionResume, + UpdateCampaignActionUpdate, + } +} + +const ( + // UpdateModeOverwrite is a UpdateMode enum value + UpdateModeOverwrite = "Overwrite" + + // UpdateModeMerge is a UpdateMode enum value + UpdateModeMerge = "Merge" +) + +// UpdateMode_Values returns all elements of the UpdateMode enum +func UpdateMode_Values() []string { + return []string{ + UpdateModeOverwrite, + UpdateModeMerge, + } +} + +const ( + // ValidationExceptionReasonUnknownOperation is a ValidationExceptionReason enum value + ValidationExceptionReasonUnknownOperation = "unknownOperation" + + // ValidationExceptionReasonCannotParse is a ValidationExceptionReason enum value + ValidationExceptionReasonCannotParse = "cannotParse" + + // ValidationExceptionReasonFieldValidationFailed is a ValidationExceptionReason enum value + ValidationExceptionReasonFieldValidationFailed = "fieldValidationFailed" + + // ValidationExceptionReasonOther is a ValidationExceptionReason enum value + ValidationExceptionReasonOther = "other" +) + +// ValidationExceptionReason_Values returns all elements of the ValidationExceptionReason enum +func ValidationExceptionReason_Values() []string { + return []string{ + ValidationExceptionReasonUnknownOperation, + ValidationExceptionReasonCannotParse, + ValidationExceptionReasonFieldValidationFailed, + ValidationExceptionReasonOther, + } +} + +const ( + // VehicleAssociationBehaviorCreateIotThing is a VehicleAssociationBehavior enum value + VehicleAssociationBehaviorCreateIotThing = "CreateIotThing" + + // VehicleAssociationBehaviorValidateIotThingExists is a VehicleAssociationBehavior enum value + VehicleAssociationBehaviorValidateIotThingExists = "ValidateIotThingExists" +) + +// VehicleAssociationBehavior_Values returns all elements of the VehicleAssociationBehavior enum +func VehicleAssociationBehavior_Values() []string { + return []string{ + VehicleAssociationBehaviorCreateIotThing, + VehicleAssociationBehaviorValidateIotThingExists, + } +} + +const ( + // VehicleStateCreated is a VehicleState enum value + VehicleStateCreated = "CREATED" + + // VehicleStateReady is a VehicleState enum value + VehicleStateReady = "READY" + + // VehicleStateHealthy is a VehicleState enum value + VehicleStateHealthy = "HEALTHY" + + // VehicleStateSuspended is a VehicleState enum value + VehicleStateSuspended = "SUSPENDED" + + // VehicleStateDeleting is a VehicleState enum value + VehicleStateDeleting = "DELETING" +) + +// VehicleState_Values returns all elements of the VehicleState enum +func VehicleState_Values() []string { + return []string{ + VehicleStateCreated, + VehicleStateReady, + VehicleStateHealthy, + VehicleStateSuspended, + VehicleStateDeleting, + } +} diff --git a/service/iotfleetwise/doc.go b/service/iotfleetwise/doc.go new file mode 100644 index 00000000000..a93c8668c87 --- /dev/null +++ b/service/iotfleetwise/doc.go @@ -0,0 +1,47 @@ +// Code generated by private/model/cli/gen-api/main.go. DO NOT EDIT. + +// Package iotfleetwise provides the client and types for making API +// requests to AWS IoT FleetWise. +// +// Amazon Web Services IoT FleetWise is in preview release and is subject to +// change. We recommend that you use the service only with test data, and not +// in production environments. +// +// While Amazon Web Services IoT FleetWise is in preview, you must download +// the preview Amazon Web Services SDK and CLI to use the API operations for +// this service. These API operations aren't available in the public Amazon +// Web Services SDK or CLI. For more information, see Preview Amazon Web Services +// SDK and CLI (https://docs.aws.amazon.com/iot-fleetwise/latest/developerguide/preview-sdk-cli.html) +// in the Amazon Web Services IoT FleetWise Developer Guide. +// +// Amazon Web Services IoT FleetWise is a fully managed service that you can +// use to collect, model, and transfer vehicle data to the Amazon Web Services +// cloud at scale. With Amazon Web Services IoT FleetWise, you can standardize +// all of your vehicle data models, independent of the in-vehicle communication +// architecture, and define data collection rules to transfer only high-value +// data to the cloud. +// +// For more information, see What is Amazon Web Services IoT FleetWise? (https://docs.aws.amazon.com/iot-fleetwise/latest/developerguide/) +// in the Amazon Web Services IoT FleetWise Developer Guide. +// +// See https://docs.aws.amazon.com/goto/WebAPI/iotfleetwise-2021-06-17 for more information on this service. +// +// See iotfleetwise package documentation for more information. +// https://docs.aws.amazon.com/sdk-for-go/api/service/iotfleetwise/ +// +// # Using the Client +// +// To contact AWS IoT FleetWise with the SDK use the New function to create +// a new service client. With that client you can make API requests to the service. +// These clients are safe to use concurrently. +// +// See the SDK's documentation for more information on how to use the SDK. +// https://docs.aws.amazon.com/sdk-for-go/api/ +// +// See aws.Config documentation for more information on configuring SDK clients. +// https://docs.aws.amazon.com/sdk-for-go/api/aws/#Config +// +// See the AWS IoT FleetWise client IoTFleetWise for more +// information on creating client for this service. +// https://docs.aws.amazon.com/sdk-for-go/api/service/iotfleetwise/#New +package iotfleetwise diff --git a/service/iotfleetwise/errors.go b/service/iotfleetwise/errors.go new file mode 100644 index 00000000000..7b719f29400 --- /dev/null +++ b/service/iotfleetwise/errors.go @@ -0,0 +1,88 @@ +// Code generated by private/model/cli/gen-api/main.go. DO NOT EDIT. + +package iotfleetwise + +import ( + "github.com/aws/aws-sdk-go/private/protocol" +) + +const ( + + // ErrCodeAccessDeniedException for service response error code + // "AccessDeniedException". + // + // You don't have sufficient permission to perform this action. + ErrCodeAccessDeniedException = "AccessDeniedException" + + // ErrCodeConflictException for service response error code + // "ConflictException". + // + // The request has conflicting operations. This can occur if you're trying to + // perform more than one operation on the same resource at the same time. + ErrCodeConflictException = "ConflictException" + + // ErrCodeDecoderManifestValidationException for service response error code + // "DecoderManifestValidationException". + // + // The request couldn't be completed because it contains signal decoders with + // one or more validation errors. + ErrCodeDecoderManifestValidationException = "DecoderManifestValidationException" + + // ErrCodeInternalServerException for service response error code + // "InternalServerException". + // + // The request couldn't be completed because the server temporarily failed. + ErrCodeInternalServerException = "InternalServerException" + + // ErrCodeInvalidNodeException for service response error code + // "InvalidNodeException". + // + // The specified node type doesn't match the expected node type for a node. + // You can specify the node type as branch, sensor, actuator, or attribute. + ErrCodeInvalidNodeException = "InvalidNodeException" + + // ErrCodeInvalidSignalsException for service response error code + // "InvalidSignalsException". + // + // The request couldn't be completed because it contains signals that aren't + // valid. + ErrCodeInvalidSignalsException = "InvalidSignalsException" + + // ErrCodeLimitExceededException for service response error code + // "LimitExceededException". + // + // A service quota was exceeded. + ErrCodeLimitExceededException = "LimitExceededException" + + // ErrCodeResourceNotFoundException for service response error code + // "ResourceNotFoundException". + // + // The resource wasn't found. + ErrCodeResourceNotFoundException = "ResourceNotFoundException" + + // ErrCodeThrottlingException for service response error code + // "ThrottlingException". + // + // The request couldn't be completed due to throttling. + ErrCodeThrottlingException = "ThrottlingException" + + // ErrCodeValidationException for service response error code + // "ValidationException". + // + // The input fails to satisfy the constraints specified by an Amazon Web Services + // service. + ErrCodeValidationException = "ValidationException" +) + +var exceptionFromCode = map[string]func(protocol.ResponseMetadata) error{ + "AccessDeniedException": newErrorAccessDeniedException, + "ConflictException": newErrorConflictException, + "DecoderManifestValidationException": newErrorDecoderManifestValidationException, + "InternalServerException": newErrorInternalServerException, + "InvalidNodeException": newErrorInvalidNodeException, + "InvalidSignalsException": newErrorInvalidSignalsException, + "LimitExceededException": newErrorLimitExceededException, + "ResourceNotFoundException": newErrorResourceNotFoundException, + "ThrottlingException": newErrorThrottlingException, + "ValidationException": newErrorValidationException, +} diff --git a/service/iotfleetwise/iotfleetwiseiface/interface.go b/service/iotfleetwise/iotfleetwiseiface/interface.go new file mode 100644 index 00000000000..a2252d5e940 --- /dev/null +++ b/service/iotfleetwise/iotfleetwiseiface/interface.go @@ -0,0 +1,303 @@ +// Code generated by private/model/cli/gen-api/main.go. DO NOT EDIT. + +// Package iotfleetwiseiface provides an interface to enable mocking the AWS IoT FleetWise service client +// for testing your code. +// +// It is important to note that this interface will have breaking changes +// when the service model is updated and adds new API operations, paginators, +// and waiters. +package iotfleetwiseiface + +import ( + "github.com/aws/aws-sdk-go/aws" + "github.com/aws/aws-sdk-go/aws/request" + "github.com/aws/aws-sdk-go/service/iotfleetwise" +) + +// IoTFleetWiseAPI provides an interface to enable mocking the +// iotfleetwise.IoTFleetWise service client's API operation, +// paginators, and waiters. This make unit testing your code that calls out +// to the SDK's service client's calls easier. +// +// The best way to use this interface is so the SDK's service client's calls +// can be stubbed out for unit testing your code with the SDK without needing +// to inject custom request handlers into the SDK's request pipeline. +// +// // myFunc uses an SDK service client to make a request to +// // AWS IoT FleetWise. +// func myFunc(svc iotfleetwiseiface.IoTFleetWiseAPI) bool { +// // Make svc.AssociateVehicleFleet request +// } +// +// func main() { +// sess := session.New() +// svc := iotfleetwise.New(sess) +// +// myFunc(svc) +// } +// +// In your _test.go file: +// +// // Define a mock struct to be used in your unit tests of myFunc. +// type mockIoTFleetWiseClient struct { +// iotfleetwiseiface.IoTFleetWiseAPI +// } +// func (m *mockIoTFleetWiseClient) AssociateVehicleFleet(input *iotfleetwise.AssociateVehicleFleetInput) (*iotfleetwise.AssociateVehicleFleetOutput, error) { +// // mock response/functionality +// } +// +// func TestMyFunc(t *testing.T) { +// // Setup Test +// mockSvc := &mockIoTFleetWiseClient{} +// +// myfunc(mockSvc) +// +// // Verify myFunc's functionality +// } +// +// It is important to note that this interface will have breaking changes +// when the service model is updated and adds new API operations, paginators, +// and waiters. Its suggested to use the pattern above for testing, or using +// tooling to generate mocks to satisfy the interfaces. +type IoTFleetWiseAPI interface { + AssociateVehicleFleet(*iotfleetwise.AssociateVehicleFleetInput) (*iotfleetwise.AssociateVehicleFleetOutput, error) + AssociateVehicleFleetWithContext(aws.Context, *iotfleetwise.AssociateVehicleFleetInput, ...request.Option) (*iotfleetwise.AssociateVehicleFleetOutput, error) + AssociateVehicleFleetRequest(*iotfleetwise.AssociateVehicleFleetInput) (*request.Request, *iotfleetwise.AssociateVehicleFleetOutput) + + BatchCreateVehicle(*iotfleetwise.BatchCreateVehicleInput) (*iotfleetwise.BatchCreateVehicleOutput, error) + BatchCreateVehicleWithContext(aws.Context, *iotfleetwise.BatchCreateVehicleInput, ...request.Option) (*iotfleetwise.BatchCreateVehicleOutput, error) + BatchCreateVehicleRequest(*iotfleetwise.BatchCreateVehicleInput) (*request.Request, *iotfleetwise.BatchCreateVehicleOutput) + + BatchUpdateVehicle(*iotfleetwise.BatchUpdateVehicleInput) (*iotfleetwise.BatchUpdateVehicleOutput, error) + BatchUpdateVehicleWithContext(aws.Context, *iotfleetwise.BatchUpdateVehicleInput, ...request.Option) (*iotfleetwise.BatchUpdateVehicleOutput, error) + BatchUpdateVehicleRequest(*iotfleetwise.BatchUpdateVehicleInput) (*request.Request, *iotfleetwise.BatchUpdateVehicleOutput) + + CreateCampaign(*iotfleetwise.CreateCampaignInput) (*iotfleetwise.CreateCampaignOutput, error) + CreateCampaignWithContext(aws.Context, *iotfleetwise.CreateCampaignInput, ...request.Option) (*iotfleetwise.CreateCampaignOutput, error) + CreateCampaignRequest(*iotfleetwise.CreateCampaignInput) (*request.Request, *iotfleetwise.CreateCampaignOutput) + + CreateDecoderManifest(*iotfleetwise.CreateDecoderManifestInput) (*iotfleetwise.CreateDecoderManifestOutput, error) + CreateDecoderManifestWithContext(aws.Context, *iotfleetwise.CreateDecoderManifestInput, ...request.Option) (*iotfleetwise.CreateDecoderManifestOutput, error) + CreateDecoderManifestRequest(*iotfleetwise.CreateDecoderManifestInput) (*request.Request, *iotfleetwise.CreateDecoderManifestOutput) + + CreateFleet(*iotfleetwise.CreateFleetInput) (*iotfleetwise.CreateFleetOutput, error) + CreateFleetWithContext(aws.Context, *iotfleetwise.CreateFleetInput, ...request.Option) (*iotfleetwise.CreateFleetOutput, error) + CreateFleetRequest(*iotfleetwise.CreateFleetInput) (*request.Request, *iotfleetwise.CreateFleetOutput) + + CreateModelManifest(*iotfleetwise.CreateModelManifestInput) (*iotfleetwise.CreateModelManifestOutput, error) + CreateModelManifestWithContext(aws.Context, *iotfleetwise.CreateModelManifestInput, ...request.Option) (*iotfleetwise.CreateModelManifestOutput, error) + CreateModelManifestRequest(*iotfleetwise.CreateModelManifestInput) (*request.Request, *iotfleetwise.CreateModelManifestOutput) + + CreateSignalCatalog(*iotfleetwise.CreateSignalCatalogInput) (*iotfleetwise.CreateSignalCatalogOutput, error) + CreateSignalCatalogWithContext(aws.Context, *iotfleetwise.CreateSignalCatalogInput, ...request.Option) (*iotfleetwise.CreateSignalCatalogOutput, error) + CreateSignalCatalogRequest(*iotfleetwise.CreateSignalCatalogInput) (*request.Request, *iotfleetwise.CreateSignalCatalogOutput) + + CreateVehicle(*iotfleetwise.CreateVehicleInput) (*iotfleetwise.CreateVehicleOutput, error) + CreateVehicleWithContext(aws.Context, *iotfleetwise.CreateVehicleInput, ...request.Option) (*iotfleetwise.CreateVehicleOutput, error) + CreateVehicleRequest(*iotfleetwise.CreateVehicleInput) (*request.Request, *iotfleetwise.CreateVehicleOutput) + + DeleteCampaign(*iotfleetwise.DeleteCampaignInput) (*iotfleetwise.DeleteCampaignOutput, error) + DeleteCampaignWithContext(aws.Context, *iotfleetwise.DeleteCampaignInput, ...request.Option) (*iotfleetwise.DeleteCampaignOutput, error) + DeleteCampaignRequest(*iotfleetwise.DeleteCampaignInput) (*request.Request, *iotfleetwise.DeleteCampaignOutput) + + DeleteDecoderManifest(*iotfleetwise.DeleteDecoderManifestInput) (*iotfleetwise.DeleteDecoderManifestOutput, error) + DeleteDecoderManifestWithContext(aws.Context, *iotfleetwise.DeleteDecoderManifestInput, ...request.Option) (*iotfleetwise.DeleteDecoderManifestOutput, error) + DeleteDecoderManifestRequest(*iotfleetwise.DeleteDecoderManifestInput) (*request.Request, *iotfleetwise.DeleteDecoderManifestOutput) + + DeleteFleet(*iotfleetwise.DeleteFleetInput) (*iotfleetwise.DeleteFleetOutput, error) + DeleteFleetWithContext(aws.Context, *iotfleetwise.DeleteFleetInput, ...request.Option) (*iotfleetwise.DeleteFleetOutput, error) + DeleteFleetRequest(*iotfleetwise.DeleteFleetInput) (*request.Request, *iotfleetwise.DeleteFleetOutput) + + DeleteModelManifest(*iotfleetwise.DeleteModelManifestInput) (*iotfleetwise.DeleteModelManifestOutput, error) + DeleteModelManifestWithContext(aws.Context, *iotfleetwise.DeleteModelManifestInput, ...request.Option) (*iotfleetwise.DeleteModelManifestOutput, error) + DeleteModelManifestRequest(*iotfleetwise.DeleteModelManifestInput) (*request.Request, *iotfleetwise.DeleteModelManifestOutput) + + DeleteSignalCatalog(*iotfleetwise.DeleteSignalCatalogInput) (*iotfleetwise.DeleteSignalCatalogOutput, error) + DeleteSignalCatalogWithContext(aws.Context, *iotfleetwise.DeleteSignalCatalogInput, ...request.Option) (*iotfleetwise.DeleteSignalCatalogOutput, error) + DeleteSignalCatalogRequest(*iotfleetwise.DeleteSignalCatalogInput) (*request.Request, *iotfleetwise.DeleteSignalCatalogOutput) + + DeleteVehicle(*iotfleetwise.DeleteVehicleInput) (*iotfleetwise.DeleteVehicleOutput, error) + DeleteVehicleWithContext(aws.Context, *iotfleetwise.DeleteVehicleInput, ...request.Option) (*iotfleetwise.DeleteVehicleOutput, error) + DeleteVehicleRequest(*iotfleetwise.DeleteVehicleInput) (*request.Request, *iotfleetwise.DeleteVehicleOutput) + + DisassociateVehicleFleet(*iotfleetwise.DisassociateVehicleFleetInput) (*iotfleetwise.DisassociateVehicleFleetOutput, error) + DisassociateVehicleFleetWithContext(aws.Context, *iotfleetwise.DisassociateVehicleFleetInput, ...request.Option) (*iotfleetwise.DisassociateVehicleFleetOutput, error) + DisassociateVehicleFleetRequest(*iotfleetwise.DisassociateVehicleFleetInput) (*request.Request, *iotfleetwise.DisassociateVehicleFleetOutput) + + GetCampaign(*iotfleetwise.GetCampaignInput) (*iotfleetwise.GetCampaignOutput, error) + GetCampaignWithContext(aws.Context, *iotfleetwise.GetCampaignInput, ...request.Option) (*iotfleetwise.GetCampaignOutput, error) + GetCampaignRequest(*iotfleetwise.GetCampaignInput) (*request.Request, *iotfleetwise.GetCampaignOutput) + + GetDecoderManifest(*iotfleetwise.GetDecoderManifestInput) (*iotfleetwise.GetDecoderManifestOutput, error) + GetDecoderManifestWithContext(aws.Context, *iotfleetwise.GetDecoderManifestInput, ...request.Option) (*iotfleetwise.GetDecoderManifestOutput, error) + GetDecoderManifestRequest(*iotfleetwise.GetDecoderManifestInput) (*request.Request, *iotfleetwise.GetDecoderManifestOutput) + + GetFleet(*iotfleetwise.GetFleetInput) (*iotfleetwise.GetFleetOutput, error) + GetFleetWithContext(aws.Context, *iotfleetwise.GetFleetInput, ...request.Option) (*iotfleetwise.GetFleetOutput, error) + GetFleetRequest(*iotfleetwise.GetFleetInput) (*request.Request, *iotfleetwise.GetFleetOutput) + + GetLoggingOptions(*iotfleetwise.GetLoggingOptionsInput) (*iotfleetwise.GetLoggingOptionsOutput, error) + GetLoggingOptionsWithContext(aws.Context, *iotfleetwise.GetLoggingOptionsInput, ...request.Option) (*iotfleetwise.GetLoggingOptionsOutput, error) + GetLoggingOptionsRequest(*iotfleetwise.GetLoggingOptionsInput) (*request.Request, *iotfleetwise.GetLoggingOptionsOutput) + + GetModelManifest(*iotfleetwise.GetModelManifestInput) (*iotfleetwise.GetModelManifestOutput, error) + GetModelManifestWithContext(aws.Context, *iotfleetwise.GetModelManifestInput, ...request.Option) (*iotfleetwise.GetModelManifestOutput, error) + GetModelManifestRequest(*iotfleetwise.GetModelManifestInput) (*request.Request, *iotfleetwise.GetModelManifestOutput) + + GetRegisterAccountStatus(*iotfleetwise.GetRegisterAccountStatusInput) (*iotfleetwise.GetRegisterAccountStatusOutput, error) + GetRegisterAccountStatusWithContext(aws.Context, *iotfleetwise.GetRegisterAccountStatusInput, ...request.Option) (*iotfleetwise.GetRegisterAccountStatusOutput, error) + GetRegisterAccountStatusRequest(*iotfleetwise.GetRegisterAccountStatusInput) (*request.Request, *iotfleetwise.GetRegisterAccountStatusOutput) + + GetSignalCatalog(*iotfleetwise.GetSignalCatalogInput) (*iotfleetwise.GetSignalCatalogOutput, error) + GetSignalCatalogWithContext(aws.Context, *iotfleetwise.GetSignalCatalogInput, ...request.Option) (*iotfleetwise.GetSignalCatalogOutput, error) + GetSignalCatalogRequest(*iotfleetwise.GetSignalCatalogInput) (*request.Request, *iotfleetwise.GetSignalCatalogOutput) + + GetVehicle(*iotfleetwise.GetVehicleInput) (*iotfleetwise.GetVehicleOutput, error) + GetVehicleWithContext(aws.Context, *iotfleetwise.GetVehicleInput, ...request.Option) (*iotfleetwise.GetVehicleOutput, error) + GetVehicleRequest(*iotfleetwise.GetVehicleInput) (*request.Request, *iotfleetwise.GetVehicleOutput) + + GetVehicleStatus(*iotfleetwise.GetVehicleStatusInput) (*iotfleetwise.GetVehicleStatusOutput, error) + GetVehicleStatusWithContext(aws.Context, *iotfleetwise.GetVehicleStatusInput, ...request.Option) (*iotfleetwise.GetVehicleStatusOutput, error) + GetVehicleStatusRequest(*iotfleetwise.GetVehicleStatusInput) (*request.Request, *iotfleetwise.GetVehicleStatusOutput) + + GetVehicleStatusPages(*iotfleetwise.GetVehicleStatusInput, func(*iotfleetwise.GetVehicleStatusOutput, bool) bool) error + GetVehicleStatusPagesWithContext(aws.Context, *iotfleetwise.GetVehicleStatusInput, func(*iotfleetwise.GetVehicleStatusOutput, bool) bool, ...request.Option) error + + ImportDecoderManifest(*iotfleetwise.ImportDecoderManifestInput) (*iotfleetwise.ImportDecoderManifestOutput, error) + ImportDecoderManifestWithContext(aws.Context, *iotfleetwise.ImportDecoderManifestInput, ...request.Option) (*iotfleetwise.ImportDecoderManifestOutput, error) + ImportDecoderManifestRequest(*iotfleetwise.ImportDecoderManifestInput) (*request.Request, *iotfleetwise.ImportDecoderManifestOutput) + + ImportSignalCatalog(*iotfleetwise.ImportSignalCatalogInput) (*iotfleetwise.ImportSignalCatalogOutput, error) + ImportSignalCatalogWithContext(aws.Context, *iotfleetwise.ImportSignalCatalogInput, ...request.Option) (*iotfleetwise.ImportSignalCatalogOutput, error) + ImportSignalCatalogRequest(*iotfleetwise.ImportSignalCatalogInput) (*request.Request, *iotfleetwise.ImportSignalCatalogOutput) + + ListCampaigns(*iotfleetwise.ListCampaignsInput) (*iotfleetwise.ListCampaignsOutput, error) + ListCampaignsWithContext(aws.Context, *iotfleetwise.ListCampaignsInput, ...request.Option) (*iotfleetwise.ListCampaignsOutput, error) + ListCampaignsRequest(*iotfleetwise.ListCampaignsInput) (*request.Request, *iotfleetwise.ListCampaignsOutput) + + ListCampaignsPages(*iotfleetwise.ListCampaignsInput, func(*iotfleetwise.ListCampaignsOutput, bool) bool) error + ListCampaignsPagesWithContext(aws.Context, *iotfleetwise.ListCampaignsInput, func(*iotfleetwise.ListCampaignsOutput, bool) bool, ...request.Option) error + + ListDecoderManifestNetworkInterfaces(*iotfleetwise.ListDecoderManifestNetworkInterfacesInput) (*iotfleetwise.ListDecoderManifestNetworkInterfacesOutput, error) + ListDecoderManifestNetworkInterfacesWithContext(aws.Context, *iotfleetwise.ListDecoderManifestNetworkInterfacesInput, ...request.Option) (*iotfleetwise.ListDecoderManifestNetworkInterfacesOutput, error) + ListDecoderManifestNetworkInterfacesRequest(*iotfleetwise.ListDecoderManifestNetworkInterfacesInput) (*request.Request, *iotfleetwise.ListDecoderManifestNetworkInterfacesOutput) + + ListDecoderManifestNetworkInterfacesPages(*iotfleetwise.ListDecoderManifestNetworkInterfacesInput, func(*iotfleetwise.ListDecoderManifestNetworkInterfacesOutput, bool) bool) error + ListDecoderManifestNetworkInterfacesPagesWithContext(aws.Context, *iotfleetwise.ListDecoderManifestNetworkInterfacesInput, func(*iotfleetwise.ListDecoderManifestNetworkInterfacesOutput, bool) bool, ...request.Option) error + + ListDecoderManifestSignals(*iotfleetwise.ListDecoderManifestSignalsInput) (*iotfleetwise.ListDecoderManifestSignalsOutput, error) + ListDecoderManifestSignalsWithContext(aws.Context, *iotfleetwise.ListDecoderManifestSignalsInput, ...request.Option) (*iotfleetwise.ListDecoderManifestSignalsOutput, error) + ListDecoderManifestSignalsRequest(*iotfleetwise.ListDecoderManifestSignalsInput) (*request.Request, *iotfleetwise.ListDecoderManifestSignalsOutput) + + ListDecoderManifestSignalsPages(*iotfleetwise.ListDecoderManifestSignalsInput, func(*iotfleetwise.ListDecoderManifestSignalsOutput, bool) bool) error + ListDecoderManifestSignalsPagesWithContext(aws.Context, *iotfleetwise.ListDecoderManifestSignalsInput, func(*iotfleetwise.ListDecoderManifestSignalsOutput, bool) bool, ...request.Option) error + + ListDecoderManifests(*iotfleetwise.ListDecoderManifestsInput) (*iotfleetwise.ListDecoderManifestsOutput, error) + ListDecoderManifestsWithContext(aws.Context, *iotfleetwise.ListDecoderManifestsInput, ...request.Option) (*iotfleetwise.ListDecoderManifestsOutput, error) + ListDecoderManifestsRequest(*iotfleetwise.ListDecoderManifestsInput) (*request.Request, *iotfleetwise.ListDecoderManifestsOutput) + + ListDecoderManifestsPages(*iotfleetwise.ListDecoderManifestsInput, func(*iotfleetwise.ListDecoderManifestsOutput, bool) bool) error + ListDecoderManifestsPagesWithContext(aws.Context, *iotfleetwise.ListDecoderManifestsInput, func(*iotfleetwise.ListDecoderManifestsOutput, bool) bool, ...request.Option) error + + ListFleets(*iotfleetwise.ListFleetsInput) (*iotfleetwise.ListFleetsOutput, error) + ListFleetsWithContext(aws.Context, *iotfleetwise.ListFleetsInput, ...request.Option) (*iotfleetwise.ListFleetsOutput, error) + ListFleetsRequest(*iotfleetwise.ListFleetsInput) (*request.Request, *iotfleetwise.ListFleetsOutput) + + ListFleetsPages(*iotfleetwise.ListFleetsInput, func(*iotfleetwise.ListFleetsOutput, bool) bool) error + ListFleetsPagesWithContext(aws.Context, *iotfleetwise.ListFleetsInput, func(*iotfleetwise.ListFleetsOutput, bool) bool, ...request.Option) error + + ListFleetsForVehicle(*iotfleetwise.ListFleetsForVehicleInput) (*iotfleetwise.ListFleetsForVehicleOutput, error) + ListFleetsForVehicleWithContext(aws.Context, *iotfleetwise.ListFleetsForVehicleInput, ...request.Option) (*iotfleetwise.ListFleetsForVehicleOutput, error) + ListFleetsForVehicleRequest(*iotfleetwise.ListFleetsForVehicleInput) (*request.Request, *iotfleetwise.ListFleetsForVehicleOutput) + + ListFleetsForVehiclePages(*iotfleetwise.ListFleetsForVehicleInput, func(*iotfleetwise.ListFleetsForVehicleOutput, bool) bool) error + ListFleetsForVehiclePagesWithContext(aws.Context, *iotfleetwise.ListFleetsForVehicleInput, func(*iotfleetwise.ListFleetsForVehicleOutput, bool) bool, ...request.Option) error + + ListModelManifestNodes(*iotfleetwise.ListModelManifestNodesInput) (*iotfleetwise.ListModelManifestNodesOutput, error) + ListModelManifestNodesWithContext(aws.Context, *iotfleetwise.ListModelManifestNodesInput, ...request.Option) (*iotfleetwise.ListModelManifestNodesOutput, error) + ListModelManifestNodesRequest(*iotfleetwise.ListModelManifestNodesInput) (*request.Request, *iotfleetwise.ListModelManifestNodesOutput) + + ListModelManifestNodesPages(*iotfleetwise.ListModelManifestNodesInput, func(*iotfleetwise.ListModelManifestNodesOutput, bool) bool) error + ListModelManifestNodesPagesWithContext(aws.Context, *iotfleetwise.ListModelManifestNodesInput, func(*iotfleetwise.ListModelManifestNodesOutput, bool) bool, ...request.Option) error + + ListModelManifests(*iotfleetwise.ListModelManifestsInput) (*iotfleetwise.ListModelManifestsOutput, error) + ListModelManifestsWithContext(aws.Context, *iotfleetwise.ListModelManifestsInput, ...request.Option) (*iotfleetwise.ListModelManifestsOutput, error) + ListModelManifestsRequest(*iotfleetwise.ListModelManifestsInput) (*request.Request, *iotfleetwise.ListModelManifestsOutput) + + ListModelManifestsPages(*iotfleetwise.ListModelManifestsInput, func(*iotfleetwise.ListModelManifestsOutput, bool) bool) error + ListModelManifestsPagesWithContext(aws.Context, *iotfleetwise.ListModelManifestsInput, func(*iotfleetwise.ListModelManifestsOutput, bool) bool, ...request.Option) error + + ListSignalCatalogNodes(*iotfleetwise.ListSignalCatalogNodesInput) (*iotfleetwise.ListSignalCatalogNodesOutput, error) + ListSignalCatalogNodesWithContext(aws.Context, *iotfleetwise.ListSignalCatalogNodesInput, ...request.Option) (*iotfleetwise.ListSignalCatalogNodesOutput, error) + ListSignalCatalogNodesRequest(*iotfleetwise.ListSignalCatalogNodesInput) (*request.Request, *iotfleetwise.ListSignalCatalogNodesOutput) + + ListSignalCatalogNodesPages(*iotfleetwise.ListSignalCatalogNodesInput, func(*iotfleetwise.ListSignalCatalogNodesOutput, bool) bool) error + ListSignalCatalogNodesPagesWithContext(aws.Context, *iotfleetwise.ListSignalCatalogNodesInput, func(*iotfleetwise.ListSignalCatalogNodesOutput, bool) bool, ...request.Option) error + + ListSignalCatalogs(*iotfleetwise.ListSignalCatalogsInput) (*iotfleetwise.ListSignalCatalogsOutput, error) + ListSignalCatalogsWithContext(aws.Context, *iotfleetwise.ListSignalCatalogsInput, ...request.Option) (*iotfleetwise.ListSignalCatalogsOutput, error) + ListSignalCatalogsRequest(*iotfleetwise.ListSignalCatalogsInput) (*request.Request, *iotfleetwise.ListSignalCatalogsOutput) + + ListSignalCatalogsPages(*iotfleetwise.ListSignalCatalogsInput, func(*iotfleetwise.ListSignalCatalogsOutput, bool) bool) error + ListSignalCatalogsPagesWithContext(aws.Context, *iotfleetwise.ListSignalCatalogsInput, func(*iotfleetwise.ListSignalCatalogsOutput, bool) bool, ...request.Option) error + + ListTagsForResource(*iotfleetwise.ListTagsForResourceInput) (*iotfleetwise.ListTagsForResourceOutput, error) + ListTagsForResourceWithContext(aws.Context, *iotfleetwise.ListTagsForResourceInput, ...request.Option) (*iotfleetwise.ListTagsForResourceOutput, error) + ListTagsForResourceRequest(*iotfleetwise.ListTagsForResourceInput) (*request.Request, *iotfleetwise.ListTagsForResourceOutput) + + ListVehicles(*iotfleetwise.ListVehiclesInput) (*iotfleetwise.ListVehiclesOutput, error) + ListVehiclesWithContext(aws.Context, *iotfleetwise.ListVehiclesInput, ...request.Option) (*iotfleetwise.ListVehiclesOutput, error) + ListVehiclesRequest(*iotfleetwise.ListVehiclesInput) (*request.Request, *iotfleetwise.ListVehiclesOutput) + + ListVehiclesPages(*iotfleetwise.ListVehiclesInput, func(*iotfleetwise.ListVehiclesOutput, bool) bool) error + ListVehiclesPagesWithContext(aws.Context, *iotfleetwise.ListVehiclesInput, func(*iotfleetwise.ListVehiclesOutput, bool) bool, ...request.Option) error + + ListVehiclesInFleet(*iotfleetwise.ListVehiclesInFleetInput) (*iotfleetwise.ListVehiclesInFleetOutput, error) + ListVehiclesInFleetWithContext(aws.Context, *iotfleetwise.ListVehiclesInFleetInput, ...request.Option) (*iotfleetwise.ListVehiclesInFleetOutput, error) + ListVehiclesInFleetRequest(*iotfleetwise.ListVehiclesInFleetInput) (*request.Request, *iotfleetwise.ListVehiclesInFleetOutput) + + ListVehiclesInFleetPages(*iotfleetwise.ListVehiclesInFleetInput, func(*iotfleetwise.ListVehiclesInFleetOutput, bool) bool) error + ListVehiclesInFleetPagesWithContext(aws.Context, *iotfleetwise.ListVehiclesInFleetInput, func(*iotfleetwise.ListVehiclesInFleetOutput, bool) bool, ...request.Option) error + + PutLoggingOptions(*iotfleetwise.PutLoggingOptionsInput) (*iotfleetwise.PutLoggingOptionsOutput, error) + PutLoggingOptionsWithContext(aws.Context, *iotfleetwise.PutLoggingOptionsInput, ...request.Option) (*iotfleetwise.PutLoggingOptionsOutput, error) + PutLoggingOptionsRequest(*iotfleetwise.PutLoggingOptionsInput) (*request.Request, *iotfleetwise.PutLoggingOptionsOutput) + + RegisterAccount(*iotfleetwise.RegisterAccountInput) (*iotfleetwise.RegisterAccountOutput, error) + RegisterAccountWithContext(aws.Context, *iotfleetwise.RegisterAccountInput, ...request.Option) (*iotfleetwise.RegisterAccountOutput, error) + RegisterAccountRequest(*iotfleetwise.RegisterAccountInput) (*request.Request, *iotfleetwise.RegisterAccountOutput) + + TagResource(*iotfleetwise.TagResourceInput) (*iotfleetwise.TagResourceOutput, error) + TagResourceWithContext(aws.Context, *iotfleetwise.TagResourceInput, ...request.Option) (*iotfleetwise.TagResourceOutput, error) + TagResourceRequest(*iotfleetwise.TagResourceInput) (*request.Request, *iotfleetwise.TagResourceOutput) + + UntagResource(*iotfleetwise.UntagResourceInput) (*iotfleetwise.UntagResourceOutput, error) + UntagResourceWithContext(aws.Context, *iotfleetwise.UntagResourceInput, ...request.Option) (*iotfleetwise.UntagResourceOutput, error) + UntagResourceRequest(*iotfleetwise.UntagResourceInput) (*request.Request, *iotfleetwise.UntagResourceOutput) + + UpdateCampaign(*iotfleetwise.UpdateCampaignInput) (*iotfleetwise.UpdateCampaignOutput, error) + UpdateCampaignWithContext(aws.Context, *iotfleetwise.UpdateCampaignInput, ...request.Option) (*iotfleetwise.UpdateCampaignOutput, error) + UpdateCampaignRequest(*iotfleetwise.UpdateCampaignInput) (*request.Request, *iotfleetwise.UpdateCampaignOutput) + + UpdateDecoderManifest(*iotfleetwise.UpdateDecoderManifestInput) (*iotfleetwise.UpdateDecoderManifestOutput, error) + UpdateDecoderManifestWithContext(aws.Context, *iotfleetwise.UpdateDecoderManifestInput, ...request.Option) (*iotfleetwise.UpdateDecoderManifestOutput, error) + UpdateDecoderManifestRequest(*iotfleetwise.UpdateDecoderManifestInput) (*request.Request, *iotfleetwise.UpdateDecoderManifestOutput) + + UpdateFleet(*iotfleetwise.UpdateFleetInput) (*iotfleetwise.UpdateFleetOutput, error) + UpdateFleetWithContext(aws.Context, *iotfleetwise.UpdateFleetInput, ...request.Option) (*iotfleetwise.UpdateFleetOutput, error) + UpdateFleetRequest(*iotfleetwise.UpdateFleetInput) (*request.Request, *iotfleetwise.UpdateFleetOutput) + + UpdateModelManifest(*iotfleetwise.UpdateModelManifestInput) (*iotfleetwise.UpdateModelManifestOutput, error) + UpdateModelManifestWithContext(aws.Context, *iotfleetwise.UpdateModelManifestInput, ...request.Option) (*iotfleetwise.UpdateModelManifestOutput, error) + UpdateModelManifestRequest(*iotfleetwise.UpdateModelManifestInput) (*request.Request, *iotfleetwise.UpdateModelManifestOutput) + + UpdateSignalCatalog(*iotfleetwise.UpdateSignalCatalogInput) (*iotfleetwise.UpdateSignalCatalogOutput, error) + UpdateSignalCatalogWithContext(aws.Context, *iotfleetwise.UpdateSignalCatalogInput, ...request.Option) (*iotfleetwise.UpdateSignalCatalogOutput, error) + UpdateSignalCatalogRequest(*iotfleetwise.UpdateSignalCatalogInput) (*request.Request, *iotfleetwise.UpdateSignalCatalogOutput) + + UpdateVehicle(*iotfleetwise.UpdateVehicleInput) (*iotfleetwise.UpdateVehicleOutput, error) + UpdateVehicleWithContext(aws.Context, *iotfleetwise.UpdateVehicleInput, ...request.Option) (*iotfleetwise.UpdateVehicleOutput, error) + UpdateVehicleRequest(*iotfleetwise.UpdateVehicleInput) (*request.Request, *iotfleetwise.UpdateVehicleOutput) +} + +var _ IoTFleetWiseAPI = (*iotfleetwise.IoTFleetWise)(nil) diff --git a/service/iotfleetwise/service.go b/service/iotfleetwise/service.go new file mode 100644 index 00000000000..8063f745a08 --- /dev/null +++ b/service/iotfleetwise/service.go @@ -0,0 +1,108 @@ +// Code generated by private/model/cli/gen-api/main.go. DO NOT EDIT. + +package iotfleetwise + +import ( + "github.com/aws/aws-sdk-go/aws" + "github.com/aws/aws-sdk-go/aws/client" + "github.com/aws/aws-sdk-go/aws/client/metadata" + "github.com/aws/aws-sdk-go/aws/request" + "github.com/aws/aws-sdk-go/aws/signer/v4" + "github.com/aws/aws-sdk-go/private/protocol" + "github.com/aws/aws-sdk-go/private/protocol/jsonrpc" +) + +// IoTFleetWise provides the API operation methods for making requests to +// AWS IoT FleetWise. See this package's package overview docs +// for details on the service. +// +// IoTFleetWise methods are safe to use concurrently. It is not safe to +// modify mutate any of the struct's properties though. +type IoTFleetWise struct { + *client.Client +} + +// Used for custom client initialization logic +var initClient func(*client.Client) + +// Used for custom request initialization logic +var initRequest func(*request.Request) + +// Service information constants +const ( + ServiceName = "IoTFleetWise" // Name of service. + EndpointsID = "iotfleetwise" // ID to lookup a service endpoint with. + ServiceID = "IoTFleetWise" // ServiceID is a unique identifier of a specific service. +) + +// New creates a new instance of the IoTFleetWise client with a session. +// If additional configuration is needed for the client instance use the optional +// aws.Config parameter to add your extra config. +// +// Example: +// +// mySession := session.Must(session.NewSession()) +// +// // Create a IoTFleetWise client from just a session. +// svc := iotfleetwise.New(mySession) +// +// // Create a IoTFleetWise client with additional configuration +// svc := iotfleetwise.New(mySession, aws.NewConfig().WithRegion("us-west-2")) +func New(p client.ConfigProvider, cfgs ...*aws.Config) *IoTFleetWise { + c := p.ClientConfig(EndpointsID, cfgs...) + if c.SigningNameDerived || len(c.SigningName) == 0 { + c.SigningName = "iotfleetwise" + } + return newClient(*c.Config, c.Handlers, c.PartitionID, c.Endpoint, c.SigningRegion, c.SigningName, c.ResolvedRegion) +} + +// newClient creates, initializes and returns a new service client instance. +func newClient(cfg aws.Config, handlers request.Handlers, partitionID, endpoint, signingRegion, signingName, resolvedRegion string) *IoTFleetWise { + svc := &IoTFleetWise{ + Client: client.New( + cfg, + metadata.ClientInfo{ + ServiceName: ServiceName, + ServiceID: ServiceID, + SigningName: signingName, + SigningRegion: signingRegion, + PartitionID: partitionID, + Endpoint: endpoint, + APIVersion: "2021-06-17", + ResolvedRegion: resolvedRegion, + JSONVersion: "1.0", + TargetPrefix: "IoTAutobahnControlPlane", + }, + handlers, + ), + } + + // Handlers + svc.Handlers.Sign.PushBackNamed(v4.SignRequestHandler) + svc.Handlers.Build.PushBackNamed(jsonrpc.BuildHandler) + svc.Handlers.Unmarshal.PushBackNamed(jsonrpc.UnmarshalHandler) + svc.Handlers.UnmarshalMeta.PushBackNamed(jsonrpc.UnmarshalMetaHandler) + svc.Handlers.UnmarshalError.PushBackNamed( + protocol.NewUnmarshalErrorHandler(jsonrpc.NewUnmarshalTypedError(exceptionFromCode)).NamedHandler(), + ) + + // Run custom client initialization if present + if initClient != nil { + initClient(svc.Client) + } + + return svc +} + +// newRequest creates a new request for a IoTFleetWise operation and runs any +// custom request initialization. +func (c *IoTFleetWise) newRequest(op *request.Operation, params, data interface{}) *request.Request { + req := c.NewRequest(op, params, data) + + // Run custom request initialization if present + if initRequest != nil { + initRequest(req) + } + + return req +} diff --git a/service/ssm/api.go b/service/ssm/api.go index ddd6a28c11b..f17e0a4c842 100644 --- a/service/ssm/api.go +++ b/service/ssm/api.go @@ -642,7 +642,7 @@ func (c *SSM) CreateAssociationRequest(input *CreateAssociationInput) (req *requ // TargetMap parameter isn't valid. // // - InvalidTag -// The specified tag key or value is not valid. +// The tag key or value isn't valid. // // See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/CreateAssociation func (c *SSM) CreateAssociation(input *CreateAssociationInput) (*CreateAssociationOutput, error) { @@ -15849,6 +15849,173 @@ func (s AddTagsToResourceOutput) GoString() string { return s.String() } +// A CloudWatch alarm you apply to an automation or command. +type Alarm struct { + _ struct{} `type:"structure"` + + // The name of your CloudWatch alarm. + // + // Name is a required field + Name *string `min:"1" type:"string" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s Alarm) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s Alarm) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *Alarm) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "Alarm"} + if s.Name == nil { + invalidParams.Add(request.NewErrParamRequired("Name")) + } + if s.Name != nil && len(*s.Name) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Name", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetName sets the Name field's value. +func (s *Alarm) SetName(v string) *Alarm { + s.Name = &v + return s +} + +// The details for the CloudWatch alarm you want to apply to an automation or +// command. +type AlarmConfiguration struct { + _ struct{} `type:"structure"` + + // The name of the CloudWatch alarm specified in the configuration. + // + // Alarms is a required field + Alarms []*Alarm `min:"1" type:"list" required:"true"` + + // If you specify true for this value, your automation or command continue to + // run even if we can't gather information about the state of your CloudWatch + // alarm. The default value is false. + IgnorePollAlarmFailure *bool `type:"boolean"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AlarmConfiguration) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AlarmConfiguration) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *AlarmConfiguration) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "AlarmConfiguration"} + if s.Alarms == nil { + invalidParams.Add(request.NewErrParamRequired("Alarms")) + } + if s.Alarms != nil && len(s.Alarms) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Alarms", 1)) + } + if s.Alarms != nil { + for i, v := range s.Alarms { + if v == nil { + continue + } + if err := v.Validate(); err != nil { + invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Alarms", i), err.(request.ErrInvalidParams)) + } + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetAlarms sets the Alarms field's value. +func (s *AlarmConfiguration) SetAlarms(v []*Alarm) *AlarmConfiguration { + s.Alarms = v + return s +} + +// SetIgnorePollAlarmFailure sets the IgnorePollAlarmFailure field's value. +func (s *AlarmConfiguration) SetIgnorePollAlarmFailure(v bool) *AlarmConfiguration { + s.IgnorePollAlarmFailure = &v + return s +} + +// The details about the state of your CloudWatch alarm. +type AlarmStateInformation struct { + _ struct{} `type:"structure"` + + // The name of your CloudWatch alarm. + // + // Name is a required field + Name *string `min:"1" type:"string" required:"true"` + + // The state of your CloudWatch alarm. + // + // State is a required field + State *string `type:"string" required:"true" enum:"ExternalAlarmState"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AlarmStateInformation) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AlarmStateInformation) GoString() string { + return s.String() +} + +// SetName sets the Name field's value. +func (s *AlarmStateInformation) SetName(v string) *AlarmStateInformation { + s.Name = &v + return s +} + +// SetState sets the State field's value. +func (s *AlarmStateInformation) SetState(v string) *AlarmStateInformation { + s.State = &v + return s +} + // Error returned if an attempt is made to register a patch group with a patch // baseline that is already registered with a different patch baseline. type AlreadyExistsException struct { @@ -16321,6 +16488,10 @@ func (s *AssociationAlreadyExists) RequestID() string { type AssociationDescription struct { _ struct{} `type:"structure"` + // The details for the CloudWatch alarm you want to apply to an automation or + // command. + AlarmConfiguration *AlarmConfiguration `type:"structure"` + // By default, when you create a new associations, the system runs it immediately // after it is created and then according to the schedule you specified. Specify // this option if you don't want an association to run immediately after you @@ -16444,6 +16615,9 @@ type AssociationDescription struct { // The managed nodes targeted by the request. Targets []*Target `type:"list"` + + // The CloudWatch alarm that was invoked during the association. + TriggeredAlarms []*AlarmStateInformation `min:"1" type:"list"` } // String returns the string representation. @@ -16464,6 +16638,12 @@ func (s AssociationDescription) GoString() string { return s.String() } +// SetAlarmConfiguration sets the AlarmConfiguration field's value. +func (s *AssociationDescription) SetAlarmConfiguration(v *AlarmConfiguration) *AssociationDescription { + s.AlarmConfiguration = v + return s +} + // SetApplyOnlyAtCronInterval sets the ApplyOnlyAtCronInterval field's value. func (s *AssociationDescription) SetApplyOnlyAtCronInterval(v bool) *AssociationDescription { s.ApplyOnlyAtCronInterval = &v @@ -16620,6 +16800,12 @@ func (s *AssociationDescription) SetTargets(v []*Target) *AssociationDescription return s } +// SetTriggeredAlarms sets the TriggeredAlarms field's value. +func (s *AssociationDescription) SetTriggeredAlarms(v []*AlarmStateInformation) *AssociationDescription { + s.TriggeredAlarms = v + return s +} + // The specified association doesn't exist. type AssociationDoesNotExist struct { _ struct{} `type:"structure"` @@ -16688,6 +16874,10 @@ func (s *AssociationDoesNotExist) RequestID() string { type AssociationExecution struct { _ struct{} `type:"structure"` + // The details for the CloudWatch alarm you want to apply to an automation or + // command. + AlarmConfiguration *AlarmConfiguration `type:"structure"` + // The association ID. AssociationId *string `type:"string"` @@ -16712,6 +16902,9 @@ type AssociationExecution struct { // The status of the association execution. Status *string `type:"string"` + + // The CloudWatch alarms that were invoked by the association. + TriggeredAlarms []*AlarmStateInformation `min:"1" type:"list"` } // String returns the string representation. @@ -16732,6 +16925,12 @@ func (s AssociationExecution) GoString() string { return s.String() } +// SetAlarmConfiguration sets the AlarmConfiguration field's value. +func (s *AssociationExecution) SetAlarmConfiguration(v *AlarmConfiguration) *AssociationExecution { + s.AlarmConfiguration = v + return s +} + // SetAssociationId sets the AssociationId field's value. func (s *AssociationExecution) SetAssociationId(v string) *AssociationExecution { s.AssociationId = &v @@ -16780,6 +16979,12 @@ func (s *AssociationExecution) SetStatus(v string) *AssociationExecution { return s } +// SetTriggeredAlarms sets the TriggeredAlarms field's value. +func (s *AssociationExecution) SetTriggeredAlarms(v []*AlarmStateInformation) *AssociationExecution { + s.TriggeredAlarms = v + return s +} + // The specified execution ID doesn't exist. Verify the ID number and try again. type AssociationExecutionDoesNotExist struct { _ struct{} `type:"structure"` @@ -18046,6 +18251,9 @@ func (s *AutomationDefinitionVersionNotFoundException) RequestID() string { type AutomationExecution struct { _ struct{} `type:"structure"` + // The details for the CloudWatch alarm applied to your automation. + AlarmConfiguration *AlarmConfiguration `type:"structure"` + // The ID of a State Manager association used in the Automation operation. AssociationId *string `type:"string"` @@ -18151,6 +18359,9 @@ type AutomationExecution struct { // The specified targets. Targets []*Target `type:"list"` + + // The CloudWatch alarm that was invoked by the automation. + TriggeredAlarms []*AlarmStateInformation `min:"1" type:"list"` } // String returns the string representation. @@ -18171,6 +18382,12 @@ func (s AutomationExecution) GoString() string { return s.String() } +// SetAlarmConfiguration sets the AlarmConfiguration field's value. +func (s *AutomationExecution) SetAlarmConfiguration(v *AlarmConfiguration) *AutomationExecution { + s.AlarmConfiguration = v + return s +} + // SetAssociationId sets the AssociationId field's value. func (s *AutomationExecution) SetAssociationId(v string) *AutomationExecution { s.AssociationId = &v @@ -18357,6 +18574,12 @@ func (s *AutomationExecution) SetTargets(v []*Target) *AutomationExecution { return s } +// SetTriggeredAlarms sets the TriggeredAlarms field's value. +func (s *AutomationExecution) SetTriggeredAlarms(v []*AlarmStateInformation) *AutomationExecution { + s.TriggeredAlarms = v + return s +} + // A filter used to match specific automation executions. This is used to limit // the scope of Automation execution information returned. type AutomationExecutionFilter struct { @@ -18492,6 +18715,9 @@ func (s *AutomationExecutionLimitExceededException) RequestID() string { type AutomationExecutionMetadata struct { _ struct{} `type:"structure"` + // The details for the CloudWatch alarm applied to your automation. + AlarmConfiguration *AlarmConfiguration `type:"structure"` + // The ID of a State Manager association used in the Automation operation. AssociationId *string `type:"string"` @@ -18587,6 +18813,9 @@ type AutomationExecutionMetadata struct { // The targets defined by the user when starting the automation. Targets []*Target `type:"list"` + + // The CloudWatch alarm that was invoked by the automation. + TriggeredAlarms []*AlarmStateInformation `min:"1" type:"list"` } // String returns the string representation. @@ -18607,6 +18836,12 @@ func (s AutomationExecutionMetadata) GoString() string { return s.String() } +// SetAlarmConfiguration sets the AlarmConfiguration field's value. +func (s *AutomationExecutionMetadata) SetAlarmConfiguration(v *AlarmConfiguration) *AutomationExecutionMetadata { + s.AlarmConfiguration = v + return s +} + // SetAssociationId sets the AssociationId field's value. func (s *AutomationExecutionMetadata) SetAssociationId(v string) *AutomationExecutionMetadata { s.AssociationId = &v @@ -18775,6 +19010,12 @@ func (s *AutomationExecutionMetadata) SetTargets(v []*Target) *AutomationExecuti return s } +// SetTriggeredAlarms sets the TriggeredAlarms field's value. +func (s *AutomationExecutionMetadata) SetTriggeredAlarms(v []*AlarmStateInformation) *AutomationExecutionMetadata { + s.TriggeredAlarms = v + return s +} + // There is no automation execution information for the requested automation // execution ID. type AutomationExecutionNotFoundException struct { @@ -19283,6 +19524,9 @@ func (s *CloudWatchOutputConfig) SetCloudWatchOutputEnabled(v bool) *CloudWatchO type Command struct { _ struct{} `type:"structure"` + // The details for the CloudWatch alarm applied to your command. + AlarmConfiguration *AlarmConfiguration `type:"structure"` + // Amazon CloudWatch Logs information where you want Amazon Web Services Systems // Manager to send the command output. CloudWatchOutputConfig *CloudWatchOutputConfig `type:"structure"` @@ -19421,6 +19665,9 @@ type Command struct { // The TimeoutSeconds value specified for a command. TimeoutSeconds *int64 `min:"30" type:"integer"` + + // The CloudWatch alarm that was invoked by the command. + TriggeredAlarms []*AlarmStateInformation `min:"1" type:"list"` } // String returns the string representation. @@ -19441,6 +19688,12 @@ func (s Command) GoString() string { return s.String() } +// SetAlarmConfiguration sets the AlarmConfiguration field's value. +func (s *Command) SetAlarmConfiguration(v *AlarmConfiguration) *Command { + s.AlarmConfiguration = v + return s +} + // SetCloudWatchOutputConfig sets the CloudWatchOutputConfig field's value. func (s *Command) SetCloudWatchOutputConfig(v *CloudWatchOutputConfig) *Command { s.CloudWatchOutputConfig = v @@ -19585,6 +19838,12 @@ func (s *Command) SetTimeoutSeconds(v int64) *Command { return s } +// SetTriggeredAlarms sets the TriggeredAlarms field's value. +func (s *Command) SetTriggeredAlarms(v []*AlarmStateInformation) *Command { + s.TriggeredAlarms = v + return s +} + // Describes a command filter. // // A managed node ID can't be specified when a command status is Pending because @@ -20926,6 +21185,10 @@ func (s *CreateAssociationBatchOutput) SetSuccessful(v []*AssociationDescription type CreateAssociationBatchRequestEntry struct { _ struct{} `type:"structure"` + // The details for the CloudWatch alarm you want to apply to an automation or + // command. + AlarmConfiguration *AlarmConfiguration `type:"structure"` + // By default, when you create a new associations, the system runs it immediately // after it is created and then according to the schedule you specified. Specify // this option if you don't want an association to run immediately after you @@ -21096,6 +21359,11 @@ func (s *CreateAssociationBatchRequestEntry) Validate() error { if s.TargetLocations != nil && len(s.TargetLocations) < 1 { invalidParams.Add(request.NewErrParamMinLen("TargetLocations", 1)) } + if s.AlarmConfiguration != nil { + if err := s.AlarmConfiguration.Validate(); err != nil { + invalidParams.AddNested("AlarmConfiguration", err.(request.ErrInvalidParams)) + } + } if s.OutputLocation != nil { if err := s.OutputLocation.Validate(); err != nil { invalidParams.AddNested("OutputLocation", err.(request.ErrInvalidParams)) @@ -21128,6 +21396,12 @@ func (s *CreateAssociationBatchRequestEntry) Validate() error { return nil } +// SetAlarmConfiguration sets the AlarmConfiguration field's value. +func (s *CreateAssociationBatchRequestEntry) SetAlarmConfiguration(v *AlarmConfiguration) *CreateAssociationBatchRequestEntry { + s.AlarmConfiguration = v + return s +} + // SetApplyOnlyAtCronInterval sets the ApplyOnlyAtCronInterval field's value. func (s *CreateAssociationBatchRequestEntry) SetApplyOnlyAtCronInterval(v bool) *CreateAssociationBatchRequestEntry { s.ApplyOnlyAtCronInterval = &v @@ -21239,6 +21513,10 @@ func (s *CreateAssociationBatchRequestEntry) SetTargets(v []*Target) *CreateAsso type CreateAssociationInput struct { _ struct{} `type:"structure"` + // The details for the CloudWatch alarm you want to apply to an automation or + // command. + AlarmConfiguration *AlarmConfiguration `type:"structure"` + // By default, when you create a new association, the system runs it immediately // after it is created and then according to the schedule you specified. Specify // this option if you don't want an association to run immediately after you @@ -21374,11 +21652,10 @@ type CreateAssociationInput struct { // By default, all associations use AUTO mode. SyncCompliance *string `type:"string" enum:"AssociationSyncCompliance"` - // Adds or overwrites one or more tags for a State Manager association. Tags - // are metadata that you can assign to your Amazon Web Services resources. Tags - // enable you to categorize your resources in different ways, for example, by - // purpose, owner, or environment. Each tag consists of a key and an optional - // value, both of which you define. + // Optional metadata that you assign to a resource. Tags enable you to categorize + // a resource in different ways, such as by purpose, owner, or environment. + // For example, you might want to tag an association to identify the type of + // resource to which it applies, the environment, or the purpose of the association. Tags []*Tag `type:"list"` // A location is a combination of Amazon Web Services Regions and Amazon Web @@ -21442,6 +21719,11 @@ func (s *CreateAssociationInput) Validate() error { if s.TargetLocations != nil && len(s.TargetLocations) < 1 { invalidParams.Add(request.NewErrParamMinLen("TargetLocations", 1)) } + if s.AlarmConfiguration != nil { + if err := s.AlarmConfiguration.Validate(); err != nil { + invalidParams.AddNested("AlarmConfiguration", err.(request.ErrInvalidParams)) + } + } if s.OutputLocation != nil { if err := s.OutputLocation.Validate(); err != nil { invalidParams.AddNested("OutputLocation", err.(request.ErrInvalidParams)) @@ -21484,6 +21766,12 @@ func (s *CreateAssociationInput) Validate() error { return nil } +// SetAlarmConfiguration sets the AlarmConfiguration field's value. +func (s *CreateAssociationInput) SetAlarmConfiguration(v *AlarmConfiguration) *CreateAssociationInput { + s.AlarmConfiguration = v + return s +} + // SetApplyOnlyAtCronInterval sets the ApplyOnlyAtCronInterval field's value. func (s *CreateAssociationInput) SetApplyOnlyAtCronInterval(v bool) *CreateAssociationInput { s.ApplyOnlyAtCronInterval = &v @@ -32347,6 +32635,10 @@ func (s *GetMaintenanceWindowExecutionTaskInvocationOutput) SetWindowTargetId(v type GetMaintenanceWindowExecutionTaskOutput struct { _ struct{} `type:"structure"` + // The details for the CloudWatch alarm you applied to your maintenance window + // task. + AlarmConfiguration *AlarmConfiguration `type:"structure"` + // The time the task execution completed. EndTime *time.Time `type:"timestamp"` @@ -32397,6 +32689,9 @@ type GetMaintenanceWindowExecutionTaskOutput struct { // String and GoString methods. TaskParameters []map[string]*MaintenanceWindowTaskParameterValueExpression `type:"list" sensitive:"true"` + // The CloudWatch alarms that were invoked by the maintenance window task. + TriggeredAlarms []*AlarmStateInformation `min:"1" type:"list"` + // The type of task that was run. Type *string `type:"string" enum:"MaintenanceWindowTaskType"` @@ -32422,6 +32717,12 @@ func (s GetMaintenanceWindowExecutionTaskOutput) GoString() string { return s.String() } +// SetAlarmConfiguration sets the AlarmConfiguration field's value. +func (s *GetMaintenanceWindowExecutionTaskOutput) SetAlarmConfiguration(v *AlarmConfiguration) *GetMaintenanceWindowExecutionTaskOutput { + s.AlarmConfiguration = v + return s +} + // SetEndTime sets the EndTime field's value. func (s *GetMaintenanceWindowExecutionTaskOutput) SetEndTime(v time.Time) *GetMaintenanceWindowExecutionTaskOutput { s.EndTime = &v @@ -32488,6 +32789,12 @@ func (s *GetMaintenanceWindowExecutionTaskOutput) SetTaskParameters(v []map[stri return s } +// SetTriggeredAlarms sets the TriggeredAlarms field's value. +func (s *GetMaintenanceWindowExecutionTaskOutput) SetTriggeredAlarms(v []*AlarmStateInformation) *GetMaintenanceWindowExecutionTaskOutput { + s.TriggeredAlarms = v + return s +} + // SetType sets the Type field's value. func (s *GetMaintenanceWindowExecutionTaskOutput) SetType(v string) *GetMaintenanceWindowExecutionTaskOutput { s.Type = &v @@ -32790,6 +33097,10 @@ func (s *GetMaintenanceWindowTaskInput) SetWindowTaskId(v string) *GetMaintenanc type GetMaintenanceWindowTaskOutput struct { _ struct{} `type:"structure"` + // The details for the CloudWatch alarm you applied to your maintenance window + // task. + AlarmConfiguration *AlarmConfiguration `type:"structure"` + // The action to take on tasks when the maintenance window cutoff time is reached. // CONTINUE_TASK means that tasks continue to run. For Automation, Lambda, Step // Functions tasks, CANCEL_TASK means that currently running task invocations @@ -32895,6 +33206,12 @@ func (s GetMaintenanceWindowTaskOutput) GoString() string { return s.String() } +// SetAlarmConfiguration sets the AlarmConfiguration field's value. +func (s *GetMaintenanceWindowTaskOutput) SetAlarmConfiguration(v *AlarmConfiguration) *GetMaintenanceWindowTaskOutput { + s.AlarmConfiguration = v + return s +} + // SetCutoffBehavior sets the CutoffBehavior field's value. func (s *GetMaintenanceWindowTaskOutput) SetCutoffBehavior(v string) *GetMaintenanceWindowTaskOutput { s.CutoffBehavior = &v @@ -38554,7 +38871,7 @@ func (s *InvalidSchedule) RequestID() string { return s.RespMetadata.RequestID } -// The specified tag key or value is not valid. +// The tag key or value isn't valid. type InvalidTag struct { _ struct{} `type:"structure"` RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` @@ -42295,6 +42612,9 @@ func (s *MaintenanceWindowExecution) SetWindowId(v string) *MaintenanceWindowExe type MaintenanceWindowExecutionTaskIdentity struct { _ struct{} `type:"structure"` + // The details for the CloudWatch alarm applied to your maintenance window task. + AlarmConfiguration *AlarmConfiguration `type:"structure"` + // The time the task execution finished. EndTime *time.Time `type:"timestamp"` @@ -42317,6 +42637,9 @@ type MaintenanceWindowExecutionTaskIdentity struct { // The type of task that ran. TaskType *string `type:"string" enum:"MaintenanceWindowTaskType"` + // The CloudWatch alarm that was invoked by the maintenance window task. + TriggeredAlarms []*AlarmStateInformation `min:"1" type:"list"` + // The ID of the maintenance window execution that ran the task. WindowExecutionId *string `min:"36" type:"string"` } @@ -42339,6 +42662,12 @@ func (s MaintenanceWindowExecutionTaskIdentity) GoString() string { return s.String() } +// SetAlarmConfiguration sets the AlarmConfiguration field's value. +func (s *MaintenanceWindowExecutionTaskIdentity) SetAlarmConfiguration(v *AlarmConfiguration) *MaintenanceWindowExecutionTaskIdentity { + s.AlarmConfiguration = v + return s +} + // SetEndTime sets the EndTime field's value. func (s *MaintenanceWindowExecutionTaskIdentity) SetEndTime(v time.Time) *MaintenanceWindowExecutionTaskIdentity { s.EndTime = &v @@ -42381,6 +42710,12 @@ func (s *MaintenanceWindowExecutionTaskIdentity) SetTaskType(v string) *Maintena return s } +// SetTriggeredAlarms sets the TriggeredAlarms field's value. +func (s *MaintenanceWindowExecutionTaskIdentity) SetTriggeredAlarms(v []*AlarmStateInformation) *MaintenanceWindowExecutionTaskIdentity { + s.TriggeredAlarms = v + return s +} + // SetWindowExecutionId sets the WindowExecutionId field's value. func (s *MaintenanceWindowExecutionTaskIdentity) SetWindowExecutionId(v string) *MaintenanceWindowExecutionTaskIdentity { s.WindowExecutionId = &v @@ -43239,6 +43574,9 @@ func (s *MaintenanceWindowTarget) SetWindowTargetId(v string) *MaintenanceWindow type MaintenanceWindowTask struct { _ struct{} `type:"structure"` + // The details for the CloudWatch alarm applied to your maintenance window task. + AlarmConfiguration *AlarmConfiguration `type:"structure"` + // The specification for whether tasks should continue to run after the cutoff // time specified in the maintenance windows is reached. CutoffBehavior *string `type:"string" enum:"MaintenanceWindowTaskCutoffBehavior"` @@ -43345,6 +43683,12 @@ func (s MaintenanceWindowTask) GoString() string { return s.String() } +// SetAlarmConfiguration sets the AlarmConfiguration field's value. +func (s *MaintenanceWindowTask) SetAlarmConfiguration(v *AlarmConfiguration) *MaintenanceWindowTask { + s.AlarmConfiguration = v + return s +} + // SetCutoffBehavior sets the CutoffBehavior field's value. func (s *MaintenanceWindowTask) SetCutoffBehavior(v string) *MaintenanceWindowTask { s.CutoffBehavior = &v @@ -49432,6 +49776,9 @@ func (s *RegisterTargetWithMaintenanceWindowOutput) SetWindowTargetId(v string) type RegisterTaskWithMaintenanceWindowInput struct { _ struct{} `type:"structure"` + // The CloudWatch alarm you want to apply to your maintenance window task. + AlarmConfiguration *AlarmConfiguration `type:"structure"` + // User-provided idempotency token. ClientToken *string `min:"1" type:"string" idempotencyToken:"true"` @@ -49613,6 +49960,11 @@ func (s *RegisterTaskWithMaintenanceWindowInput) Validate() error { if s.WindowId != nil && len(*s.WindowId) < 20 { invalidParams.Add(request.NewErrParamMinLen("WindowId", 20)) } + if s.AlarmConfiguration != nil { + if err := s.AlarmConfiguration.Validate(); err != nil { + invalidParams.AddNested("AlarmConfiguration", err.(request.ErrInvalidParams)) + } + } if s.LoggingInfo != nil { if err := s.LoggingInfo.Validate(); err != nil { invalidParams.AddNested("LoggingInfo", err.(request.ErrInvalidParams)) @@ -49640,6 +49992,12 @@ func (s *RegisterTaskWithMaintenanceWindowInput) Validate() error { return nil } +// SetAlarmConfiguration sets the AlarmConfiguration field's value. +func (s *RegisterTaskWithMaintenanceWindowInput) SetAlarmConfiguration(v *AlarmConfiguration) *RegisterTaskWithMaintenanceWindowInput { + s.AlarmConfiguration = v + return s +} + // SetClientToken sets the ClientToken field's value. func (s *RegisterTaskWithMaintenanceWindowInput) SetClientToken(v string) *RegisterTaskWithMaintenanceWindowInput { s.ClientToken = &v @@ -51963,6 +52321,9 @@ func (s SendAutomationSignalOutput) GoString() string { type SendCommandInput struct { _ struct{} `type:"structure"` + // The CloudWatch alarm you want to apply to your command. + AlarmConfiguration *AlarmConfiguration `type:"structure"` + // Enables Amazon Web Services Systems Manager to send Run Command output to // Amazon CloudWatch Logs. Run Command is a capability of Amazon Web Services // Systems Manager. @@ -52128,6 +52489,11 @@ func (s *SendCommandInput) Validate() error { if s.TimeoutSeconds != nil && *s.TimeoutSeconds < 30 { invalidParams.Add(request.NewErrParamMinValue("TimeoutSeconds", 30)) } + if s.AlarmConfiguration != nil { + if err := s.AlarmConfiguration.Validate(); err != nil { + invalidParams.AddNested("AlarmConfiguration", err.(request.ErrInvalidParams)) + } + } if s.CloudWatchOutputConfig != nil { if err := s.CloudWatchOutputConfig.Validate(); err != nil { invalidParams.AddNested("CloudWatchOutputConfig", err.(request.ErrInvalidParams)) @@ -52150,6 +52516,12 @@ func (s *SendCommandInput) Validate() error { return nil } +// SetAlarmConfiguration sets the AlarmConfiguration field's value. +func (s *SendCommandInput) SetAlarmConfiguration(v *AlarmConfiguration) *SendCommandInput { + s.AlarmConfiguration = v + return s +} + // SetCloudWatchOutputConfig sets the CloudWatchOutputConfig field's value. func (s *SendCommandInput) SetCloudWatchOutputConfig(v *CloudWatchOutputConfig) *SendCommandInput { s.CloudWatchOutputConfig = v @@ -52865,6 +53237,9 @@ func (s StartAssociationsOnceOutput) GoString() string { type StartAutomationExecutionInput struct { _ struct{} `type:"structure"` + // The CloudWatch alarm you want to apply to your automation. + AlarmConfiguration *AlarmConfiguration `type:"structure"` + // User-provided idempotency token. The token must be unique, is case insensitive, // enforces the UUID format, and can't be reused. ClientToken *string `min:"36" type:"string"` @@ -52986,6 +53361,11 @@ func (s *StartAutomationExecutionInput) Validate() error { if s.TargetParameterName != nil && len(*s.TargetParameterName) < 1 { invalidParams.Add(request.NewErrParamMinLen("TargetParameterName", 1)) } + if s.AlarmConfiguration != nil { + if err := s.AlarmConfiguration.Validate(); err != nil { + invalidParams.AddNested("AlarmConfiguration", err.(request.ErrInvalidParams)) + } + } if s.Tags != nil { for i, v := range s.Tags { if v == nil { @@ -53023,6 +53403,12 @@ func (s *StartAutomationExecutionInput) Validate() error { return nil } +// SetAlarmConfiguration sets the AlarmConfiguration field's value. +func (s *StartAutomationExecutionInput) SetAlarmConfiguration(v *AlarmConfiguration) *StartAutomationExecutionInput { + s.AlarmConfiguration = v + return s +} + // SetClientToken sets the ClientToken field's value. func (s *StartAutomationExecutionInput) SetClientToken(v string) *StartAutomationExecutionInput { s.ClientToken = &v @@ -55292,6 +55678,10 @@ func (s *UnsupportedPlatformType) RequestID() string { type UpdateAssociationInput struct { _ struct{} `type:"structure"` + // The details for the CloudWatch alarm you want to apply to an automation or + // command. + AlarmConfiguration *AlarmConfiguration `type:"structure"` + // By default, when you update an association, the system runs it immediately // after it is updated and then according to the schedule you specified. Specify // this option if you don't want an association to run immediately after you @@ -55494,6 +55884,11 @@ func (s *UpdateAssociationInput) Validate() error { if s.TargetLocations != nil && len(s.TargetLocations) < 1 { invalidParams.Add(request.NewErrParamMinLen("TargetLocations", 1)) } + if s.AlarmConfiguration != nil { + if err := s.AlarmConfiguration.Validate(); err != nil { + invalidParams.AddNested("AlarmConfiguration", err.(request.ErrInvalidParams)) + } + } if s.OutputLocation != nil { if err := s.OutputLocation.Validate(); err != nil { invalidParams.AddNested("OutputLocation", err.(request.ErrInvalidParams)) @@ -55526,6 +55921,12 @@ func (s *UpdateAssociationInput) Validate() error { return nil } +// SetAlarmConfiguration sets the AlarmConfiguration field's value. +func (s *UpdateAssociationInput) SetAlarmConfiguration(v *AlarmConfiguration) *UpdateAssociationInput { + s.AlarmConfiguration = v + return s +} + // SetApplyOnlyAtCronInterval sets the ApplyOnlyAtCronInterval field's value. func (s *UpdateAssociationInput) SetApplyOnlyAtCronInterval(v bool) *UpdateAssociationInput { s.ApplyOnlyAtCronInterval = &v @@ -56707,6 +57108,9 @@ func (s *UpdateMaintenanceWindowTargetOutput) SetWindowTargetId(v string) *Updat type UpdateMaintenanceWindowTaskInput struct { _ struct{} `type:"structure"` + // The CloudWatch alarm you want to apply to your maintenance window task. + AlarmConfiguration *AlarmConfiguration `type:"structure"` + // Indicates whether tasks should continue to run after the cutoff time specified // in the maintenance windows is reached. // @@ -56893,6 +57297,11 @@ func (s *UpdateMaintenanceWindowTaskInput) Validate() error { if s.WindowTaskId != nil && len(*s.WindowTaskId) < 36 { invalidParams.Add(request.NewErrParamMinLen("WindowTaskId", 36)) } + if s.AlarmConfiguration != nil { + if err := s.AlarmConfiguration.Validate(); err != nil { + invalidParams.AddNested("AlarmConfiguration", err.(request.ErrInvalidParams)) + } + } if s.LoggingInfo != nil { if err := s.LoggingInfo.Validate(); err != nil { invalidParams.AddNested("LoggingInfo", err.(request.ErrInvalidParams)) @@ -56920,6 +57329,12 @@ func (s *UpdateMaintenanceWindowTaskInput) Validate() error { return nil } +// SetAlarmConfiguration sets the AlarmConfiguration field's value. +func (s *UpdateMaintenanceWindowTaskInput) SetAlarmConfiguration(v *AlarmConfiguration) *UpdateMaintenanceWindowTaskInput { + s.AlarmConfiguration = v + return s +} + // SetCutoffBehavior sets the CutoffBehavior field's value. func (s *UpdateMaintenanceWindowTaskInput) SetCutoffBehavior(v string) *UpdateMaintenanceWindowTaskInput { s.CutoffBehavior = &v @@ -57013,6 +57428,10 @@ func (s *UpdateMaintenanceWindowTaskInput) SetWindowTaskId(v string) *UpdateMain type UpdateMaintenanceWindowTaskOutput struct { _ struct{} `type:"structure"` + // The details for the CloudWatch alarm you applied to your maintenance window + // task. + AlarmConfiguration *AlarmConfiguration `type:"structure"` + // The specification for whether tasks should continue to run after the cutoff // time specified in the maintenance windows is reached. CutoffBehavior *string `type:"string" enum:"MaintenanceWindowTaskCutoffBehavior"` @@ -57096,6 +57515,12 @@ func (s UpdateMaintenanceWindowTaskOutput) GoString() string { return s.String() } +// SetAlarmConfiguration sets the AlarmConfiguration field's value. +func (s *UpdateMaintenanceWindowTaskOutput) SetAlarmConfiguration(v *AlarmConfiguration) *UpdateMaintenanceWindowTaskOutput { + s.AlarmConfiguration = v + return s +} + // SetCutoffBehavior sets the CutoffBehavior field's value. func (s *UpdateMaintenanceWindowTaskOutput) SetCutoffBehavior(v string) *UpdateMaintenanceWindowTaskOutput { s.CutoffBehavior = &v @@ -59103,6 +59528,22 @@ func ExecutionMode_Values() []string { } } +const ( + // ExternalAlarmStateUnknown is a ExternalAlarmState enum value + ExternalAlarmStateUnknown = "UNKNOWN" + + // ExternalAlarmStateAlarm is a ExternalAlarmState enum value + ExternalAlarmStateAlarm = "ALARM" +) + +// ExternalAlarmState_Values returns all elements of the ExternalAlarmState enum +func ExternalAlarmState_Values() []string { + return []string{ + ExternalAlarmStateUnknown, + ExternalAlarmStateAlarm, + } +} + const ( // FaultClient is a Fault enum value FaultClient = "Client" diff --git a/service/ssm/errors.go b/service/ssm/errors.go index 7ddc0cb3b15..13c253edd36 100644 --- a/service/ssm/errors.go +++ b/service/ssm/errors.go @@ -514,7 +514,7 @@ const ( // ErrCodeInvalidTag for service response error code // "InvalidTag". // - // The specified tag key or value is not valid. + // The tag key or value isn't valid. ErrCodeInvalidTag = "InvalidTag" // ErrCodeInvalidTarget for service response error code