list method

Future<ListInstancePartitionOperationsResponse> list(
  1. String parent, {
  2. String? filter,
  3. String? instancePartitionDeadline,
  4. int? pageSize,
  5. String? pageToken,
  6. String? $fields,
})

Lists instance partition long-running operations in the given instance.

An instance partition operation has a name of the form projects//instances//instancePartitions//operations/. The long-running operation metadata field type metadata.type_url describes the type of the metadata. Operations returned include those that have completed/failed/canceled within the last 7 days, and pending operations. Operations returned are ordered by operation.metadata.value.start_time in descending order starting from the most recently started operation. Authorization requires spanner.instancePartitionOperations.list permission on the resource parent.

Request parameters:

parent - Required. The parent instance of the instance partition operations. Values are of the form projects//instances/. Value must have pattern ^projects/\[^/\]+/instances/\[^/\]+$.

filter - Optional. An expression that filters the list of returned operations. A filter expression consists of a field name, a comparison operator, and a value for filtering. The value must be a string, a number, or a boolean. The comparison operator must be one of: <, >, <=, >=, !=, =, or :. Colon : is the contains operator. Filter rules are not case sensitive. The following fields in the Operation are eligible for filtering: * name - The name of the long-running operation * done

  • False if the operation is in progress, else true. * metadata.@type - the type of metadata. For example, the type string for CreateInstancePartitionMetadata is type.googleapis.com/google.spanner.admin.instance.v1.CreateInstancePartitionMetadata.
  • metadata. - any field in metadata.value. metadata.@type must be specified first, if filtering on metadata fields. * error - Error associated with the long-running operation. * response.@type - the type of response. * response. - any field in response.value. You can combine multiple expressions by enclosing each expression in parentheses. By default, expressions are combined with AND logic. However, you can specify AND, OR, and NOT logic explicitly. Here are a few examples: * done:true
  • The operation is complete. * (metadata.@type=
    type.googleapis.com/google.spanner.admin.instance.v1.CreateInstancePartitionMetadata) AND \ (metadata.instance_partition.name:custom-instance-partition) AND \ (metadata.start_time < \"2021-03-28T14:50:00Z\") AND \ (error:*) - Return operations where: * The operation's metadata type is CreateInstancePartitionMetadata. * The instance partition name contains "custom-instance-partition". * The operation started before 2021-03-28T14:50:00Z. * The operation resulted in an error.

instancePartitionDeadline - Optional. Deadline used while retrieving metadata for instance partition operations. Instance partitions whose operation metadata cannot be retrieved within this deadline will be added to unreachable in ListInstancePartitionOperationsResponse.

pageSize - Optional. Number of operations to be returned in the response. If 0 or less, defaults to the server's maximum allowed page size.

pageToken - Optional. If non-empty, page_token should contain a next_page_token from a previous ListInstancePartitionOperationsResponse to the same parent and with the same filter.

$fields - Selector specifying which fields to include in a partial response.

Completes with a ListInstancePartitionOperationsResponse.

Completes with a commons.ApiRequestError if the API endpoint returned an error.

If the used http.Client completes with an error when making a REST call, this method will complete with the same error.

Implementation

async.Future<ListInstancePartitionOperationsResponse> list(
  core.String parent, {
  core.String? filter,
  core.String? instancePartitionDeadline,
  core.int? pageSize,
  core.String? pageToken,
  core.String? $fields,
}) async {
  final queryParams_ = <core.String, core.List<core.String>>{
    if (filter != null) 'filter': [filter],
    if (instancePartitionDeadline != null)
      'instancePartitionDeadline': [instancePartitionDeadline],
    if (pageSize != null) 'pageSize': ['${pageSize}'],
    if (pageToken != null) 'pageToken': [pageToken],
    if ($fields != null) 'fields': [$fields],
  };

  final url_ =
      'v1/' + core.Uri.encodeFull('$parent') + '/instancePartitionOperations';

  final response_ = await _requester.request(
    url_,
    'GET',
    queryParams: queryParams_,
  );
  return ListInstancePartitionOperationsResponse.fromJson(
      response_ as core.Map<core.String, core.dynamic>);
}