describeUpdateActions method

Future<UpdateActionsMessage> describeUpdateActions({
  1. List<String>? cacheClusterIds,
  2. String? engine,
  3. String? marker,
  4. int? maxRecords,
  5. List<String>? replicationGroupIds,
  6. String? serviceUpdateName,
  7. List<ServiceUpdateStatus>? serviceUpdateStatus,
  8. TimeRangeFilter? serviceUpdateTimeRange,
  9. bool? showNodeLevelUpdateStatus,
  10. List<UpdateActionStatus>? updateActionStatus,
})

Returns details of the update actions

May throw InvalidParameterCombinationException. May throw InvalidParameterValueException.

Parameter cacheClusterIds : The cache cluster IDs

Parameter engine : The Elasticache engine to which the update applies. Either Valkey, Redis OSS or Memcached.

Parameter marker : An optional marker returned from a prior request. Use this marker for pagination of results from this operation. If this parameter is specified, the response includes only records beyond the marker, up to the value specified by MaxRecords.

Parameter maxRecords : The maximum number of records to include in the response

Parameter replicationGroupIds : The replication group IDs

Parameter serviceUpdateName : The unique ID of the service update

Parameter serviceUpdateStatus : The status of the service update

Parameter serviceUpdateTimeRange : The range of time specified to search for service updates that are in available status

Parameter showNodeLevelUpdateStatus : Dictates whether to include node level update status in the response

Parameter updateActionStatus : The status of the update action.

Implementation

Future<UpdateActionsMessage> describeUpdateActions({
  List<String>? cacheClusterIds,
  String? engine,
  String? marker,
  int? maxRecords,
  List<String>? replicationGroupIds,
  String? serviceUpdateName,
  List<ServiceUpdateStatus>? serviceUpdateStatus,
  TimeRangeFilter? serviceUpdateTimeRange,
  bool? showNodeLevelUpdateStatus,
  List<UpdateActionStatus>? updateActionStatus,
}) async {
  final $request = <String, String>{
    if (cacheClusterIds != null)
      if (cacheClusterIds.isEmpty)
        'CacheClusterIds': ''
      else
        for (var i1 = 0; i1 < cacheClusterIds.length; i1++)
          'CacheClusterIds.member.${i1 + 1}': cacheClusterIds[i1],
    if (engine != null) 'Engine': engine,
    if (marker != null) 'Marker': marker,
    if (maxRecords != null) 'MaxRecords': maxRecords.toString(),
    if (replicationGroupIds != null)
      if (replicationGroupIds.isEmpty)
        'ReplicationGroupIds': ''
      else
        for (var i1 = 0; i1 < replicationGroupIds.length; i1++)
          'ReplicationGroupIds.member.${i1 + 1}': replicationGroupIds[i1],
    if (serviceUpdateName != null) 'ServiceUpdateName': serviceUpdateName,
    if (serviceUpdateStatus != null)
      if (serviceUpdateStatus.isEmpty)
        'ServiceUpdateStatus': ''
      else
        for (var i1 = 0; i1 < serviceUpdateStatus.length; i1++)
          'ServiceUpdateStatus.member.${i1 + 1}':
              serviceUpdateStatus[i1].value,
    if (serviceUpdateTimeRange != null)
      for (var e1 in serviceUpdateTimeRange.toQueryMap().entries)
        'ServiceUpdateTimeRange.${e1.key}': e1.value,
    if (showNodeLevelUpdateStatus != null)
      'ShowNodeLevelUpdateStatus': showNodeLevelUpdateStatus.toString(),
    if (updateActionStatus != null)
      if (updateActionStatus.isEmpty)
        'UpdateActionStatus': ''
      else
        for (var i1 = 0; i1 < updateActionStatus.length; i1++)
          'UpdateActionStatus.member.${i1 + 1}': updateActionStatus[i1].value,
  };
  final $result = await _protocol.send(
    $request,
    action: 'DescribeUpdateActions',
    version: '2015-02-02',
    method: 'POST',
    requestUri: '/',
    exceptionFnMap: _exceptionFns,
    resultWrapper: 'DescribeUpdateActionsResult',
  );
  return UpdateActionsMessage.fromXml($result);
}