move method
Move a project to another place in your resource hierarchy, under a new resource parent.
Returns an operation which can be used to track the process of the project
move workflow. Upon success, the Operation.response
field will be
populated with the moved project. The caller must have
resourcemanager.projects.move
permission on the project, on the
project's current and proposed new parent. If project has no current
parent, or it currently does not have an associated organization resource,
you will also need the resourcemanager.projects.setIamPolicy
permission
in the project.
request
- The metadata request object.
Request parameters:
name
- Required. The name of the project to move.
Value must have pattern ^projects/\[^/\]+$
.
$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> move(
MoveProjectRequest request,
core.String name, {
core.String? $fields,
}) async {
final body_ = convert.json.encode(request);
final queryParams_ = <core.String, core.List<core.String>>{
if ($fields != null) 'fields': [$fields],
};
final url_ = 'v3/' + core.Uri.encodeFull('$name') + ':move';
final response_ = await _requester.request(
url_,
'POST',
body: body_,
queryParams: queryParams_,
);
return Operation.fromJson(response_ as core.Map<core.String, core.dynamic>);
}