updateChannel method
- required String channelId,
- AnywhereSettings? anywhereSettings,
- CdiInputSpecification? cdiInputSpecification,
- ChannelEngineVersionRequest? channelEngineVersion,
- List<
String> ? channelSecurityGroups, - List<
OutputDestination> ? destinations, - bool? dryRun,
- EncoderSettings? encoderSettings,
- InferenceSettings? inferenceSettings,
- List<
InputAttachment> ? inputAttachments, - InputSpecification? inputSpecification,
- LinkedChannelSettings? linkedChannelSettings,
- LogLevel? logLevel,
- MaintenanceUpdateSettings? maintenance,
- String? name,
- String? roleArn,
- SpecialRouterSettings? specialRouterSettings,
Updates a channel.
May throw BadGatewayException.
May throw BadRequestException.
May throw ConflictException.
May throw ForbiddenException.
May throw GatewayTimeoutException.
May throw InternalServerErrorException.
May throw UnprocessableEntityException.
Parameter channelId :
channel ID
Parameter anywhereSettings :
The Elemental Anywhere settings for this channel.
Parameter cdiInputSpecification :
Specification of CDI inputs for this channel
Parameter channelEngineVersion :
Channel engine version for this channel
Parameter channelSecurityGroups :
A list of IDs for all the Input Security Groups attached to the channel.
Parameter destinations :
A list of output destinations for this channel.
Parameter encoderSettings :
The encoder settings for this channel.
Parameter inferenceSettings :
Include this setting to include Elemental Inference features in this
channel.
Parameter inputSpecification :
Specification of network and file inputs for this channel
Parameter linkedChannelSettings :
The linked channel settings for the channel.
Parameter logLevel :
The log level to write to CloudWatch Logs.
Parameter maintenance :
Maintenance settings for this channel.
Parameter name :
The name of the channel.
Parameter roleArn :
An optional Amazon Resource Name (ARN) of the role to assume when running
the Channel. If you do not specify this on an update call but the role was
previously set that role will be removed.
Parameter specialRouterSettings :
When using MediaConnect Router as the source of a MediaLive input there's
a special handoff that occurs when a router output is created. This group
of settings is set on your behalf by the MediaConnect Router service using
this set of settings. This setting object can only by used by that
service.
Implementation
Future<UpdateChannelResponse> updateChannel({
required String channelId,
AnywhereSettings? anywhereSettings,
CdiInputSpecification? cdiInputSpecification,
ChannelEngineVersionRequest? channelEngineVersion,
List<String>? channelSecurityGroups,
List<OutputDestination>? destinations,
bool? dryRun,
EncoderSettings? encoderSettings,
InferenceSettings? inferenceSettings,
List<InputAttachment>? inputAttachments,
InputSpecification? inputSpecification,
LinkedChannelSettings? linkedChannelSettings,
LogLevel? logLevel,
MaintenanceUpdateSettings? maintenance,
String? name,
String? roleArn,
SpecialRouterSettings? specialRouterSettings,
}) async {
final $payload = <String, dynamic>{
if (anywhereSettings != null) 'anywhereSettings': anywhereSettings,
if (cdiInputSpecification != null)
'cdiInputSpecification': cdiInputSpecification,
if (channelEngineVersion != null)
'channelEngineVersion': channelEngineVersion,
if (channelSecurityGroups != null)
'channelSecurityGroups': channelSecurityGroups,
if (destinations != null) 'destinations': destinations,
if (dryRun != null) 'dryRun': dryRun,
if (encoderSettings != null) 'encoderSettings': encoderSettings,
if (inferenceSettings != null) 'inferenceSettings': inferenceSettings,
if (inputAttachments != null) 'inputAttachments': inputAttachments,
if (inputSpecification != null) 'inputSpecification': inputSpecification,
if (linkedChannelSettings != null)
'linkedChannelSettings': linkedChannelSettings,
if (logLevel != null) 'logLevel': logLevel.value,
if (maintenance != null) 'maintenance': maintenance,
if (name != null) 'name': name,
if (roleArn != null) 'roleArn': roleArn,
if (specialRouterSettings != null)
'specialRouterSettings': specialRouterSettings,
};
final response = await _protocol.send(
payload: $payload,
method: 'PUT',
requestUri: '/prod/channels/${Uri.encodeComponent(channelId)}',
exceptionFnMap: _exceptionFns,
);
return UpdateChannelResponse.fromJson(response);
}