describeOptionGroups method

Future<OptionGroups> describeOptionGroups({
  1. String? engineName,
  2. List<Filter>? filters,
  3. String? majorEngineVersion,
  4. String? marker,
  5. int? maxRecords,
  6. String? optionGroupName,
})

Describes the available option groups.

May throw OptionGroupNotFoundFault.

Parameter engineName : A filter to only include option groups associated with this database engine.

Valid Values:

  • db2-ae
  • db2-se
  • mariadb
  • mysql
  • oracle-ee
  • oracle-ee-cdb
  • oracle-se2
  • oracle-se2-cdb
  • postgres
  • sqlserver-ee
  • sqlserver-se
  • sqlserver-ex
  • sqlserver-web

Parameter filters : This parameter isn't currently supported.

Parameter majorEngineVersion : Filters the list of option groups to only include groups associated with a specific database engine version. If specified, then EngineName must also be specified.

Parameter marker : An optional pagination token provided by a previous DescribeOptionGroups request. 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. If more records exist than the specified MaxRecords value, a pagination token called a marker is included in the response so that you can retrieve the remaining results.

Default: 100

Constraints: Minimum 20, maximum 100.

Parameter optionGroupName : The name of the option group to describe. Can't be supplied together with EngineName or MajorEngineVersion.

Implementation

Future<OptionGroups> describeOptionGroups({
  String? engineName,
  List<Filter>? filters,
  String? majorEngineVersion,
  String? marker,
  int? maxRecords,
  String? optionGroupName,
}) async {
  final $request = <String, String>{
    if (engineName != null) 'EngineName': engineName,
    if (filters != null)
      if (filters.isEmpty)
        'Filters': ''
      else
        for (var i1 = 0; i1 < filters.length; i1++)
          for (var e3 in filters[i1].toQueryMap().entries)
            'Filters.Filter.${i1 + 1}.${e3.key}': e3.value,
    if (majorEngineVersion != null) 'MajorEngineVersion': majorEngineVersion,
    if (marker != null) 'Marker': marker,
    if (maxRecords != null) 'MaxRecords': maxRecords.toString(),
    if (optionGroupName != null) 'OptionGroupName': optionGroupName,
  };
  final $result = await _protocol.send(
    $request,
    action: 'DescribeOptionGroups',
    version: '2014-10-31',
    method: 'POST',
    requestUri: '/',
    exceptionFnMap: _exceptionFns,
    resultWrapper: 'DescribeOptionGroupsResult',
  );
  return OptionGroups.fromXml($result);
}