copyDBClusterParameterGroup method

Future<CopyDBClusterParameterGroupResult> copyDBClusterParameterGroup({
  1. required String sourceDBClusterParameterGroupIdentifier,
  2. required String targetDBClusterParameterGroupDescription,
  3. required String targetDBClusterParameterGroupIdentifier,
  4. List<Tag>? tags,
})

Copies the specified DB cluster parameter group.

May throw DBParameterGroupNotFoundFault. May throw DBParameterGroupQuotaExceededFault. May throw DBParameterGroupAlreadyExistsFault.

Parameter sourceDBClusterParameterGroupIdentifier : The identifier or Amazon Resource Name (ARN) for the source DB cluster parameter group. For information about creating an ARN, see Constructing an Amazon Resource Name (ARN).

Constraints:

  • Must specify a valid DB cluster parameter group.
  • If the source DB cluster parameter group is in the same AWS Region as the copy, specify a valid DB parameter group identifier, for example my-db-cluster-param-group, or a valid ARN.
  • If the source DB parameter group is in a different AWS Region than the copy, specify a valid DB cluster parameter group ARN, for example arn:aws:rds:us-east-1:123456789012:cluster-pg:custom-cluster-group1.

Parameter targetDBClusterParameterGroupDescription : A description for the copied DB cluster parameter group.

Parameter targetDBClusterParameterGroupIdentifier : The identifier for the copied DB cluster parameter group.

Constraints:

  • Cannot be null, empty, or blank
  • Must contain from 1 to 255 letters, numbers, or hyphens
  • First character must be a letter
  • Cannot end with a hyphen or contain two consecutive hyphens
Example: my-cluster-param-group1

Parameter tags : The tags to be assigned to the copied DB cluster parameter group.

Implementation

Future<CopyDBClusterParameterGroupResult> copyDBClusterParameterGroup({
  required String sourceDBClusterParameterGroupIdentifier,
  required String targetDBClusterParameterGroupDescription,
  required String targetDBClusterParameterGroupIdentifier,
  List<Tag>? tags,
}) async {
  ArgumentError.checkNotNull(sourceDBClusterParameterGroupIdentifier,
      'sourceDBClusterParameterGroupIdentifier');
  ArgumentError.checkNotNull(targetDBClusterParameterGroupDescription,
      'targetDBClusterParameterGroupDescription');
  ArgumentError.checkNotNull(targetDBClusterParameterGroupIdentifier,
      'targetDBClusterParameterGroupIdentifier');
  final $request = <String, dynamic>{};
  $request['SourceDBClusterParameterGroupIdentifier'] =
      sourceDBClusterParameterGroupIdentifier;
  $request['TargetDBClusterParameterGroupDescription'] =
      targetDBClusterParameterGroupDescription;
  $request['TargetDBClusterParameterGroupIdentifier'] =
      targetDBClusterParameterGroupIdentifier;
  tags?.also((arg) => $request['Tags'] = arg);
  final $result = await _protocol.send(
    $request,
    action: 'CopyDBClusterParameterGroup',
    version: '2014-10-31',
    method: 'POST',
    requestUri: '/',
    exceptionFnMap: _exceptionFns,
    shape: shapes['CopyDBClusterParameterGroupMessage'],
    shapes: shapes,
    resultWrapper: 'CopyDBClusterParameterGroupResult',
  );
  return CopyDBClusterParameterGroupResult.fromXml($result);
}