updateMissionProfile method
Updates a mission profile.
Updating a mission profile will not update the execution parameters for existing future contacts.
May throw InvalidParameterException. May throw DependencyException. May throw ResourceNotFoundException.
Parameter missionProfileId
:
UUID of a mission profile.
Parameter contactPostPassDurationSeconds
:
Amount of time after a contact ends that you’d like to receive a
CloudWatch event indicating the pass has finished.
Parameter contactPrePassDurationSeconds
:
Amount of time after a contact ends that you’d like to receive a
CloudWatch event indicating the pass has finished.
Parameter dataflowEdges
:
A list of lists of ARNs. Each list of ARNs is an edge, with a from
Config
and a to Config
.
Parameter minimumViableContactDurationSeconds
:
Smallest amount of time in seconds that you’d like to see for an available
contact. AWS Ground Station will not present you with contacts shorter
than this duration.
Parameter name
:
Name of a mission profile.
Parameter trackingConfigArn
:
ARN of a tracking Config
.
Implementation
Future<MissionProfileIdResponse> updateMissionProfile({
required String missionProfileId,
int? contactPostPassDurationSeconds,
int? contactPrePassDurationSeconds,
List<List<String>>? dataflowEdges,
int? minimumViableContactDurationSeconds,
String? name,
String? trackingConfigArn,
}) async {
ArgumentError.checkNotNull(missionProfileId, 'missionProfileId');
_s.validateNumRange(
'contactPostPassDurationSeconds',
contactPostPassDurationSeconds,
1,
21600,
);
_s.validateNumRange(
'contactPrePassDurationSeconds',
contactPrePassDurationSeconds,
1,
21600,
);
_s.validateNumRange(
'minimumViableContactDurationSeconds',
minimumViableContactDurationSeconds,
1,
21600,
);
_s.validateStringLength(
'name',
name,
1,
256,
);
final $payload = <String, dynamic>{
if (contactPostPassDurationSeconds != null)
'contactPostPassDurationSeconds': contactPostPassDurationSeconds,
if (contactPrePassDurationSeconds != null)
'contactPrePassDurationSeconds': contactPrePassDurationSeconds,
if (dataflowEdges != null) 'dataflowEdges': dataflowEdges,
if (minimumViableContactDurationSeconds != null)
'minimumViableContactDurationSeconds':
minimumViableContactDurationSeconds,
if (name != null) 'name': name,
if (trackingConfigArn != null) 'trackingConfigArn': trackingConfigArn,
};
final response = await _protocol.send(
payload: $payload,
method: 'PUT',
requestUri: '/missionprofile/${Uri.encodeComponent(missionProfileId)}',
exceptionFnMap: _exceptionFns,
);
return MissionProfileIdResponse.fromJson(response);
}