create method
Creates a Redis instance based on the specified tier and memory size.
By default, the instance is accessible from the project's default network. The creation is executed asynchronously and callers may check the returned operation to track its progress. Once the operation is completed the Redis instance will be fully functional. Completed longrunning.Operation will contain the new instance object in the response field. The returned operation is automatically deleted after a few hours, so there is no need to call DeleteOperation.
request
- The metadata request object.
Request parameters:
parent
- Required. The resource name of the instance location using the
form: projects/{project_id}/locations/{location_id}
where location_id
refers to a GCP region.
Value must have pattern ^projects/\[^/\]+/locations/\[^/\]+$
.
instanceId
- Required. The logical name of the Redis instance in the
customer project with the following restrictions: * Must contain only
lowercase letters, numbers, and hyphens. * Must start with a letter. *
Must be between 1-40 characters. * Must end with a number or a letter. *
Must be unique within the customer project / location
$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(
Instance request,
core.String parent, {
core.String? instanceId,
core.String? $fields,
}) async {
final body_ = convert.json.encode(request);
final queryParams_ = <core.String, core.List<core.String>>{
if (instanceId != null) 'instanceId': [instanceId],
if ($fields != null) 'fields': [$fields],
};
final url_ = 'v1/' + core.Uri.encodeFull('$parent') + '/instances';
final response_ = await _requester.request(
url_,
'POST',
body: body_,
queryParams: queryParams_,
);
return Operation.fromJson(response_ as core.Map<core.String, core.dynamic>);
}