batchDeleteAttributes method

Future<void> batchDeleteAttributes({
  1. required String domainName,
  2. required List<DeletableItem> items,
})

Performs multiple DeleteAttributes operations in a single call, which reduces round trips and latencies. This enables Amazon SimpleDB to optimize requests, which generally yields better throughput.

BatchDeleteAttributes is an idempotent operation; running it multiple times on the same item or attribute doesn't result in an error.

The BatchDeleteAttributes operation succeeds or fails in its entirety. There are no partial deletes. You can execute multiple BatchDeleteAttributes operations and other operations in parallel. However, large numbers of concurrent BatchDeleteAttributes calls can result in Service Unavailable (503) responses.

This operation is vulnerable to exceeding the maximum URL size when making a REST request using the HTTP GET method.

This operation does not support conditions using Expected.X.Name, Expected.X.Value, or Expected.X.Exists. The following limitations are enforced for this operation:

  • 1 MB request size
  • 25 item limit per BatchDeleteAttributes operation

Parameter domainName : The name of the domain in which the attributes are being deleted.

Parameter items : A list of items on which to perform the operation.

Implementation

Future<void> batchDeleteAttributes({
  required String domainName,
  required List<DeletableItem> items,
}) async {
  ArgumentError.checkNotNull(domainName, 'domainName');
  ArgumentError.checkNotNull(items, 'items');
  final $request = <String, dynamic>{};
  $request['DomainName'] = domainName;
  $request['Items'] = items;
  await _protocol.send(
    $request,
    action: 'BatchDeleteAttributes',
    version: '2009-04-15',
    method: 'POST',
    requestUri: '/',
    exceptionFnMap: _exceptionFns,
    shape: shapes['BatchDeleteAttributesRequest'],
    shapes: shapes,
  );
}