createDBSubnetGroup method

Future<CreateDBSubnetGroupResult> createDBSubnetGroup({
  1. required String dBSubnetGroupDescription,
  2. required String dBSubnetGroupName,
  3. required List<String> subnetIds,
  4. List<Tag>? tags,
})

Creates a new DB subnet group. DB subnet groups must contain at least one subnet in at least two AZs in the Amazon Region.

May throw DBSubnetGroupAlreadyExistsFault. May throw DBSubnetGroupDoesNotCoverEnoughAZs. May throw DBSubnetGroupQuotaExceededFault. May throw DBSubnetQuotaExceededFault. May throw InvalidSubnet.

Parameter dBSubnetGroupDescription : The description for the DB subnet group.

Parameter dBSubnetGroupName : The name for the DB subnet group. This value is stored as a lowercase string.

Constraints: Must contain no more than 255 letters, numbers, periods, underscores, spaces, or hyphens. Must not be default.

Example: mySubnetgroup

Parameter subnetIds : The EC2 Subnet IDs for the DB subnet group.

Parameter tags : The tags to be assigned to the new DB subnet group.

Implementation

Future<CreateDBSubnetGroupResult> createDBSubnetGroup({
  required String dBSubnetGroupDescription,
  required String dBSubnetGroupName,
  required List<String> subnetIds,
  List<Tag>? tags,
}) async {
  final $request = <String, String>{
    'DBSubnetGroupDescription': dBSubnetGroupDescription,
    'DBSubnetGroupName': dBSubnetGroupName,
    if (subnetIds.isEmpty)
      'SubnetIds': ''
    else
      for (var i1 = 0; i1 < subnetIds.length; i1++)
        'SubnetIds.SubnetIdentifier.${i1 + 1}': subnetIds[i1],
    if (tags != null)
      if (tags.isEmpty)
        'Tags': ''
      else
        for (var i1 = 0; i1 < tags.length; i1++)
          for (var e3 in tags[i1].toQueryMap().entries)
            'Tags.Tag.${i1 + 1}.${e3.key}': e3.value,
  };
  final $result = await _protocol.send(
    $request,
    action: 'CreateDBSubnetGroup',
    version: '2014-10-31',
    method: 'POST',
    requestUri: '/',
    exceptionFnMap: _exceptionFns,
    resultWrapper: 'CreateDBSubnetGroupResult',
  );
  return CreateDBSubnetGroupResult.fromXml($result);
}