@google-cloud/resource-manager
Version:
Cloud Resource Manager Client Library for Node.js
838 lines (767 loc) • 2.62 MB
JavaScript
// Copyright 2026 Google LLC
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
// You may obtain a copy of the License at
//
// http://www.apache.org/licenses/LICENSE-2.0
//
// Unless required by applicable law or agreed to in writing, software
// distributed under the License is distributed on an "AS IS" BASIS,
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
// See the License for the specific language governing permissions and
// limitations under the License.
/*eslint-disable block-scoped-var, id-length, no-control-regex, no-magic-numbers, no-prototype-builtins, no-redeclare, no-shadow, no-var, sort-vars*/
(function(global, factory) { /* global define, require, module */
/* AMD */ if (typeof define === 'function' && define.amd)
define(["protobufjs/minimal"], factory);
/* CommonJS */ else if (typeof require === 'function' && typeof module === 'object' && module && module.exports)
module.exports = factory(require("google-gax/build/src/protobuf").protobufMinimal);
})(this, function($protobuf) {
"use strict";
// Common aliases
var $Reader = $protobuf.Reader, $Writer = $protobuf.Writer, $util = $protobuf.util;
// Exported root namespace
var $root = $protobuf.roots._google_cloud_resource_manager_protos || ($protobuf.roots._google_cloud_resource_manager_protos = {});
$root.google = (function() {
/**
* Namespace google.
* @exports google
* @namespace
*/
var google = {};
google.cloud = (function() {
/**
* Namespace cloud.
* @memberof google
* @namespace
*/
var cloud = {};
cloud.resourcemanager = (function() {
/**
* Namespace resourcemanager.
* @memberof google.cloud
* @namespace
*/
var resourcemanager = {};
resourcemanager.v3 = (function() {
/**
* Namespace v3.
* @memberof google.cloud.resourcemanager
* @namespace
*/
var v3 = {};
v3.Folders = (function() {
/**
* Constructs a new Folders service.
* @memberof google.cloud.resourcemanager.v3
* @classdesc Represents a Folders
* @extends $protobuf.rpc.Service
* @constructor
* @param {$protobuf.RPCImpl} rpcImpl RPC implementation
* @param {boolean} [requestDelimited=false] Whether requests are length-delimited
* @param {boolean} [responseDelimited=false] Whether responses are length-delimited
*/
function Folders(rpcImpl, requestDelimited, responseDelimited) {
$protobuf.rpc.Service.call(this, rpcImpl, requestDelimited, responseDelimited);
}
(Folders.prototype = Object.create($protobuf.rpc.Service.prototype)).constructor = Folders;
/**
* Creates new Folders service using the specified rpc implementation.
* @function create
* @memberof google.cloud.resourcemanager.v3.Folders
* @static
* @param {$protobuf.RPCImpl} rpcImpl RPC implementation
* @param {boolean} [requestDelimited=false] Whether requests are length-delimited
* @param {boolean} [responseDelimited=false] Whether responses are length-delimited
* @returns {Folders} RPC service. Useful where requests and/or responses are streamed.
*/
Folders.create = function create(rpcImpl, requestDelimited, responseDelimited) {
return new this(rpcImpl, requestDelimited, responseDelimited);
};
/**
* Callback as used by {@link google.cloud.resourcemanager.v3.Folders|getFolder}.
* @memberof google.cloud.resourcemanager.v3.Folders
* @typedef GetFolderCallback
* @type {function}
* @param {Error|null} error Error, if any
* @param {google.cloud.resourcemanager.v3.Folder} [response] Folder
*/
/**
* Calls GetFolder.
* @function getFolder
* @memberof google.cloud.resourcemanager.v3.Folders
* @instance
* @param {google.cloud.resourcemanager.v3.IGetFolderRequest} request GetFolderRequest message or plain object
* @param {google.cloud.resourcemanager.v3.Folders.GetFolderCallback} callback Node-style callback called with the error, if any, and Folder
* @returns {undefined}
* @variation 1
*/
Object.defineProperty(Folders.prototype.getFolder = function getFolder(request, callback) {
return this.rpcCall(getFolder, $root.google.cloud.resourcemanager.v3.GetFolderRequest, $root.google.cloud.resourcemanager.v3.Folder, request, callback);
}, "name", { value: "GetFolder" });
/**
* Calls GetFolder.
* @function getFolder
* @memberof google.cloud.resourcemanager.v3.Folders
* @instance
* @param {google.cloud.resourcemanager.v3.IGetFolderRequest} request GetFolderRequest message or plain object
* @returns {Promise<google.cloud.resourcemanager.v3.Folder>} Promise
* @variation 2
*/
/**
* Callback as used by {@link google.cloud.resourcemanager.v3.Folders|listFolders}.
* @memberof google.cloud.resourcemanager.v3.Folders
* @typedef ListFoldersCallback
* @type {function}
* @param {Error|null} error Error, if any
* @param {google.cloud.resourcemanager.v3.ListFoldersResponse} [response] ListFoldersResponse
*/
/**
* Calls ListFolders.
* @function listFolders
* @memberof google.cloud.resourcemanager.v3.Folders
* @instance
* @param {google.cloud.resourcemanager.v3.IListFoldersRequest} request ListFoldersRequest message or plain object
* @param {google.cloud.resourcemanager.v3.Folders.ListFoldersCallback} callback Node-style callback called with the error, if any, and ListFoldersResponse
* @returns {undefined}
* @variation 1
*/
Object.defineProperty(Folders.prototype.listFolders = function listFolders(request, callback) {
return this.rpcCall(listFolders, $root.google.cloud.resourcemanager.v3.ListFoldersRequest, $root.google.cloud.resourcemanager.v3.ListFoldersResponse, request, callback);
}, "name", { value: "ListFolders" });
/**
* Calls ListFolders.
* @function listFolders
* @memberof google.cloud.resourcemanager.v3.Folders
* @instance
* @param {google.cloud.resourcemanager.v3.IListFoldersRequest} request ListFoldersRequest message or plain object
* @returns {Promise<google.cloud.resourcemanager.v3.ListFoldersResponse>} Promise
* @variation 2
*/
/**
* Callback as used by {@link google.cloud.resourcemanager.v3.Folders|searchFolders}.
* @memberof google.cloud.resourcemanager.v3.Folders
* @typedef SearchFoldersCallback
* @type {function}
* @param {Error|null} error Error, if any
* @param {google.cloud.resourcemanager.v3.SearchFoldersResponse} [response] SearchFoldersResponse
*/
/**
* Calls SearchFolders.
* @function searchFolders
* @memberof google.cloud.resourcemanager.v3.Folders
* @instance
* @param {google.cloud.resourcemanager.v3.ISearchFoldersRequest} request SearchFoldersRequest message or plain object
* @param {google.cloud.resourcemanager.v3.Folders.SearchFoldersCallback} callback Node-style callback called with the error, if any, and SearchFoldersResponse
* @returns {undefined}
* @variation 1
*/
Object.defineProperty(Folders.prototype.searchFolders = function searchFolders(request, callback) {
return this.rpcCall(searchFolders, $root.google.cloud.resourcemanager.v3.SearchFoldersRequest, $root.google.cloud.resourcemanager.v3.SearchFoldersResponse, request, callback);
}, "name", { value: "SearchFolders" });
/**
* Calls SearchFolders.
* @function searchFolders
* @memberof google.cloud.resourcemanager.v3.Folders
* @instance
* @param {google.cloud.resourcemanager.v3.ISearchFoldersRequest} request SearchFoldersRequest message or plain object
* @returns {Promise<google.cloud.resourcemanager.v3.SearchFoldersResponse>} Promise
* @variation 2
*/
/**
* Callback as used by {@link google.cloud.resourcemanager.v3.Folders|createFolder}.
* @memberof google.cloud.resourcemanager.v3.Folders
* @typedef CreateFolderCallback
* @type {function}
* @param {Error|null} error Error, if any
* @param {google.longrunning.Operation} [response] Operation
*/
/**
* Calls CreateFolder.
* @function createFolder
* @memberof google.cloud.resourcemanager.v3.Folders
* @instance
* @param {google.cloud.resourcemanager.v3.ICreateFolderRequest} request CreateFolderRequest message or plain object
* @param {google.cloud.resourcemanager.v3.Folders.CreateFolderCallback} callback Node-style callback called with the error, if any, and Operation
* @returns {undefined}
* @variation 1
*/
Object.defineProperty(Folders.prototype.createFolder = function createFolder(request, callback) {
return this.rpcCall(createFolder, $root.google.cloud.resourcemanager.v3.CreateFolderRequest, $root.google.longrunning.Operation, request, callback);
}, "name", { value: "CreateFolder" });
/**
* Calls CreateFolder.
* @function createFolder
* @memberof google.cloud.resourcemanager.v3.Folders
* @instance
* @param {google.cloud.resourcemanager.v3.ICreateFolderRequest} request CreateFolderRequest message or plain object
* @returns {Promise<google.longrunning.Operation>} Promise
* @variation 2
*/
/**
* Callback as used by {@link google.cloud.resourcemanager.v3.Folders|updateFolder}.
* @memberof google.cloud.resourcemanager.v3.Folders
* @typedef UpdateFolderCallback
* @type {function}
* @param {Error|null} error Error, if any
* @param {google.longrunning.Operation} [response] Operation
*/
/**
* Calls UpdateFolder.
* @function updateFolder
* @memberof google.cloud.resourcemanager.v3.Folders
* @instance
* @param {google.cloud.resourcemanager.v3.IUpdateFolderRequest} request UpdateFolderRequest message or plain object
* @param {google.cloud.resourcemanager.v3.Folders.UpdateFolderCallback} callback Node-style callback called with the error, if any, and Operation
* @returns {undefined}
* @variation 1
*/
Object.defineProperty(Folders.prototype.updateFolder = function updateFolder(request, callback) {
return this.rpcCall(updateFolder, $root.google.cloud.resourcemanager.v3.UpdateFolderRequest, $root.google.longrunning.Operation, request, callback);
}, "name", { value: "UpdateFolder" });
/**
* Calls UpdateFolder.
* @function updateFolder
* @memberof google.cloud.resourcemanager.v3.Folders
* @instance
* @param {google.cloud.resourcemanager.v3.IUpdateFolderRequest} request UpdateFolderRequest message or plain object
* @returns {Promise<google.longrunning.Operation>} Promise
* @variation 2
*/
/**
* Callback as used by {@link google.cloud.resourcemanager.v3.Folders|moveFolder}.
* @memberof google.cloud.resourcemanager.v3.Folders
* @typedef MoveFolderCallback
* @type {function}
* @param {Error|null} error Error, if any
* @param {google.longrunning.Operation} [response] Operation
*/
/**
* Calls MoveFolder.
* @function moveFolder
* @memberof google.cloud.resourcemanager.v3.Folders
* @instance
* @param {google.cloud.resourcemanager.v3.IMoveFolderRequest} request MoveFolderRequest message or plain object
* @param {google.cloud.resourcemanager.v3.Folders.MoveFolderCallback} callback Node-style callback called with the error, if any, and Operation
* @returns {undefined}
* @variation 1
*/
Object.defineProperty(Folders.prototype.moveFolder = function moveFolder(request, callback) {
return this.rpcCall(moveFolder, $root.google.cloud.resourcemanager.v3.MoveFolderRequest, $root.google.longrunning.Operation, request, callback);
}, "name", { value: "MoveFolder" });
/**
* Calls MoveFolder.
* @function moveFolder
* @memberof google.cloud.resourcemanager.v3.Folders
* @instance
* @param {google.cloud.resourcemanager.v3.IMoveFolderRequest} request MoveFolderRequest message or plain object
* @returns {Promise<google.longrunning.Operation>} Promise
* @variation 2
*/
/**
* Callback as used by {@link google.cloud.resourcemanager.v3.Folders|deleteFolder}.
* @memberof google.cloud.resourcemanager.v3.Folders
* @typedef DeleteFolderCallback
* @type {function}
* @param {Error|null} error Error, if any
* @param {google.longrunning.Operation} [response] Operation
*/
/**
* Calls DeleteFolder.
* @function deleteFolder
* @memberof google.cloud.resourcemanager.v3.Folders
* @instance
* @param {google.cloud.resourcemanager.v3.IDeleteFolderRequest} request DeleteFolderRequest message or plain object
* @param {google.cloud.resourcemanager.v3.Folders.DeleteFolderCallback} callback Node-style callback called with the error, if any, and Operation
* @returns {undefined}
* @variation 1
*/
Object.defineProperty(Folders.prototype.deleteFolder = function deleteFolder(request, callback) {
return this.rpcCall(deleteFolder, $root.google.cloud.resourcemanager.v3.DeleteFolderRequest, $root.google.longrunning.Operation, request, callback);
}, "name", { value: "DeleteFolder" });
/**
* Calls DeleteFolder.
* @function deleteFolder
* @memberof google.cloud.resourcemanager.v3.Folders
* @instance
* @param {google.cloud.resourcemanager.v3.IDeleteFolderRequest} request DeleteFolderRequest message or plain object
* @returns {Promise<google.longrunning.Operation>} Promise
* @variation 2
*/
/**
* Callback as used by {@link google.cloud.resourcemanager.v3.Folders|undeleteFolder}.
* @memberof google.cloud.resourcemanager.v3.Folders
* @typedef UndeleteFolderCallback
* @type {function}
* @param {Error|null} error Error, if any
* @param {google.longrunning.Operation} [response] Operation
*/
/**
* Calls UndeleteFolder.
* @function undeleteFolder
* @memberof google.cloud.resourcemanager.v3.Folders
* @instance
* @param {google.cloud.resourcemanager.v3.IUndeleteFolderRequest} request UndeleteFolderRequest message or plain object
* @param {google.cloud.resourcemanager.v3.Folders.UndeleteFolderCallback} callback Node-style callback called with the error, if any, and Operation
* @returns {undefined}
* @variation 1
*/
Object.defineProperty(Folders.prototype.undeleteFolder = function undeleteFolder(request, callback) {
return this.rpcCall(undeleteFolder, $root.google.cloud.resourcemanager.v3.UndeleteFolderRequest, $root.google.longrunning.Operation, request, callback);
}, "name", { value: "UndeleteFolder" });
/**
* Calls UndeleteFolder.
* @function undeleteFolder
* @memberof google.cloud.resourcemanager.v3.Folders
* @instance
* @param {google.cloud.resourcemanager.v3.IUndeleteFolderRequest} request UndeleteFolderRequest message or plain object
* @returns {Promise<google.longrunning.Operation>} Promise
* @variation 2
*/
/**
* Callback as used by {@link google.cloud.resourcemanager.v3.Folders|getIamPolicy}.
* @memberof google.cloud.resourcemanager.v3.Folders
* @typedef GetIamPolicyCallback
* @type {function}
* @param {Error|null} error Error, if any
* @param {google.iam.v1.Policy} [response] Policy
*/
/**
* Calls GetIamPolicy.
* @function getIamPolicy
* @memberof google.cloud.resourcemanager.v3.Folders
* @instance
* @param {google.iam.v1.IGetIamPolicyRequest} request GetIamPolicyRequest message or plain object
* @param {google.cloud.resourcemanager.v3.Folders.GetIamPolicyCallback} callback Node-style callback called with the error, if any, and Policy
* @returns {undefined}
* @variation 1
*/
Object.defineProperty(Folders.prototype.getIamPolicy = function getIamPolicy(request, callback) {
return this.rpcCall(getIamPolicy, $root.google.iam.v1.GetIamPolicyRequest, $root.google.iam.v1.Policy, request, callback);
}, "name", { value: "GetIamPolicy" });
/**
* Calls GetIamPolicy.
* @function getIamPolicy
* @memberof google.cloud.resourcemanager.v3.Folders
* @instance
* @param {google.iam.v1.IGetIamPolicyRequest} request GetIamPolicyRequest message or plain object
* @returns {Promise<google.iam.v1.Policy>} Promise
* @variation 2
*/
/**
* Callback as used by {@link google.cloud.resourcemanager.v3.Folders|setIamPolicy}.
* @memberof google.cloud.resourcemanager.v3.Folders
* @typedef SetIamPolicyCallback
* @type {function}
* @param {Error|null} error Error, if any
* @param {google.iam.v1.Policy} [response] Policy
*/
/**
* Calls SetIamPolicy.
* @function setIamPolicy
* @memberof google.cloud.resourcemanager.v3.Folders
* @instance
* @param {google.iam.v1.ISetIamPolicyRequest} request SetIamPolicyRequest message or plain object
* @param {google.cloud.resourcemanager.v3.Folders.SetIamPolicyCallback} callback Node-style callback called with the error, if any, and Policy
* @returns {undefined}
* @variation 1
*/
Object.defineProperty(Folders.prototype.setIamPolicy = function setIamPolicy(request, callback) {
return this.rpcCall(setIamPolicy, $root.google.iam.v1.SetIamPolicyRequest, $root.google.iam.v1.Policy, request, callback);
}, "name", { value: "SetIamPolicy" });
/**
* Calls SetIamPolicy.
* @function setIamPolicy
* @memberof google.cloud.resourcemanager.v3.Folders
* @instance
* @param {google.iam.v1.ISetIamPolicyRequest} request SetIamPolicyRequest message or plain object
* @returns {Promise<google.iam.v1.Policy>} Promise
* @variation 2
*/
/**
* Callback as used by {@link google.cloud.resourcemanager.v3.Folders|testIamPermissions}.
* @memberof google.cloud.resourcemanager.v3.Folders
* @typedef TestIamPermissionsCallback
* @type {function}
* @param {Error|null} error Error, if any
* @param {google.iam.v1.TestIamPermissionsResponse} [response] TestIamPermissionsResponse
*/
/**
* Calls TestIamPermissions.
* @function testIamPermissions
* @memberof google.cloud.resourcemanager.v3.Folders
* @instance
* @param {google.iam.v1.ITestIamPermissionsRequest} request TestIamPermissionsRequest message or plain object
* @param {google.cloud.resourcemanager.v3.Folders.TestIamPermissionsCallback} callback Node-style callback called with the error, if any, and TestIamPermissionsResponse
* @returns {undefined}
* @variation 1
*/
Object.defineProperty(Folders.prototype.testIamPermissions = function testIamPermissions(request, callback) {
return this.rpcCall(testIamPermissions, $root.google.iam.v1.TestIamPermissionsRequest, $root.google.iam.v1.TestIamPermissionsResponse, request, callback);
}, "name", { value: "TestIamPermissions" });
/**
* Calls TestIamPermissions.
* @function testIamPermissions
* @memberof google.cloud.resourcemanager.v3.Folders
* @instance
* @param {google.iam.v1.ITestIamPermissionsRequest} request TestIamPermissionsRequest message or plain object
* @returns {Promise<google.iam.v1.TestIamPermissionsResponse>} Promise
* @variation 2
*/
return Folders;
})();
v3.Folder = (function() {
/**
* Properties of a Folder.
* @memberof google.cloud.resourcemanager.v3
* @interface IFolder
* @property {string|null} [name] Folder name
* @property {string|null} [parent] Folder parent
* @property {string|null} [displayName] Folder displayName
* @property {google.cloud.resourcemanager.v3.Folder.State|null} [state] Folder state
* @property {google.protobuf.ITimestamp|null} [createTime] Folder createTime
* @property {google.protobuf.ITimestamp|null} [updateTime] Folder updateTime
* @property {google.protobuf.ITimestamp|null} [deleteTime] Folder deleteTime
* @property {string|null} [etag] Folder etag
*/
/**
* Constructs a new Folder.
* @memberof google.cloud.resourcemanager.v3
* @classdesc Represents a Folder.
* @implements IFolder
* @constructor
* @param {google.cloud.resourcemanager.v3.IFolder=} [properties] Properties to set
*/
function Folder(properties) {
if (properties)
for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i)
if (properties[keys[i]] != null)
this[keys[i]] = properties[keys[i]];
}
/**
* Folder name.
* @member {string} name
* @memberof google.cloud.resourcemanager.v3.Folder
* @instance
*/
Folder.prototype.name = "";
/**
* Folder parent.
* @member {string} parent
* @memberof google.cloud.resourcemanager.v3.Folder
* @instance
*/
Folder.prototype.parent = "";
/**
* Folder displayName.
* @member {string} displayName
* @memberof google.cloud.resourcemanager.v3.Folder
* @instance
*/
Folder.prototype.displayName = "";
/**
* Folder state.
* @member {google.cloud.resourcemanager.v3.Folder.State} state
* @memberof google.cloud.resourcemanager.v3.Folder
* @instance
*/
Folder.prototype.state = 0;
/**
* Folder createTime.
* @member {google.protobuf.ITimestamp|null|undefined} createTime
* @memberof google.cloud.resourcemanager.v3.Folder
* @instance
*/
Folder.prototype.createTime = null;
/**
* Folder updateTime.
* @member {google.protobuf.ITimestamp|null|undefined} updateTime
* @memberof google.cloud.resourcemanager.v3.Folder
* @instance
*/
Folder.prototype.updateTime = null;
/**
* Folder deleteTime.
* @member {google.protobuf.ITimestamp|null|undefined} deleteTime
* @memberof google.cloud.resourcemanager.v3.Folder
* @instance
*/
Folder.prototype.deleteTime = null;
/**
* Folder etag.
* @member {string} etag
* @memberof google.cloud.resourcemanager.v3.Folder
* @instance
*/
Folder.prototype.etag = "";
/**
* Creates a new Folder instance using the specified properties.
* @function create
* @memberof google.cloud.resourcemanager.v3.Folder
* @static
* @param {google.cloud.resourcemanager.v3.IFolder=} [properties] Properties to set
* @returns {google.cloud.resourcemanager.v3.Folder} Folder instance
*/
Folder.create = function create(properties) {
return new Folder(properties);
};
/**
* Encodes the specified Folder message. Does not implicitly {@link google.cloud.resourcemanager.v3.Folder.verify|verify} messages.
* @function encode
* @memberof google.cloud.resourcemanager.v3.Folder
* @static
* @param {google.cloud.resourcemanager.v3.IFolder} message Folder message or plain object to encode
* @param {$protobuf.Writer} [writer] Writer to encode to
* @returns {$protobuf.Writer} Writer
*/
Folder.encode = function encode(message, writer) {
if (!writer)
writer = $Writer.create();
if (message.name != null && Object.hasOwnProperty.call(message, "name"))
writer.uint32(/* id 1, wireType 2 =*/10).string(message.name);
if (message.parent != null && Object.hasOwnProperty.call(message, "parent"))
writer.uint32(/* id 2, wireType 2 =*/18).string(message.parent);
if (message.displayName != null && Object.hasOwnProperty.call(message, "displayName"))
writer.uint32(/* id 3, wireType 2 =*/26).string(message.displayName);
if (message.state != null && Object.hasOwnProperty.call(message, "state"))
writer.uint32(/* id 4, wireType 0 =*/32).int32(message.state);
if (message.createTime != null && Object.hasOwnProperty.call(message, "createTime"))
$root.google.protobuf.Timestamp.encode(message.createTime, writer.uint32(/* id 5, wireType 2 =*/42).fork()).ldelim();
if (message.updateTime != null && Object.hasOwnProperty.call(message, "updateTime"))
$root.google.protobuf.Timestamp.encode(message.updateTime, writer.uint32(/* id 6, wireType 2 =*/50).fork()).ldelim();
if (message.deleteTime != null && Object.hasOwnProperty.call(message, "deleteTime"))
$root.google.protobuf.Timestamp.encode(message.deleteTime, writer.uint32(/* id 7, wireType 2 =*/58).fork()).ldelim();
if (message.etag != null && Object.hasOwnProperty.call(message, "etag"))
writer.uint32(/* id 8, wireType 2 =*/66).string(message.etag);
return writer;
};
/**
* Encodes the specified Folder message, length delimited. Does not implicitly {@link google.cloud.resourcemanager.v3.Folder.verify|verify} messages.
* @function encodeDelimited
* @memberof google.cloud.resourcemanager.v3.Folder
* @static
* @param {google.cloud.resourcemanager.v3.IFolder} message Folder message or plain object to encode
* @param {$protobuf.Writer} [writer] Writer to encode to
* @returns {$protobuf.Writer} Writer
*/
Folder.encodeDelimited = function encodeDelimited(message, writer) {
return this.encode(message, writer).ldelim();
};
/**
* Decodes a Folder message from the specified reader or buffer.
* @function decode
* @memberof google.cloud.resourcemanager.v3.Folder
* @static
* @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
* @param {number} [length] Message length if known beforehand
* @returns {google.cloud.resourcemanager.v3.Folder} Folder
* @throws {Error} If the payload is not a reader or valid buffer
* @throws {$protobuf.util.ProtocolError} If required fields are missing
*/
Folder.decode = function decode(reader, length, error) {
if (!(reader instanceof $Reader))
reader = $Reader.create(reader);
var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.resourcemanager.v3.Folder();
while (reader.pos < end) {
var tag = reader.uint32();
if (tag === error)
break;
switch (tag >>> 3) {
case 1: {
message.name = reader.string();
break;
}
case 2: {
message.parent = reader.string();
break;
}
case 3: {
message.displayName = reader.string();
break;
}
case 4: {
message.state = reader.int32();
break;
}
case 5: {
message.createTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32());
break;
}
case 6: {
message.updateTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32());
break;
}
case 7: {
message.deleteTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32());
break;
}
case 8: {
message.etag = reader.string();
break;
}
default:
reader.skipType(tag & 7);
break;
}
}
return message;
};
/**
* Decodes a Folder message from the specified reader or buffer, length delimited.
* @function decodeDelimited
* @memberof google.cloud.resourcemanager.v3.Folder
* @static
* @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
* @returns {google.cloud.resourcemanager.v3.Folder} Folder
* @throws {Error} If the payload is not a reader or valid buffer
* @throws {$protobuf.util.ProtocolError} If required fields are missing
*/
Folder.decodeDelimited = function decodeDelimited(reader) {
if (!(reader instanceof $Reader))
reader = new $Reader(reader);
return this.decode(reader, reader.uint32());
};
/**
* Verifies a Folder message.
* @function verify
* @memberof google.cloud.resourcemanager.v3.Folder
* @static
* @param {Object.<string,*>} message Plain object to verify
* @returns {string|null} `null` if valid, otherwise the reason why it is not
*/
Folder.verify = function verify(message) {
if (typeof message !== "object" || message === null)
return "object expected";
if (message.name != null && message.hasOwnProperty("name"))
if (!$util.isString(message.name))
return "name: string expected";
if (message.parent != null && message.hasOwnProperty("parent"))
if (!$util.isString(message.parent))
return "parent: string expected";
if (message.displayName != null && message.hasOwnProperty("displayName"))
if (!$util.isString(message.displayName))
return "displayName: string expected";
if (message.state != null && message.hasOwnProperty("state"))
switch (message.state) {
default:
return "state: enum value expected";
case 0:
case 1:
case 2:
break;
}
if (message.createTime != null && message.hasOwnProperty("createTime")) {
var error = $root.google.protobuf.Timestamp.verify(message.createTime);
if (error)
return "createTime." + error;
}
if (message.updateTime != null && message.hasOwnProperty("updateTime")) {
var error = $root.google.protobuf.Timestamp.verify(message.updateTime);
if (error)
return "updateTime." + error;
}
if (message.deleteTime != null && message.hasOwnProperty("deleteTime")) {
var error = $root.google.protobuf.Timestamp.verify(message.deleteTime);
if (error)
return "deleteTime." + error;
}
if (message.etag != null && message.hasOwnProperty("etag"))
if (!$util.isString(message.etag))
return "etag: string expected";
return null;
};
/**
* Creates a Folder message from a plain object. Also converts values to their respective internal types.
* @function fromObject
* @memberof google.cloud.resourcemanager.v3.Folder
* @static
* @param {Object.<string,*>} object Plain object
* @returns {google.cloud.resourcemanager.v3.Folder} Folder
*/
Folder.fromObject = function fromObject(object) {
if (object instanceof $root.google.cloud.resourcemanager.v3.Folder)
return object;
var message = new $root.google.cloud.resourcemanager.v3.Folder();
if (object.name != null)
message.name = String(object.name);
if (object.parent != null)
message.parent = String(object.parent);
if (object.displayName != null)
message.displayName = String(object.displayName);
switch (object.state) {
default:
if (typeof object.state === "number") {
message.state = object.state;
break;
}
break;
case "STATE_UNSPECIFIED":
case 0:
message.state = 0;
break;
case "ACTIVE":
case 1:
message.state = 1;
break;
case "DELETE_REQUESTED":
case 2:
message.state = 2;
break;
}
if (object.createTime != null) {
if (typeof object.createTime !== "object")
throw TypeError(".google.cloud.resourcemanager.v3.Folder.createTime: object expected");
message.createTime = $root.google.protobuf.Timestamp.fromObject(object.createTime);
}
if (object.updateTime != null) {
if (typeof object.updateTime !== "object")
throw TypeError(".google.cloud.resourcemanager.v3.Folder.updateTime: object expected");
message.updateTime = $root.google.protobuf.Timestamp.fromObject(object.updateTime);
}
if (object.deleteTime != null) {
if (typeof object.deleteTime !== "object")
throw TypeError(".google.cloud.resourcemanager.v3.Folder.deleteTime: object expected");
message.deleteTime = $root.google.protobuf.Timestamp.fromObject(object.deleteTime);
}
if (object.etag != null)
message.etag = String(object.etag);
return message;
};
/**
* Creates a plain object from a Folder message. Also converts values to other types if specified.
* @function toObject
* @memberof google.cloud.resourcemanager.v3.Folder
* @static
* @param {google.cloud.resourcemanager.v3.Folder} message Folder
* @param {$protobuf.IConversionOptions} [options] Conversion options
* @returns {Object.<string,*>} Plain object
*/
Folder.toObject = function toObject(message, options) {
if (!options)
options = {};
var object = {};
if (options.defaults) {
object.name = "";
object.parent = "";
object.displayName = "";
object.state = options.enums === String ? "STATE_UNSPECIFIED" : 0;
object.createTime = null;
object.updateTime = null;
object.deleteTime = null;
object.etag = "";
}
if (message.name != null && message.hasOwnProperty("name"))
object.name = message.name;
if (message.parent != null && message.hasOwnProperty("parent"))
object.parent = message.parent;
if (message.displayName != null && message.hasOwnProperty("displayName"))
object.displayName = message.displayName;
if (message.state != null && message.hasOwnProperty("state"))
object.state = options.enums === String ? $root.google.cloud.resourcemanager.v3.Folder.State[message.state] === undefined ? message.state : $root.google.cloud.resourcemanager.v3.Folder.State[message.state] : message.state;
if (message.createTime != null && message.hasOwnProperty("createTime"))
object.createTime = $root.google.protobuf.Timestamp.toObject(message.createTime, options);
if (message.updateTime != null && message.hasOwnProperty("updateTime"))
object.updateTime = $root.google.protobuf.Timestamp.toObject(message.updateTime, options);
if (message.deleteTime != null && message.hasOwnProperty("deleteTime"))
object.deleteTime = $root.go