createDecoderManifest method
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.
May throw AccessDeniedException.
May throw ConflictException.
May throw DecoderManifestValidationException.
May throw LimitExceededException.
May throw ResourceNotFoundException.
May throw ThrottlingException.
May throw ValidationException.
Parameter modelManifestArn :
The Amazon Resource Name (ARN) of the vehicle model (model manifest).
Parameter name :
The unique name of the decoder manifest to create.
Parameter defaultForUnmappedSignals :
Use default decoders for all unmapped signals in the model. You don't need
to provide any detailed decoding information.
Parameter description :
A brief description of the decoder manifest.
Parameter networkInterfaces :
A list of information about available network interfaces.
Parameter signalDecoders :
A list of information about signal decoders.
Parameter tags :
Metadata that can be used to manage the decoder manifest.
Implementation
Future<CreateDecoderManifestResponse> createDecoderManifest({
required String modelManifestArn,
required String name,
DefaultForUnmappedSignalsType? defaultForUnmappedSignals,
String? description,
List<NetworkInterface>? networkInterfaces,
List<SignalDecoder>? signalDecoders,
List<Tag>? tags,
}) async {
final headers = <String, String>{
'Content-Type': 'application/x-amz-json-1.0',
'X-Amz-Target': 'IoTAutobahnControlPlane.CreateDecoderManifest'
};
final jsonResponse = await _protocol.send(
method: 'POST',
requestUri: '/',
exceptionFnMap: _exceptionFns,
// TODO queryParams
headers: headers,
payload: {
'modelManifestArn': modelManifestArn,
'name': name,
if (defaultForUnmappedSignals != null)
'defaultForUnmappedSignals': defaultForUnmappedSignals.value,
if (description != null) 'description': description,
if (networkInterfaces != null) 'networkInterfaces': networkInterfaces,
if (signalDecoders != null) 'signalDecoders': signalDecoders,
if (tags != null) 'tags': tags,
},
);
return CreateDecoderManifestResponse.fromJson(jsonResponse.body);
}