create method

Future<Operation> create(
  1. MigrationJob request,
  2. String parent, {
  3. String? migrationJobId,
  4. String? requestId,
  5. String? $fields,
})

Creates a new migration job in a given project and location.

request - The metadata request object.

Request parameters:

parent - Required. The parent which owns this collection of migration jobs. Value must have pattern ^projects/\[^/\]+/locations/\[^/\]+$.

migrationJobId - Required. The ID of the instance to create.

requestId - Optional. A unique ID used to identify the request. If the server receives two requests with the same ID, then the second request is ignored. It is recommended to always set this value to a UUID. The ID must contain only letters (a-z, A-Z), numbers (0-9), underscores (_), and hyphens (-). The maximum length is 40 characters.

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

Completes with a Operation.

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<Operation> create(
  MigrationJob request,
  core.String parent, {
  core.String? migrationJobId,
  core.String? requestId,
  core.String? $fields,
}) async {
  final body_ = convert_1.json.encode(request);
  final queryParams_ = <core.String, core.List<core.String>>{
    if (migrationJobId != null) 'migrationJobId': [migrationJobId],
    if (requestId != null) 'requestId': [requestId],
    if ($fields != null) 'fields': [$fields],
  };

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

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